summaryrefslogtreecommitdiffstats
path: root/mdk-stage1
diff options
context:
space:
mode:
Diffstat (limited to 'mdk-stage1')
-rw-r--r--mdk-stage1/Makefile8
-rw-r--r--mdk-stage1/dietlibc/include/sys/io.h2
-rw-r--r--mdk-stage1/init-data/boot-install-lilo-800-V64.msg.bz2bin0 -> 14809 bytes
-rw-r--r--mdk-stage1/pcmcia_/cardmgr.c8
-rw-r--r--mdk-stage1/pcmcia_/cirrus.h25
-rw-r--r--mdk-stage1/pcmcia_/cs.h38
-rw-r--r--mdk-stage1/pcmcia_/cs_types.h7
-rw-r--r--mdk-stage1/pcmcia_/driver_ops.h9
-rw-r--r--mdk-stage1/pcmcia_/ds.h15
-rw-r--r--mdk-stage1/pcmcia_/i82365.h21
-rw-r--r--mdk-stage1/pcmcia_/vg468.h6
-rw-r--r--mdk-stage1/pcmcia_/yacc_config.c2
-rw-r--r--mdk-stage1/pcmcia_/yacc_config.h2
-rw-r--r--mdk-stage1/rescue-gui.c10
14 files changed, 32 insertions, 121 deletions
diff --git a/mdk-stage1/Makefile b/mdk-stage1/Makefile
index 60fcf0830..9551a3dcb 100644
--- a/mdk-stage1/Makefile
+++ b/mdk-stage1/Makefile
@@ -183,6 +183,9 @@ DIRS += mar pci-resource usb-resource bzlib $(INSMOD) slang newt ppp/pppd rp-ppp
ifeq (i386, $(ARCH))
DIRS += pcmcia_
endif
+ifeq (x86_64, $(ARCH))
+DIRS += pcmcia_
+endif
ifeq (i386,$(ARCH))
@@ -190,6 +193,11 @@ PCMCIA_LIB = pcmcia_/libpcmcia.a
PCMCIA_DEFS = -DENABLE_PCMCIA
endif
+ifeq (x86_64,$(ARCH))
+PCMCIA_LIB = pcmcia_/libpcmcia.a
+PCMCIA_DEFS = -DENABLE_PCMCIA
+endif
+
USB_DEFS_GEN = -DENABLE_USB
USB_DEFS = -DENABLE_USB -DDISABLE_PCIADAPTERS
diff --git a/mdk-stage1/dietlibc/include/sys/io.h b/mdk-stage1/dietlibc/include/sys/io.h
index 5edf33a57..40a0d459b 100644
--- a/mdk-stage1/dietlibc/include/sys/io.h
+++ b/mdk-stage1/dietlibc/include/sys/io.h
@@ -8,7 +8,7 @@ extern int iopl(int level) __THROW;
#ifndef __STRICT_ANSI__
/* anyone have a cleaner solution for this mess? */
-#ifdef __i386__
+#if defined(__i386__) || defined(__x86_64__)
static inline unsigned char inb (unsigned short int port) {
unsigned char _v;
__asm__ __volatile__ ("inb %w1,%0":"=a" (_v):"Nd" (port));
diff --git a/mdk-stage1/init-data/boot-install-lilo-800-V64.msg.bz2 b/mdk-stage1/init-data/boot-install-lilo-800-V64.msg.bz2
new file mode 100644
index 000000000..ccc4f6d12
--- /dev/null
+++ b/mdk-stage1/init-data/boot-install-lilo-800-V64.msg.bz2
Binary files differ
diff --git a/mdk-stage1/pcmcia_/cardmgr.c b/mdk-stage1/pcmcia_/cardmgr.c
index ea3ff127e..042aa9e5d 100644
--- a/mdk-stage1/pcmcia_/cardmgr.c
+++ b/mdk-stage1/pcmcia_/cardmgr.c
@@ -229,7 +229,7 @@ int open_sock(int sock, int mode)
static int xlate_scsi_name(bind_info_t *bind)
{
int i, fd, mode, minor;
- u_long arg[2], id1, id2;
+ u_int arg[2], id1, id2;
id1 = strtol(bind->name+3, NULL, 16);
if ((bind->major == SCSI_DISK0_MAJOR) ||
@@ -1259,9 +1259,9 @@ static void adjust_resources(void)
if (ret != 0) {
switch (al->adj.Resource) {
case RES_MEMORY_RANGE:
- sprintf(tmp, "memory %p-%p",
- (char *)al->adj.resource.memory.Base,
- (char *)al->adj.resource.memory.Base +
+ sprintf(tmp, "memory %#lx-%#lx",
+ al->adj.resource.memory.Base,
+ al->adj.resource.memory.Base +
al->adj.resource.memory.Size - 1);
break;
case RES_IO_RANGE:
diff --git a/mdk-stage1/pcmcia_/cirrus.h b/mdk-stage1/pcmcia_/cirrus.h
index 49d7fa2de..78f73b26d 100644
--- a/mdk-stage1/pcmcia_/cirrus.h
+++ b/mdk-stage1/pcmcia_/cirrus.h
@@ -48,11 +48,6 @@
#define PD67_EXT_INDEX 0x2e /* Extension index */
#define PD67_EXT_DATA 0x2f /* Extension data */
-#define pd67_ext_get(s, r) \
- (i365_set(s, PD67_EXT_INDEX, r), i365_get(s, PD67_EXT_DATA))
-#define pd67_ext_set(s, r, v) \
- (i365_set(s, PD67_EXT_INDEX, r), i365_set(s, PD67_EXT_DATA, v))
-
/* PD6722 extension registers -- indexed in PD67_EXT_INDEX */
#define PD67_DATA_MASK0 0x01 /* Data mask 0 */
#define PD67_DATA_MASK1 0x02 /* Data mask 1 */
@@ -125,10 +120,6 @@
#define PD67_EC1_INV_MGMT_IRQ 0x10
#define PD67_EC1_PULLUP_CTL 0x20
-/* Fields in PD67_EXTERN_DATA */
-#define PD67_EXD_VS1(s) (0x01 << ((s)<<1))
-#define PD67_EXD_VS2(s) (0x02 << ((s)<<1))
-
/* Fields in PD67_MISC_CTL_3 */
#define PD67_MC3_IRQ_MASK 0x03
#define PD67_MC3_IRQ_PCPCI 0x00
@@ -163,20 +154,4 @@
/* Socket Number Register */
#define PD6832_SOCKET_NUMBER 0x004c /* 8 bit */
-/* Data structure for tracking vendor-specific state */
-typedef struct cirrus_state_t {
- u_char misc1; /* PD67_MISC_CTL_1 */
- u_char misc2; /* PD67_MISC_CTL_2 */
- u_char ectl1; /* PD67_EXT_CTL_1 */
- u_char timer[6]; /* PD67_TIME_* */
-} cirrus_state_t;
-
-#define CIRRUS_PCIC_ID \
- IS_PD6729, IS_PD6730, IS_PD6832
-
-#define CIRRUS_PCIC_INFO \
- { "Cirrus PD6729", IS_CIRRUS|IS_PCI, ID(CIRRUS, 6729) }, \
- { "Cirrus PD6730", IS_CIRRUS|IS_PCI, PCI_VENDOR_ID_CIRRUS, -1 }, \
- { "Cirrus PD6832", IS_CIRRUS|IS_CARDBUS, ID(CIRRUS, 6832) }
-
#endif /* _LINUX_CIRRUS_H */
diff --git a/mdk-stage1/pcmcia_/cs.h b/mdk-stage1/pcmcia_/cs.h
index dea6937eb..9abeac216 100644
--- a/mdk-stage1/pcmcia_/cs.h
+++ b/mdk-stage1/pcmcia_/cs.h
@@ -49,8 +49,8 @@ typedef struct adjust_t {
u_int Attributes;
union {
struct memory {
- u_long Base;
- u_long Size;
+ unsigned long Base;
+ unsigned long Size;
} memory;
struct io {
ioaddr_t BasePort;
@@ -267,7 +267,7 @@ typedef struct modwin_t {
/* For RequestWindow */
typedef struct win_req_t {
u_int Attributes;
- u_long Base;
+ unsigned long Base;
u_int Size;
u_int AccessSpeed;
} win_req_t;
@@ -398,14 +398,6 @@ typedef struct mtd_bind_t {
#ifdef __KERNEL__
/*
- * Calls to set up low-level "Socket Services" drivers
- */
-
-typedef int (*ss_entry_t)(u_int sock, u_int cmd, void *arg);
-extern int register_ss_entry(int nsock, ss_entry_t entry);
-extern void unregister_ss_entry(ss_entry_t entry);
-
-/*
* The main Card Services entry point
*/
@@ -436,30 +428,6 @@ extern int CardServices(int func, void *a1, void *a2, void *a3);
extern int CardServices(int func, ...);
#endif
-#ifdef __BEOS__
-#define SS_MODULE_NAME(s) ("busses/pcmcia/" s "/v1")
-#define MTD_MODULE_NAME(s) ("busses/pcmcia/" s "/v1")
-#define CS_CLIENT_MODULE_NAME "bus_managers/pcmcia_cs/client/v1"
-typedef struct cs_client_module_info {
- bus_manager_info binfo;
- int (*_CardServices)(int, ...);
- int (*_MTDHelperEntry)(int, ...);
- void (*_add_timer)(struct timer_list *);
- void (*_del_timer)(struct timer_list *);
-} cs_client_module_info;
-#define CS_SOCKET_MODULE_NAME "bus_managers/pcmcia_cs/socket/v1"
-typedef struct cs_socket_module_info {
- bus_manager_info binfo;
- int (*_register_ss_entry)(int, ss_entry_t);
- void (*_unregister_ss_entry)(ss_entry_t);
- void (*_add_timer)(struct timer_list *);
- void (*_del_timer)(struct timer_list *);
- int (*register_resource)(int, u_long, u_long);
- int (*release_resource)(int, u_long, u_long);
- int (*check_resource)(int, u_long, u_long);
-} cs_socket_module_info;
-#endif
-
#endif /* __KERNEL__ */
#endif /* _LINUX_CS_H */
diff --git a/mdk-stage1/pcmcia_/cs_types.h b/mdk-stage1/pcmcia_/cs_types.h
index a6b56b6bf..4598d7f48 100644
--- a/mdk-stage1/pcmcia_/cs_types.h
+++ b/mdk-stage1/pcmcia_/cs_types.h
@@ -38,8 +38,13 @@
#endif
#endif
-typedef u_short socket_t;
+#ifdef __arm__
+typedef u_int ioaddr_t;
+#else
typedef u_short ioaddr_t;
+#endif
+
+typedef u_short socket_t;
typedef u_int event_t;
typedef u_char cisdata_t;
typedef u_short page_t;
diff --git a/mdk-stage1/pcmcia_/driver_ops.h b/mdk-stage1/pcmcia_/driver_ops.h
index a7223e2c6..2f0a066d3 100644
--- a/mdk-stage1/pcmcia_/driver_ops.h
+++ b/mdk-stage1/pcmcia_/driver_ops.h
@@ -68,15 +68,6 @@ typedef struct driver_operations {
int register_driver(struct driver_operations *ops);
void unregister_driver(struct driver_operations *ops);
-#ifdef __BEOS__
-#define CB_ENABLER_MODULE_NAME "bus_managers/cb_enabler/v1"
-typedef struct cb_enabler_module_info {
- bus_manager_info binfo;
- int (*register_driver)(struct driver_operations *ops);
- void (*unregister_driver)(struct driver_operations *ops);
-} cb_enabler_module_info;
-#endif /* __BEOS__ */
-
#endif /* __KERNEL__ */
#endif /* _LINUX_DRIVER_OPS_H */
diff --git a/mdk-stage1/pcmcia_/ds.h b/mdk-stage1/pcmcia_/ds.h
index d191b09d6..29db7b415 100644
--- a/mdk-stage1/pcmcia_/ds.h
+++ b/mdk-stage1/pcmcia_/ds.h
@@ -143,21 +143,6 @@ int unregister_pccard_driver(dev_info_t *dev_info);
#define register_pcmcia_driver register_pccard_driver
#define unregister_pcmcia_driver unregister_pccard_driver
-#ifdef __BEOS__
-#define DS_MODULE_NAME "bus_managers/pcmcia_ds/v1"
-typedef struct ds_module_info {
- bus_manager_info binfo;
- int (*_register_pccard_driver)(dev_info_t *,
- dev_link_t *(*)(void),
- void (*)(dev_link_t *));
- int (*_unregister_pccard_driver)(dev_info_t *);
- struct driver_info_t **root_driver;
- int *sockets;
- struct socket_info_t **socket_table;
- sem_id *list_sem;
-} ds_module_info;
-#endif /* __BEOS__ */
-
#endif /* __KERNEL__ */
#endif /* _LINUX_DS_H */
diff --git a/mdk-stage1/pcmcia_/i82365.h b/mdk-stage1/pcmcia_/i82365.h
index 27ee5837c..38ff167fb 100644
--- a/mdk-stage1/pcmcia_/i82365.h
+++ b/mdk-stage1/pcmcia_/i82365.h
@@ -97,7 +97,6 @@
#define I365_CSC_GPI 0x10
/* Flags for I365_ADDRWIN */
-#define I365_ADDR_MEMCS16 0x20
#define I365_ENA_IO(map) (0x40 << (map))
#define I365_ENA_MEM(map) (0x01 << (map))
@@ -131,24 +130,6 @@
#define I365_MEM_WRPROT 0x8000 /* In offset high byte */
#define I365_MEM_REG 0x4000
-#define I365_REG(slot, reg) (((slot) << 6) | (reg))
-
-/* Default ISA interrupt mask */
-#define I365_ISA_IRQ_MASK 0xdeb8 /* irq's 3-5,7,9-12,14,15 */
-
-/* Device ID's for PCI-to-PCMCIA bridges */
-
-#ifndef PCI_VENDOR_ID_INTEL
-#define PCI_VENDOR_ID_INTEL 0x8086
-#endif
-#ifndef PCI_DEVICE_ID_INTEL_82092AA_0
-#define PCI_DEVICE_ID_INTEL_82092AA_0 0x1221
-#endif
-#ifndef PCI_VENDOR_ID_OMEGA
-#define PCI_VENDOR_ID_OMEGA 0x119b
-#endif
-#ifndef PCI_DEVICE_ID_OMEGA_82C092G
-#define PCI_DEVICE_ID_OMEGA_82C092G 0x1221
-#endif
+#define I365_REG(slot, reg) (((slot) << 6) + reg)
#endif /* _LINUX_I82365_H */
diff --git a/mdk-stage1/pcmcia_/vg468.h b/mdk-stage1/pcmcia_/vg468.h
index 93dc00b37..23890cd07 100644
--- a/mdk-stage1/pcmcia_/vg468.h
+++ b/mdk-stage1/pcmcia_/vg468.h
@@ -103,10 +103,4 @@
/* Flags for VG469_EXT_MODE_B */
#define VG469_MODE_B_3V 0x01 /* 3.3v for socket B */
-/* Data structure for tracking vendor-specific state */
-typedef struct vg46x_state_t {
- u_char ctl; /* VG468_CTL */
- u_char ema; /* VG468_EXT_MODE_A */
-} vg46x_state_t;
-
#endif /* _LINUX_VG468_H */
diff --git a/mdk-stage1/pcmcia_/yacc_config.c b/mdk-stage1/pcmcia_/yacc_config.c
index 79ec16eb5..2262d52f3 100644
--- a/mdk-stage1/pcmcia_/yacc_config.c
+++ b/mdk-stage1/pcmcia_/yacc_config.c
@@ -64,7 +64,7 @@ static int add_module(device_info_t *card, char *name);
#line 65 "yacc_config.y"
typedef union {
char *str;
- u_long num;
+ unsigned long num;
struct device_info_t *device;
struct card_info_t *card;
struct mtd_ident_t *mtd;
diff --git a/mdk-stage1/pcmcia_/yacc_config.h b/mdk-stage1/pcmcia_/yacc_config.h
index b4902c8e6..f9b881def 100644
--- a/mdk-stage1/pcmcia_/yacc_config.h
+++ b/mdk-stage1/pcmcia_/yacc_config.h
@@ -28,7 +28,7 @@
#define NUMBER 284
typedef union {
char *str;
- u_long num;
+ unsigned long num;
struct device_info_t *device;
struct card_info_t *card;
struct mtd_ident_t *mtd;
diff --git a/mdk-stage1/rescue-gui.c b/mdk-stage1/rescue-gui.c
index dbe12cb4a..b24018f2c 100644
--- a/mdk-stage1/rescue-gui.c
+++ b/mdk-stage1/rescue-gui.c
@@ -32,6 +32,10 @@
#include "frontend.h"
#include "tools.h"
+#if defined(__i386__) || defined(__x86_64__)
+#define ENABLE_RESCUE_MS_BOOT 1
+#endif
+
char * env[] = {
"PATH=/usr/bin:/bin:/sbin:/usr/sbin:/mnt/sbin:/mnt/usr/sbin:/mnt/bin:/mnt/usr/bin",
"LD_LIBRARY_PATH=/lib:/usr/lib:/mnt/lib:/mnt/usr/lib:/usr/X11R6/lib:/mnt/usr/X11R6/lib"
@@ -155,7 +159,7 @@ int main(int argc __attribute__ ((unused)), char **argv __attribute__ ((unused))
enum return_type results;
char install_bootloader[] = "Re-install Boot Loader";
-#ifdef __i386__
+#if ENABLE_RESCUE_MS_BOOT
char restore_ms_boot[] = "Restore Windows Boot Loader";
#endif
char mount_parts[] = "Mount your partitions under /mnt";
@@ -164,7 +168,7 @@ int main(int argc __attribute__ ((unused)), char **argv __attribute__ ((unused))
char doc[] = "Doc: what's addressed by this Rescue?";
char * actions[] = { install_bootloader,
-#ifdef __i386__
+#if ENABLE_RESCUE_MS_BOOT
restore_ms_boot,
#endif
mount_parts, go_to_console, reboot_, doc, NULL };
@@ -182,7 +186,7 @@ int main(int argc __attribute__ ((unused)), char **argv __attribute__ ((unused))
if (ptr_begins_static_str(choice, install_bootloader)) {
binary = "/usr/bin/install_bootloader";
}
-#ifdef __i386__
+#if ENABLE_RESCUE_MS_BOOT
if (ptr_begins_static_str(choice, restore_ms_boot)) {
binary = "/usr/bin/restore_ms_boot";
}