summaryrefslogtreecommitdiff
path: root/linux
diff options
context:
space:
mode:
authorHolger Freyther <zecke@selfish.org>2004-10-16 20:47:50 +0000
committerHolger Freyther <zecke@selfish.org>2004-10-16 20:47:50 +0000
commitb73c43653628d428f5288d736cf53ce1ab3d5c0e (patch)
tree318bb72fe1e6a818775c7b00993ee4b8778a2a94 /linux
parent62d356224f85a046f8d04257a8d972617c8fe901 (diff)
Merge bk://openembedded@openembedded.bkbits.net/packages
into handhelds.org:/home/ich/programming/oe/oe-packages-exported 2004/10/15 02:45:08+02:00 handhelds.org!zecke Opie-Networksettings: Changedns is a script and must be executable. Change the permission to 0755 to be executable 2004/10/15 02:40:06+02:00 handhelds.org!zecke Merge bk://openembedded@openembedded.bkbits.net/packages into handhelds.org:/home/ich/programming/oe/oe-packages-exported 2004/10/15 02:39:55+02:00 handhelds.org!zecke Beagle: -Change default kernel to get a kernel that doesn't ooops on start-up. This configuration was found by trial and error to get a booting kernel. This kernel leaves two blocks free on the kernel partition but it seems like we need to have some more 'ram' free... 2004/10/15 01:12:18+02:00 handhelds.org!zecke Beagle: Add TMPFS, install '/root' destination for ipkg, change loaded and installed modules BKrev: 417188f67LTUli_O0hjroiC0hPDckg
Diffstat (limited to 'linux')
-rw-r--r--linux/montavista-sa-2.4.17-mvl21/defconfig-beagle141
-rw-r--r--linux/montavista-sa-2.4.17-mvl21/pcmcia_preempt.patch180
-rw-r--r--linux/montavista-sa_2.4.17-mvl21.oe3
3 files changed, 312 insertions, 12 deletions
diff --git a/linux/montavista-sa-2.4.17-mvl21/defconfig-beagle b/linux/montavista-sa-2.4.17-mvl21/defconfig-beagle
index 181b7eb1e6..063f48bce2 100644
--- a/linux/montavista-sa-2.4.17-mvl21/defconfig-beagle
+++ b/linux/montavista-sa-2.4.17-mvl21/defconfig-beagle
@@ -1,5 +1,5 @@
#
-# Automatically generated by make menuconfig: don't edit
+# Automatically generated make config: don't edit
#
CONFIG_ARM=y
# CONFIG_EISA is not set
@@ -48,6 +48,10 @@ CONFIG_ARCH_SA1100=y
#
# Archimedes/A5000 Implementations
#
+
+#
+# Archimedes/A5000 Implementations (select only ONE)
+#
# CONFIG_ARCH_ARC is not set
# CONFIG_ARCH_A5K is not set
@@ -96,7 +100,7 @@ CONFIG_SA1100_ASSABET=y
CONFIG_SA1100_BEAGLE=y
CONFIG_SA1100_USB=m
CONFIG_SA1100_USB_NETLINK=m
-CONFIG_SA1100_USB_CHAR=m
+# CONFIG_SA1100_USB_CHAR is not set
#
# Intel PXA250/210 Implementations
@@ -119,6 +123,10 @@ CONFIG_SA1100_USB_CHAR=m
# CONFIG_FOOTBRIDGE_ADDIN is not set
CONFIG_CPU_32=y
# CONFIG_CPU_26 is not set
+
+#
+# Processor Type
+#
# CONFIG_CPU_32v3 is not set
CONFIG_CPU_32v4=y
# CONFIG_CPU_ARM610 is not set
@@ -161,6 +169,10 @@ CONFIG_NET=y
CONFIG_SYSVIPC=y
# CONFIG_BSD_PROCESS_ACCT is not set
CONFIG_SYSCTL=y
+
+#
+# At least one math emulation must be selected
+#
CONFIG_FPE_NWFPE=y
# CONFIG_FPE_FASTFPE is not set
CONFIG_KCORE_ELF=y
@@ -172,12 +184,14 @@ CONFIG_BINFMT_ELF=y
CONFIG_PM=y
CONFIG_APM=y
# CONFIG_ARTHUR is not set
-CONFIG_CMDLINE="root=/dev/mtdblock/1 mem=27M console=ttySA0 noinitrd"
+CONFIG_CMDLINE="root=/dev/mtdblock/1 mem=32M console=ttySA0 noinitrd"
CONFIG_LEDS=y
-CONFIG_LEDS_TIMER=y
+# CONFIG_LEDS_TIMER is not set
# CONFIG_LEDS_CPU is not set
CONFIG_ALIGNMENT_TRAP=y
CONFIG_PREEMPT=y
+# CONFIG_PREEMPT_TIMES is not set
+# CONFIG_LOCK_BREAK is not set
#
# Parallel port support
@@ -193,6 +207,10 @@ CONFIG_MTD_PARTITIONS=y
# CONFIG_MTD_REDBOOT_PARTS is not set
# CONFIG_MTD_BOOTLDR_PARTS is not set
# CONFIG_MTD_AFS_PARTS is not set
+
+#
+# User Modules And Translation Layers
+#
CONFIG_MTD_CHAR=m
CONFIG_MTD_BLOCK=y
# CONFIG_FTL is not set
@@ -248,6 +266,10 @@ CONFIG_MTD_SA1100=y
# CONFIG_MTD_SLRAM is not set
# CONFIG_MTD_MTDRAM is not set
# CONFIG_MTD_BLKMTD is not set
+
+#
+# Disk-On-Chip Device Drivers
+#
# CONFIG_MTD_DOC1000 is not set
# CONFIG_MTD_DOC2000 is not set
# CONFIG_MTD_DOC2001 is not set
@@ -351,6 +373,10 @@ CONFIG_IP_NF_TARGET_TCPMSS=m
# CONFIG_KHTTPD is not set
# CONFIG_ATM is not set
# CONFIG_VLAN_8021Q is not set
+
+#
+#
+#
# CONFIG_IPX is not set
# CONFIG_ATALK is not set
# CONFIG_DECNET is not set
@@ -423,6 +449,10 @@ CONFIG_WAVELAN=m
# CONFIG_AIRONET4500_NONCS is not set
# CONFIG_AIRONET4500_PROC is not set
CONFIG_HERMES=m
+
+#
+# Wireless Pcmcia cards support
+#
CONFIG_PCMCIA_HERMES=m
CONFIG_AIRO_CS=m
CONFIG_NET_WIRELESS=y
@@ -465,11 +495,19 @@ CONFIG_PCMCIA_PCNET=m
# IrDA (infrared) support
#
CONFIG_IRDA=m
+
+#
+# IrDA protocols
+#
CONFIG_IRLAN=m
CONFIG_IRNET=m
CONFIG_IRCOMM=m
CONFIG_IRDA_ULTRA=y
CONFIG_IRDA_OPTIONS=y
+
+#
+# IrDA options
+#
CONFIG_IRDA_CACHE_LAST_LSAP=y
CONFIG_IRDA_FAST_RR=y
# CONFIG_IRDA_DEBUG is not set
@@ -478,9 +516,21 @@ CONFIG_IRDA_DEVICENAME="Linux-Beagle"
#
# Infrared-port device drivers
#
+
+#
+# SIR device drivers
+#
# CONFIG_IRTTY_SIR is not set
# CONFIG_IRPORT_SIR is not set
+
+#
+# Dongle support
+#
# CONFIG_DONGLE is not set
+
+#
+# FIR device drivers
+#
# CONFIG_USB_IRDA is not set
# CONFIG_NSC_FIR is not set
# CONFIG_WINBOND_FIR is not set
@@ -499,6 +549,10 @@ CONFIG_IDE=y
# IDE, ATA and ATAPI Block devices
#
CONFIG_BLK_DEV_IDE=y
+
+#
+# Please see Documentation/ide.txt for help/info on IDE drives
+#
# CONFIG_BLK_DEV_HD_IDE is not set
# CONFIG_BLK_DEV_HD is not set
CONFIG_BLK_DEV_IDEDISK=y
@@ -517,6 +571,10 @@ CONFIG_BLK_DEV_IDECS=y
# CONFIG_BLK_DEV_IDETAPE is not set
# CONFIG_BLK_DEV_IDEFLOPPY is not set
# CONFIG_BLK_DEV_IDESCSI is not set
+
+#
+# IDE chipset support/bugfixes
+#
# CONFIG_BLK_DEV_CMD640 is not set
# CONFIG_BLK_DEV_CMD640_ENHANCED is not set
# CONFIG_BLK_DEV_ISAPNP is not set
@@ -608,6 +666,10 @@ CONFIG_UNIX98_PTY_COUNT=256
CONFIG_L3=y
CONFIG_L3_ALGOBIT=y
CONFIG_L3_BIT_SA1100_GPIO=y
+
+#
+# Other L3 adapters
+#
# CONFIG_L3_SA1111 is not set
CONFIG_BIT_SA1100_GPIO=y
@@ -621,6 +683,14 @@ CONFIG_BIT_SA1100_GPIO=y
# Joysticks
#
# CONFIG_INPUT_GAMEPORT is not set
+
+#
+# Input core support is needed for gameports
+#
+
+#
+# Input core support is needed for joysticks
+#
# CONFIG_QIC02_TAPE is not set
#
@@ -679,7 +749,7 @@ CONFIG_VFAT_FS=m
CONFIG_JFFS2_FS=y
CONFIG_JFFS2_FS_DEBUG=0
# CONFIG_CRAMFS is not set
-# CONFIG_TMPFS is not set
+CONFIG_TMPFS=y
# CONFIG_RAMFS is not set
CONFIG_ISO9660_FS=m
CONFIG_JOLIET=y
@@ -709,14 +779,13 @@ CONFIG_EXT2_FS=m
#
# CONFIG_CODA_FS is not set
# CONFIG_INTERMEZZO_FS is not set
-CONFIG_NFS_FS=m
-CONFIG_NFS_V3=y
+# CONFIG_NFS_FS is not set
+# CONFIG_NFS_V3 is not set
# CONFIG_ROOT_NFS is not set
# CONFIG_NFSD is not set
# CONFIG_NFSD_V3 is not set
-CONFIG_SUNRPC=m
-CONFIG_LOCKD=m
-CONFIG_LOCKD_V4=y
+# CONFIG_SUNRPC is not set
+# CONFIG_LOCKD is not set
# CONFIG_SMB_FS is not set
# CONFIG_NCP_FS is not set
# CONFIG_NCPFS_PACKET_SIGNING is not set
@@ -886,10 +955,18 @@ CONFIG_MCP_UCB1200_TS=y
# USB support
#
# CONFIG_USB is not set
+
+#
+# USB Controllers
+#
# CONFIG_USB_UHCI is not set
# CONFIG_USB_UHCI_ALT is not set
# CONFIG_USB_OHCI is not set
# CONFIG_USB_NON_PCI_OHCI is not set
+
+#
+# USB Device Class drivers
+#
# CONFIG_USB_AUDIO is not set
# CONFIG_USB_BLUETOOTH is not set
# CONFIG_USB_STORAGE is not set
@@ -903,16 +980,44 @@ CONFIG_MCP_UCB1200_TS=y
# CONFIG_USB_STORAGE_JUMPSHOT is not set
# CONFIG_USB_ACM is not set
# CONFIG_USB_PRINTER is not set
+
+#
+# USB Human Interface Devices (HID)
+#
+
+#
+# Input core support is needed for USB HID
+#
+
+#
+# USB Imaging devices
+#
# CONFIG_USB_DC2XX is not set
# CONFIG_USB_MDC800 is not set
# CONFIG_USB_SCANNER is not set
# CONFIG_USB_MICROTEK is not set
# CONFIG_USB_HPUSBSCSI is not set
+
+#
+# USB Multimedia devices
+#
+
+#
+# Video4Linux support is needed for USB Multimedia device support
+#
+
+#
+# USB Network adaptors
+#
# CONFIG_USB_PEGASUS is not set
# CONFIG_USB_KAWETH is not set
# CONFIG_USB_CATC is not set
# CONFIG_USB_CDCETHER is not set
# CONFIG_USB_USBNET is not set
+
+#
+# USB port drivers
+#
# CONFIG_USB_USS720 is not set
#
@@ -943,6 +1048,10 @@ CONFIG_MCP_UCB1200_TS=y
# CONFIG_USB_SERIAL_CYBERJACK is not set
# CONFIG_USB_SERIAL_XIRCOM is not set
# CONFIG_USB_SERIAL_OMNINET is not set
+
+#
+# USB Miscellaneous drivers
+#
# CONFIG_USB_RIO500 is not set
#
@@ -957,9 +1066,17 @@ CONFIG_USBD_USE_SERIAL_NUMBER=y
CONFIG_USBD_SERIAL_NUMBER_STR="0123456789"
CONFIG_USBD_SELFPOWERED=y
CONFIG_USBD_MONITOR=m
+
+#
+#
+#
CONFIG_USBD_PROCFS=y
#
+# USB Device functions --
+#
+
+#
# Network Function
#
CONFIG_USBD_NET=m
@@ -993,6 +1110,10 @@ CONFIG_USBD_SERIAL_OUT_PKTSIZE=64
# CONFIG_USBD_SERIAL_SAFE is not set
#
+# USB Device bus interfaces --
+#
+
+#
# Intel StrongArm SA-1110 Bus Interface Driver
#
CONFIG_USBD_SA1100_BUS=m
diff --git a/linux/montavista-sa-2.4.17-mvl21/pcmcia_preempt.patch b/linux/montavista-sa-2.4.17-mvl21/pcmcia_preempt.patch
index e69de29bb2..5d4a2d28de 100644
--- a/linux/montavista-sa-2.4.17-mvl21/pcmcia_preempt.patch
+++ b/linux/montavista-sa-2.4.17-mvl21/pcmcia_preempt.patch
@@ -0,0 +1,180 @@
+
+#
+# Patch managed by http://www.holgerschurig.de/patcher.html
+#
+
+--- linux-2.4.17_mvl21/drivers/pcmcia/sa1100_generic.c~pcmcia_preempt.patch
++++ linux-2.4.17_mvl21/drivers/pcmcia/sa1100_generic.c
+@@ -172,7 +172,7 @@
+ struct pcmcia_state state[SA1100_PCMCIA_MAX_SOCK];
+ struct pcmcia_state_array state_array;
+ unsigned int i, clock;
+- unsigned long mecr;
++ unsigned long mecr, irq_flags;
+
+ printk(KERN_INFO "SA-1100 PCMCIA (CS release %s)\n", CS_RELEASE);
+
+@@ -278,10 +278,12 @@
+ return -EIO;
+ }
+
++ preempt_disable();
++
+ /* We initialize the MECR to default values here, because we are
+ * not guaranteed to see a SetIOMap operation at runtime.
+ */
+- mecr=0;
++ mecr=MECR;
+
+ clock = cpufreq_get(0);
+
+@@ -311,11 +313,14 @@
+ sa1100_pcmcia_socket[i].speed_mem=SA1100_PCMCIA_5V_MEM_ACCESS;
+ }
+
++ local_irq_save(irq_flags);
+ MECR=mecr;
++ local_irq_restore(irq_flags);
+
+ #ifdef CONFIG_CPU_FREQ
+ if(cpufreq_register_notifier(&sa1100_pcmcia_notifier_block) < 0){
+ printk(KERN_ERR "Unable to register CPU frequency change notifier\n");
++ preempt_enable();
+ return -ENXIO;
+ }
+ #endif
+@@ -324,12 +329,14 @@
+ if(register_ss_entry(sa1100_pcmcia_socket_count,
+ &sa1100_pcmcia_operations)<0){
+ printk(KERN_ERR "Unable to register socket service routine\n");
++ preempt_enable();
+ return -ENXIO;
+ }
+
+ /* Start the event poll timer. It will reschedule by itself afterwards. */
+ sa1100_pcmcia_poll_event(0);
+
++ preempt_enable();
+ DEBUG(1, "sa1100: initialization complete\n");
+
+ return 0;
+@@ -813,7 +820,7 @@
+ static int sa1100_pcmcia_set_io_map(unsigned int sock,
+ struct pccard_io_map *map){
+ unsigned int clock, speed;
+- unsigned long mecr, start;
++ unsigned long mecr, start, irq_flags;
+
+ DEBUG(4, "%s() for sock %u\n", __FUNCTION__, sock);
+
+@@ -836,7 +843,8 @@
+ }
+
+ if(map->flags&MAP_ACTIVE){
+-
++ preempt_disable();
++
+ speed=(map->speed>0)?map->speed:SA1100_PCMCIA_IO_ACCESS;
+
+ clock = cpufreq_get(0);
+@@ -852,8 +860,10 @@
+ MECR_BSM_GET(mecr, sock), sock, MECR_BSA_GET(mecr, sock),
+ sock, MECR_BSIO_GET(mecr, sock));
+
++ local_irq_save(irq_flags);
+ MECR=mecr;
+-
++ local_irq_restore(irq_flags);
++ preempt_enable();
+ }
+
+ start=map->start;
+@@ -909,8 +919,10 @@
+ static int sa1100_pcmcia_set_mem_map(unsigned int sock,
+ struct pccard_mem_map *map){
+ unsigned int clock, speed;
+- unsigned long mecr, start;
+-
++ unsigned long mecr, start, irq_flags;
++
++ preempt_disable();
++
+ DEBUG(4, "%s() for sock %u\n", __FUNCTION__, sock);
+
+ DEBUG(4, "\tmap %u speed %u\n\tsys_start %#lx\n"
+@@ -929,6 +941,7 @@
+ if(map->map>=MAX_WIN){
+ printk(KERN_ERR "%s(): map (%d) out of range\n", __FUNCTION__,
+ map->map);
++ preempt_enable();
+ return -1;
+ }
+
+@@ -968,9 +981,10 @@
+ __FUNCTION__, sock, MECR_FAST_GET(mecr, sock), sock,
+ MECR_BSM_GET(mecr, sock), sock, MECR_BSA_GET(mecr, sock),
+ sock, MECR_BSIO_GET(mecr, sock));
+-
+- MECR=mecr;
+
++ local_irq_save(irq_flags);
++ MECR=mecr;
++ local_irq_restore(irq_flags);
+ }
+
+ start=map->sys_start;
+@@ -986,6 +1000,8 @@
+
+ sa1100_pcmcia_socket[sock].mem_map[map->map]=*map;
+
++ preempt_enable();
++
+ return 0;
+
+ } /* sa1100_pcmcia_set_mem_map() */
+@@ -1026,8 +1042,13 @@
+ int count, int *eof, void *data){
+ char *p=buf;
+ unsigned int sock=(unsigned int)data;
+- unsigned int clock = cpufreq_get(0);
+- unsigned long mecr = MECR;
++ unsigned int clock;
++ unsigned long mecr;
++
++ preempt_disable();
++ clock = cpufreq_get(0);
++ mecr = MECR;
++ preempt_enable();
+
+ p+=sprintf(p, "k_flags : %s%s%s%s%s%s%s\n",
+ sa1100_pcmcia_socket[sock].k_state.detect?"detect ":"",
+@@ -1101,8 +1122,13 @@
+ void sa1100_pcmcia_update_mecr( void )
+ {
+ unsigned int sock;
+- unsigned long mecr = MECR;
+- unsigned int clock = cpufreq_get(0);
++ unsigned long mecr;
++ unsigned int clock;
++ unsigned long irq_flags;
++
++ preempt_disable();
++ mecr = MECR;
++ clock = cpufreq_get(0);
+
+ if ( clock <= 148000 )
+ clock = 59000;
+@@ -1122,10 +1148,11 @@
+ clock));
+ }
+
+- cli();
++ local_irq_save(irq_flags);
+ MECR = mecr;
+- sti();
++ local_irq_restore(irq_flags);
+
++ preempt_enable();
+ }
+ #endif
+
diff --git a/linux/montavista-sa_2.4.17-mvl21.oe b/linux/montavista-sa_2.4.17-mvl21.oe
index 7af51ecbeb..1cc774dbc7 100644
--- a/linux/montavista-sa_2.4.17-mvl21.oe
+++ b/linux/montavista-sa_2.4.17-mvl21.oe
@@ -34,7 +34,7 @@ def beagle_multiline_ppp():
inherit kernel
-CMDLINE = "root=/dev/mtdblock/1 mem=32M console=ttySA0 noinitrd"
+CMDLINE = "root=/dev/mtdblock/1 mem=32M console=ttySA0 noinitrd"
KERNEL_CCSUFFIX = "-2.95"
KERNEL_LDSUFFIX = "-2.11.2"
@@ -54,7 +54,6 @@ module_conf_usbdmonitor = "alias usbd0 usbdmonitor"
module_conf_sa1100_bi = "below sa1100_bi net_fd usbdcore "
-module_autoload_sa1100_bi = "sa1100_bi"
module_autoload_sa1100_pcmcia = "sa1100_pcmcia"
module_autoload_unix = "unix"
module_autoload_usb-eth = "usb-eth"