diff options
-rw-r--r-- | conf/machine/beagle.conf | 12 | ||||
-rw-r--r-- | ipkg/ipkg-collateral/beagle/dest | 0 | ||||
-rw-r--r-- | linux/montavista-sa-2.4.17-mvl21/defconfig-beagle | 141 | ||||
-rw-r--r-- | linux/montavista-sa-2.4.17-mvl21/pcmcia_preempt.patch | 180 | ||||
-rw-r--r-- | linux/montavista-sa_2.4.17-mvl21.oe | 3 | ||||
-rw-r--r-- | opie-networksettings/opie-networksettings_cvs.oe | 2 |
6 files changed, 321 insertions, 17 deletions
diff --git a/conf/machine/beagle.conf b/conf/machine/beagle.conf index edb07fa1b4..a209160f3d 100644 --- a/conf/machine/beagle.conf +++ b/conf/machine/beagle.conf @@ -10,15 +10,15 @@ BOOTSTRAP_EXTRA_DEPENDS = "virtual/kernel modutils hostap-modules orinoco-module BOOTSTRAP_EXTRA_RDEPENDS = " kernel-module-net-fd \ kernel-module-sa1100-bi kernel-module-usbdcore kernel-module-usbdmonitor \ kernel-module-pcnet-cs kernel-module-8390 kernel-module-unix \ -kernel-module-sa1100-ir \ +kernel-module-sa1100-ir kernel-module-irlan kernel-module-irnet \ kernel-module-usb-eth kernel-module-sa1100usb-core \ kernel-module-ppp-generic kernel-module-ppp-async kernel-module-mtdchar \ -kernel-module-fat kernel-module-vfat " +kernel-module-fat kernel-module-vfat \ +kernel-module-ircomm kernel-module-ircomm-tty \ +kernel-module-serial kernel-module-slhc " BOOTSTRAP_EXTRA_RRECOMMENDS = "hostap-modules-cs " -# FIXME: the modules list is not complete yet! - EXTRA_IMAGECMD_jffs2 = "--pad=0xec0000 --little-endian --eraseblock=0x40000" EXTRA_IMAGEDEPENDS = "cetools-native" @@ -31,5 +31,9 @@ IMAGE_CMD_jffs2 = "mkfs.jffs2 --root=${IMAGE_ROOTFS} --faketime \ include conf/machine/handheld-common.conf include conf/machine/tune-strongarm.conf +# Remove BlueZ from the Stock ROM +# BOOTSTRAP_EXTRA_RRECOMMENDS -= "bluez-utils" + + SERIAL_CONSOLE = "115200 ttySA0" diff --git a/ipkg/ipkg-collateral/beagle/dest b/ipkg/ipkg-collateral/beagle/dest new file mode 100644 index 0000000000..e69de29bb2 --- /dev/null +++ b/ipkg/ipkg-collateral/beagle/dest 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" diff --git a/opie-networksettings/opie-networksettings_cvs.oe b/opie-networksettings/opie-networksettings_cvs.oe index cd5a0e0158..45f8be6878 100644 --- a/opie-networksettings/opie-networksettings_cvs.oe +++ b/opie-networksettings/opie-networksettings_cvs.oe @@ -34,7 +34,7 @@ do_install() { done # install changedns script - install -m 0644 ${WORKDIR}/root/usr/bin/changedns ${D}${bindir}/ + install -m 0755 ${WORKDIR}/root/usr/bin/changedns ${D}${bindir}/ } PACKAGES =+ "opie-networksettings-pppplugin opie-networksettings-wlanplugin" |