This patch brings up the net5501 platform.
Note that the x86/ target included support for all x86/ class
processors. That's not technically correct. This should be constrained
only to the "generic" subtarget. Every x86-class target that isn't
generic should be able to select only the optimizations/capabilities
applicable to that architectural variant.
It's also assumed that all x86 processors have keyboard & mouse ports,
ISA, DMI, ACPI... the embedded ones typically don't. Again, moving
that to the generic subtarget.
Fortunately, this was a fairly benign tweak.
The net5501 board includes the following logic:
Geode/LX processor
CS5535 super-I/O chip
PC87360 sensor chip
Via Rhine Ethernet controllers
Via Sata controllers
USB, LEDS, I2C
Signed-off-by: Philip Prindeville <philipp_subx@redfish-solutions.com>
SVN-Revision: 20794
DEPENDS:=@TARGET_x86||@TARGET_olpc
KCONFIG:=CONFIG_CS5535_GPIO
FILES:=$(LINUX_DIR)/drivers/char/cs5535_gpio.$(LINUX_KMOD_SUFFIX)
- AUTOLOAD:=$(call AutoLoad,90,cs5535_gpio)
+ AUTOLOAD:=$(call AutoLoad,50,cs5535_gpio)
endef
define KernelPackage/cs5535-gpio/description
endef
$(eval $(call KernelPackage,rfkill))
+
+define KernelPackage/geodewdt
+ SUBMENU:=$(OTHER_MENU)
+ TITLE:=Geode/LX Watchdog timer
+ DEPENDS:=@TARGET_x86 @LINUX_2_6
+ KCONFIG:=CONFIG_GEODE_WDT
+ FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/geodewdt.$(LINUX_KMOD_SUFFIX)
+ AUTOLOAD:=$(call AutoLoad,50,geodewdt)
+endef
+
+define KernelPackage/geodewdt/description
+ Kernel module for Geode watchdog timer.
+endef
+
+$(eval $(call KernelPackage,geodewdt))
+
+define KernelPackage/pc8736x-gpio
+ SUBMENU:=$(OTHER_MENU)
+ TITLE:=PC8736x GPIO support
+ DEPENDS:=@TARGET_x86
+ KCONFIG:=CONFIG_PC8736x_GPIO
+ FILES:=$(LINUX_DIR)/drivers/char/pc8736x_gpio.$(LINUX_KMOD_SUFFIX)
+ AUTOLOAD:=$(call AutoLoad,40,pc8736x_gpio)
+endef
+
+define KernelPackage/pc8736x-gpio/description
+ Kernel module for PC8736x GPIO
+endef
+
+$(eval $(call KernelPackage,pc8736x-gpio))
+
BOARD:=x86
BOARDNAME:=x86
FEATURES:=squashfs jffs2 ext2 vdi vmdk pcmcia tgz
-SUBTARGETS=generic olpc xen_domu ep80579
+SUBTARGETS=generic olpc xen_domu ep80579 net5501
LINUX_VERSION:=2.6.32.10
# CONFIG_60XX_WDT is not set
# CONFIG_64BIT is not set
# CONFIG_AC3200 is not set
-CONFIG_ACPI=y
-# CONFIG_ACPI_AC is not set
-# CONFIG_ACPI_ASUS is not set
-# CONFIG_ACPI_BATTERY is not set
-CONFIG_ACPI_BLACKLIST_YEAR=0
-# CONFIG_ACPI_BUTTON is not set
-# CONFIG_ACPI_CONTAINER is not set
-# CONFIG_ACPI_CUSTOM_DSDT is not set
-# CONFIG_ACPI_DEBUG is not set
-# CONFIG_ACPI_DOCK is not set
-# CONFIG_ACPI_FAN is not set
-# CONFIG_ACPI_PCI_SLOT is not set
-CONFIG_ACPI_PROCESSOR=y
-# CONFIG_ACPI_PROCESSOR_AGGREGATOR is not set
-# CONFIG_ACPI_PROCFS is not set
-# CONFIG_ACPI_PROCFS_POWER is not set
-# CONFIG_ACPI_PROC_EVENT is not set
-# CONFIG_ACPI_SBS is not set
-CONFIG_ACPI_SYSFS_POWER=y
-CONFIG_ACPI_THERMAL=y
-# CONFIG_ACPI_TOSHIBA is not set
-# CONFIG_ACPI_WMI is not set
+# CONFIG_ACPI is not set
# CONFIG_ACQUIRE_WDT is not set
# CONFIG_ADVANTECH_WDT is not set
# CONFIG_ALIM1535_WDT is not set
CONFIG_CPU_FREQ_TABLE=y
CONFIG_CPU_IDLE=y
CONFIG_CPU_IDLE_GOV_LADDER=y
-CONFIG_CPU_SUP_AMD=y
-CONFIG_CPU_SUP_CENTAUR=y
-CONFIG_CPU_SUP_CYRIX_32=y
-CONFIG_CPU_SUP_INTEL=y
-CONFIG_CPU_SUP_TRANSMETA_32=y
-CONFIG_CPU_SUP_UMC_32=y
+# CONFIG_CPU_SUP_AMD is not set
+# CONFIG_CPU_SUP_CENTAUR is not set
+# CONFIG_CPU_SUP_CYRIX_32 is not set
+# CONFIG_CPU_SUP_INTEL is not set
+# CONFIG_CPU_SUP_TRANSMETA_32 is not set
+# CONFIG_CPU_SUP_UMC_32 is not set
# CONFIG_CS5535_GPIO is not set
# CONFIG_CS89x0 is not set
# CONFIG_DCDBAS is not set
# CONFIG_DEPCA is not set
CONFIG_DEVPORT=y
# CONFIG_DMAR is not set
-CONFIG_DMI=y
-# CONFIG_DMIID is not set
+# CONFIG_DMI is not set
CONFIG_DNOTIFY=y
CONFIG_DOUBLEFAULT=y
CONFIG_DUMMY_CONSOLE=y
# CONFIG_IBMASR is not set
# CONFIG_IMA is not set
CONFIG_INITRAMFS_SOURCE=""
-CONFIG_INPUT=y
-CONFIG_INPUT_KEYBOARD=y
-CONFIG_INPUT_MOUSE=y
-CONFIG_INPUT_MOUSEDEV=y
-CONFIG_INPUT_MOUSEDEV_PSAUX=y
-CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024
-CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768
-# CONFIG_INPUT_YEALINK is not set
+# CONFIG_INPUT is not set
# CONFIG_INTEL_MENLOW is not set
# CONFIG_IOMMU_API is not set
# CONFIG_IOMMU_HELPER is not set
CONFIG_IO_DELAY_TYPE_NONE=3
CONFIG_IO_DELAY_TYPE_UDELAY=2
# CONFIG_IO_DELAY_UDELAY is not set
-CONFIG_ISA=y
-CONFIG_ISAPNP=y
-CONFIG_ISA_DMA_API=y
+# CONFIG_ISA is not set
# CONFIG_ISCSI_IBFT_FIND is not set
# CONFIG_ISDN_CAPI is not set
# CONFIG_ISDN_I4L is not set
# CONFIG_MK6 is not set
# CONFIG_MK7 is not set
# CONFIG_MK8 is not set
-# CONFIG_MOUSE_BCM5974 is not set
-CONFIG_MOUSE_PS2=y
-CONFIG_MOUSE_PS2_ALPS=y
-# CONFIG_MOUSE_PS2_ELANTECH is not set
-CONFIG_MOUSE_PS2_LIFEBOOK=y
-CONFIG_MOUSE_PS2_LOGIPS2PP=y
-CONFIG_MOUSE_PS2_SYNAPTICS=y
-# CONFIG_MOUSE_PS2_TOUCHKIT is not set
-CONFIG_MOUSE_PS2_TRACKPOINT=y
-# CONFIG_MOUSE_SERIAL is not set
-# CONFIG_MOUSE_VSXXXAA is not set
# CONFIG_MPENTIUM4 is not set
# CONFIG_MPENTIUMII is not set
# CONFIG_MPENTIUMIII is not set
CONFIG_VM86=y
CONFIG_VM_EVENT_COUNTERS=y
# CONFIG_VORTEX is not set
-CONFIG_VT=y
-CONFIG_VT_CONSOLE=y
-# CONFIG_VT_HW_CONSOLE_BINDING is not set
+# CONFIG_VT is not set
# CONFIG_W83697UG_WDT is not set
# CONFIG_WAFER_WDT is not set
# CONFIG_WDT is not set
+CONFIG_CPU_SUP_AMD=y
+CONFIG_CPU_SUP_CENTAUR=y
+CONFIG_CPU_SUP_CYRIX_32=y
+CONFIG_CPU_SUP_INTEL=y
+CONFIG_CPU_SUP_TRANSMETA_32=y
+CONFIG_CPU_SUP_UMC_32=y
+CONFIG_INPUT=y
+CONFIG_INPUT_KEYBOARD=y
+CONFIG_INPUT_MOUSE=y
+CONFIG_INPUT_MOUSEDEV=y
+CONFIG_INPUT_MOUSEDEV_PSAUX=y
+CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024
+CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768
+# CONFIG_MOUSE_BCM5974 is not set
+CONFIG_MOUSE_PS2=y
+CONFIG_MOUSE_PS2_ALPS=y
+# CONFIG_MOUSE_PS2_ELANTECH is not set
+CONFIG_MOUSE_PS2_LIFEBOOK=y
+CONFIG_MOUSE_PS2_LOGIPS2PP=y
+CONFIG_MOUSE_PS2_SYNAPTICS=y
+# CONFIG_MOUSE_PS2_TOUCHKIT is not set
+CONFIG_MOUSE_PS2_TRACKPOINT=y
+# CONFIG_MOUSE_SERIAL is not set
+# CONFIG_MOUSE_VSXXXAA is not set
+CONFIG_DMI=y
+# CONFIG_DMIID is not set
+CONFIG_ISA=y
+CONFIG_ISAPNP=y
+CONFIG_ISA_DMA_API=y
+CONFIG_VT=y
+CONFIG_VT_CONSOLE=y
+# CONFIG_VT_HW_CONSOLE_BINDING is not set
+CONFIG_ACPI=y
+# CONFIG_ACPI_AC is not set
+# CONFIG_ACPI_ASUS is not set
+# CONFIG_ACPI_BATTERY is not set
+CONFIG_ACPI_BLACKLIST_YEAR=0
+# CONFIG_ACPI_BUTTON is not set
+# CONFIG_ACPI_CONTAINER is not set
+# CONFIG_ACPI_CUSTOM_DSDT is not set
+# CONFIG_ACPI_DEBUG is not set
+# CONFIG_ACPI_DOCK is not set
+# CONFIG_ACPI_FAN is not set
+# CONFIG_ACPI_PCI_SLOT is not set
+CONFIG_ACPI_PROCESSOR=y
+# CONFIG_ACPI_PROCESSOR_AGGREGATOR is not set
+# CONFIG_ACPI_PROCFS is not set
+# CONFIG_ACPI_PROCFS_POWER is not set
+# CONFIG_ACPI_PROC_EVENT is not set
+# CONFIG_ACPI_SBS is not set
+CONFIG_ACPI_SYSFS_POWER=y
+CONFIG_ACPI_THERMAL=y
+# CONFIG_ACPI_TOSHIBA is not set
+# CONFIG_ACPI_WMI is not set
CONFIG_PATA_LEGACY=y
CONFIG_PATA_PLATFORM=y
bool
depends X86_GRUB_IMAGES
prompt "Use Console Terminal (in addition to Serial)"
- default n if TARGET_x86_generic_Soekris48xx || TARGET_x86_generic_Soekris45xx
- default y if ! (TARGET_x86_generic_Soekris48xx || TARGET_x86_generic_Soekris45xx)
+ default n if TARGET_x86_generic_Soekris48xx || TARGET_x86_generic_Soekris45xx || TARGET_x86_net5501
+ default y if ! (TARGET_x86_generic_Soekris48xx || TARGET_x86_generic_Soekris45xx || TARGET_x86_net5501)
config X86_GRUB_SERIAL
string
config X86_GRUB_BAUDRATE
int "Serial port baud rate"
depends X86_GRUB_IMAGES
- default 19200 if TARGET_x86_generic_Soekris48xx || TARGET_x86_generic_Soekris45xx
- default 38400 if ! (TARGET_x86_generic_Soekris48xx || TARGET_x86_generic_Soekris45xx)
+ default 19200 if TARGET_x86_generic_Soekris48xx || TARGET_x86_generic_Soekris45xx || TARGET_x86_net5501
+ default 38400 if ! (TARGET_x86_generic_Soekris48xx || TARGET_x86_generic_Soekris45xx || TARGET_x86_net5501)
config X86_GRUB_KERNELPART
int "Kernel partition size (in MB)"
--- /dev/null
+# CONFIG_ACPI is not set
+# CONFIG_DMI is not set
+CONFIG_CPU_SUP_AMD=y
+CONFIG_GEODE_MFGPT_TIMER=y
+# CONFIG_GEODE_WDT is not set
+CONFIG_HAVE_PERF_EVENTS=y
+CONFIG_HWMON=y
+# CONFIG_HWMON_DEBUG_CHIP is not set
+# CONFIG_ISA is not set
+# CONFIG_INPUT is not set
+# CONFIG_KEYBOARD_ATKBD is not set
+# CONFIG_M486 is not set
+CONFIG_MGEODE_LX=y
+# CONFIG_MOUSE_PS2 is not set
+# CONFIG_PCSPKR_PLATFORM is not set
+CONFIG_PROCESSOR_SELECT=y
+# CONFIG_SCx200 is not set
+# CONFIG_SERIO_I8042 is not set
+# CONFIG_SERIO_LIBPS2 is not set
+CONFIG_X86_DEBUGCTLMSR=y
+# CONFIG_X86_DS is not set
+CONFIG_X86_L1_CACHE_SHIFT=5
+CONFIG_X86_TSC=y
+CONFIG_X86_USE_3DNOW=y
+CONFIG_X86_USE_PPRO_CHECKSUM=y
--- /dev/null
+BOARDNAME:=Soekris net5501
+DEFAULT_PACKAGES += kmod-ata-via-sata kmod-crypto-hw-geode \
+ kmod-cs5535-gpio kmod-nsc-gpio kmod-pc8736x-gpio \
+ kmod-geodewdt kmod-hwmon-core kmod-hwmon-pc87360 \
+ kmod-via-rhine \
+ kmod-i2c-core kmod-i2c-gpio \
+ kmod-i2c-algo-bit kmod-i2c-algo-pca kmod-i2c-algo-pcf \
+ kmod-usb-core kmod-usb2 kmod-usb-hid kmod-usb-uhci
+CFLAGS += -march=k6-2 -fno-align-functions -fno-align-loops -fno-align-jumps \
+ -fno-align-labels
+
+define Target/Description
+ Build firmware images for Soekris net5501 board
+endef
+
--- /dev/null
+--- a/arch/x86/kernel/mfgpt_32.c 2010-03-15 09:52:04.000000000 -0600
++++ b/arch/x86/kernel/mfgpt_32.c 2010-04-08 17:31:56.000000000 -0600
+@@ -33,7 +33,7 @@
+ #include <linux/module.h>
+ #include <asm/geode.h>
+
+-#define MFGPT_DEFAULT_IRQ 7
++#define MFGPT_DEFAULT_IRQ 6
+
+ static struct mfgpt_timer_t {
+ unsigned int avail:1;