Browse Source

unify alix support

add hardware profiles for 3 alix boards, but use the same toolchain
for all of them. This is just better for maintenance purpose.
delete old targets.
Waldemar Brodkorb 13 years ago
parent
commit
b6a5c9e0b1
55 changed files with 355 additions and 10200 deletions
  1. 3 4
      package/alix-switch/Makefile
  2. 1 1
      package/ffmpeg/Makefile
  3. 1 1
      package/firefox/Makefile
  4. 1 1
      package/mplayer/Makefile
  5. 0 2
      package/xf86-input-evtouch/Makefile
  6. 0 2
      package/xf86-input-keyboard/Makefile
  7. 0 2
      package/xf86-input-mouse/Makefile
  8. 1 1
      package/xf86-video-fbdev/Makefile
  9. 1 1
      package/xf86-video-geode/Makefile
  10. 36 170
      target/Config.in
  11. 64 0
      target/Config.in.alix
  12. 0 0
      target/alix/Makefile
  13. 0 0
      target/alix/files/etc/fstab
  14. 0 0
      target/alix/files/etc/inittab
  15. 0 0
      target/alix/files/etc/mdev.conf
  16. 0 0
      target/alix/files/etc/network/interfaces
  17. 0 0
      target/alix/files/etc/tmpfs
  18. 145 135
      target/alix/kernel.config
  19. 0 0
      target/alix/target.mk
  20. 0 0
      target/alix/uclibc.config
  21. 0 1425
      target/alix1c/kernel.config
  22. 0 39
      target/alix2d/Makefile
  23. 0 2
      target/alix2d/files/etc/fstab
  24. 0 3
      target/alix2d/files/etc/inittab
  25. 0 17
      target/alix2d/files/etc/mdev.conf
  26. 0 1301
      target/alix2d/kernel.config
  27. 0 7
      target/alix2d/target.mk
  28. 0 241
      target/alix2d/uclibc.config
  29. 0 33
      target/alix2d13/Makefile
  30. 0 2
      target/alix2d13/files/etc/fstab
  31. 0 3
      target/alix2d13/files/etc/inittab
  32. 0 11
      target/alix2d13/files/etc/mdev.conf
  33. 0 7
      target/alix2d13/target.mk
  34. 0 241
      target/alix2d13/uclibc.config
  35. 3 3
      target/bulk.lst
  36. 6 6
      target/bulkdef.lst
  37. 1 0
      target/linux/Config.in
  38. 26 0
      target/linux/config/Config.in.graphics
  39. 55 8
      target/linux/config/Config.in.misc
  40. 1 1
      target/linux/config/Config.in.multimedia
  41. 9 3
      target/linux/config/Config.in.usb
  42. 1 4
      target/target.lst
  43. 0 47
      target/wag54g/Makefile
  44. 0 3
      target/wag54g/files/etc/inittab
  45. 0 10
      target/wag54g/files/etc/mdev.conf
  46. 0 899
      target/wag54g/kernel.config
  47. 0 4501
      target/wag54g/patches/ar7.patch
  48. 0 7
      target/wag54g/target.mk
  49. 0 4
      target/wag54g/tools/addpattern/Makefile
  50. 0 255
      target/wag54g/tools/addpattern/addpattern.c
  51. 0 9
      target/wag54g/tools/rules.mk
  52. 0 27
      target/wag54g/tools/squashfs/Makefile
  53. 0 4
      target/wag54g/tools/srec2bin/Makefile
  54. 0 524
      target/wag54g/tools/srec2bin/srec2bin.c
  55. 0 233
      target/wag54g/uclibc.config

+ 3 - 4
package/alix-switch/Makefile

@@ -5,13 +5,12 @@ include ${TOPDIR}/rules.mk
 
 PKG_NAME:=		alix-switch
 PKG_VERSION:=		1.0
-PKG_RELEASE:=		2
+PKG_RELEASE:=		3
 PKG_DESCR:=		daemon listening on button events
 PKG_SECTION:=		base
-PKG_URL:=		http://www.openadk.org/
+PKG_URL:=		http://openadk.org/
 
-PKG_TARGET_DEPENDS:=	alix2d alix2d13
-PKG_DFLT_ALIX_SWITCH:=	y
+PKG_TARGET_DEPENDS:=	alix
 
 NO_DISTFILES:=		1
 

+ 1 - 1
package/ffmpeg/Makefile

@@ -31,7 +31,7 @@ SUB_INSTALLS-y:=
 SUB_INSTALLS-m:=
 SUB_INSTALLS-${ADK_PACKAGE_FFPLAY}+=	ffplay-install
 
-ifeq ($(ADK_TARGET),alix1c)
+ifeq ($(ADK_TARGET),alix)
 CONFIGURE_CPU_OPTS:=	--disable-ssse3 \
 			--disable-sse \
 			--enable-amd3dnow \

+ 1 - 1
package/firefox/Makefile

@@ -17,7 +17,7 @@ PKG_BUILDDEP+=		nspr nss jpeg libXt
 PKG_URL:=		http://www.mozilla.org/
 PKG_SITES:=		http://releases.mozilla.org/pub/mozilla.org/firefox/releases/${PKG_VERSION}/source/
 
-PKG_TARGET_DEPENDS:=	alix1c x86_qemu x86_64_qemu shuttle ibmx40 lemote
+PKG_TARGET_DEPENDS:=	alix x86_qemu x86_64_qemu shuttle ibmx40 lemote
 PKG_HOST_DEPENDS:=	!netbsd !freebsd !openbsd !cygwin !darwin
 
 DISTFILES:=             ${PKG_NAME}-${PKG_VERSION}.source.tar.bz2

+ 1 - 1
package/mplayer/Makefile

@@ -18,13 +18,13 @@ PKG_URL:=		http://www.mplayerhq.hu/
 PKG_SITES:=		http://openadk.org/distfiles/
 
 PKG_HOST_DEPENDS:=	!darwin
+PKG_TARGET_DEPENDS:=	alix x86_qemu x86_64_qemu shuttle lemote
 
 PKG_FLAVOURS:=		WITH_DIRECTFB
 PKGFD_WITH_DIRECTFB:=	enable DirectFB video output support
 PKGFS_WITH_DIRECTFB:=	directfb
 PKGFB_WITH_DIRECTFB:=	DirectFB
 
-PKG_TARGET_DEPENDS:=	alix1c x86_qemu x86_64_qemu shuttle lemote
 
 include ${TOPDIR}/mk/package.mk
 

+ 0 - 2
package/xf86-input-evtouch/Makefile

@@ -13,8 +13,6 @@ PKG_DEPENDS:=		xorg-server kmod-input-evdev
 PKG_BUILDDEP:=		xorg-server
 PKG_SITES:=		http://www.conan.de/touchscreen/
 
-PKG_TARGET_DEPENDS:=	alix1c
-
 DISTFILES:= 		${PKG_NAME}-${PKG_VERSION}.tar.bz2
 
 include $(TOPDIR)/mk/package.mk

+ 0 - 2
package/xf86-input-keyboard/Makefile

@@ -13,8 +13,6 @@ PKG_DEPENDS:=		xorg-server
 PKG_BUILDDEP:=		xorg-server
 PKG_SITES:=		${MASTER_SITE_XORG}
 
-PKG_TARGET_DEPENDS:=	alix1c lemote ibmx40 shuttle
-
 include $(TOPDIR)/mk/package.mk
 
 $(eval $(call PKG_template,XF86_INPUT_KEYBOARD,${PKG_NAME},$(PKG_VERSION)-$(PKG_RELEASE),${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))

+ 0 - 2
package/xf86-input-mouse/Makefile

@@ -13,8 +13,6 @@ PKG_DEPENDS:=		xorg-server
 PKG_BUILDDEP:=		xorg-server
 PKG_SITES:=		${MASTER_SITE_XORG}
 
-PKG_TARGET_DEPENDS:=	alix1c lemote ibmx40 shuttle
-
 include $(TOPDIR)/mk/package.mk
 
 $(eval $(call PKG_template,XF86_INPUT_MOUSE,${PKG_NAME},$(PKG_VERSION)-$(PKG_RELEASE),${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))

+ 1 - 1
package/xf86-video-fbdev/Makefile

@@ -13,7 +13,7 @@ PKG_DEPENDS:=		xorg-server
 PKG_BUILDDEP:=		xorg-server
 PKG_SITES:=		http://xorg.freedesktop.org/releases/individual/driver/
 
-PKG_TARGET_DEPENDS:=	alix1c lemote ibmx40
+PKG_CFLINE_XF86_VIDEO_FBDEV:=	depends on ADK_TARGET_WITH_VGA
 
 include $(TOPDIR)/mk/package.mk
 

+ 1 - 1
package/xf86-video-geode/Makefile

@@ -13,7 +13,7 @@ PKG_DEPENDS:=		xorg-server
 PKG_BUILDDEP:=		xorg-server
 PKG_SITES:=		http://xorg.freedesktop.org/releases/individual/driver/
 
-PKG_TARGET_DEPENDS:=	alix1c
+PKG_CFLINE_XF86_VIDEO_GEODE:=	depends on ADK_TARGET_WITH_VGA
 
 include $(TOPDIR)/mk/package.mk
 

+ 36 - 170
target/Config.in

@@ -59,13 +59,7 @@ config ADK_LINUX_64
 config ADK_NATIVE
 	tristate
 
-config ADK_alix1c
-	tristate
-
-config ADK_alix2d
-	tristate
-
-config ADK_alix2d13
+config ADK_alix
 	tristate
 
 config ADK_wrap
@@ -169,9 +163,7 @@ config ADK_x86
 
 config ADK_TARGET
 	string
-	default "alix1c"  if ADK_alix1c
-	default "alix2d"  if ADK_alix2d
-	default "alix2d13"  if ADK_alix2d13
+	default "alix"  if ADK_alix
 	default "wrap"  if ADK_wrap
 	default "brcm"  if ADK_brcm
 	default "toolchain-arm"  if ADK_arm_toolchain
@@ -232,17 +224,19 @@ default ADK_LINUX_NATIVE
 config ADK_LINUX_NATIVE
 	bool "Native platform"
 	select ADK_NATIVE
-	depends on ADK_HOST_LINUX
 	select ADK_TARGET_WITH_VGA
 	select ADK_TARGET_WITH_USB
+	depends on ADK_HOST_LINUX
 	help
 	  Make a native build. Use host tools.
 	  No toolchain will be created.
 
-config ADK_LINUX_ALIX
-	bool "ALIX and WRAP boards"
+config ADK_LINUX_X86_ALIX
+	bool "ALIX boards"
+	select ADK_x86
+	select ADK_alix
 	help
-	  Support for Alix and Wrap boards.
+	  Support for Alix boards.
 	  http://www.pcengines.ch
 
 config ADK_LINUX_ARM_FOXG20
@@ -295,17 +289,6 @@ config ADK_LINUX_MIKROTIK
 	  http://www.mikrotik.com
 	  http://www.routerboards.com
 
-#config ADK_LINUX_MIPS_WAG54G
-#	bool "Linksys WAG54G"
-#	select ADK_KERNEL_NETDEVICES
-#	select ADK_KERNEL_NET_PCI
-#	select ADK_KERNEL_NET_ETHERNET
-#	select ADK_KERNEL_MII
-#	select ADK_wag54g
-#	help
-#	  Linksys WAG54G DSL router with Wireless.
-#	  (Texas Instruments AR7 platform)
-
 config ADK_LINUX_MIPS_AG241
 	bool "Linksys AG241v2"
 	select ADK_KERNEL_NETDEVICES
@@ -402,6 +385,26 @@ config ADK_LINUX_X86_64_SHUTTLE
 	  Support for a nice and fast shuttle xpc with AMD quad-core CPU.
 	  Status: development
 
+config ADK_LINUX_X86_WRAP
+	bool "PC Engines WRAP"
+	select ADK_x86
+	select ADK_wrap
+	select ADK_KERNEL_SCSI
+	select ADK_KERNEL_ATA
+	select ADK_KERNEL_BLK_DEV_SD
+	select ADK_KERNEL_EXT2_FS
+	select ADK_KERNEL_NET_PCI
+	select ADK_KERNEL_NETDEVICES
+	select ADK_KERNEL_NET_ETHERNET
+	select ADK_KERNEL_MII
+	select ADK_KERNEL_CRC32
+	select ADK_TARGET_WITH_WATCHDOG
+	select BUSYBOX_HWCLOCK
+	help
+	  End of life, but I still have one board.
+	  http://www.pcengines.ch/
+	  Status: stable
+
 endchoice
 
 choice
@@ -502,26 +505,6 @@ config ADK_LINUX_X86_64_TOOLCHAIN
 
 endchoice
 
-
-#choice 
-#prompt "Target Optimization"
-#depends on ADK_LINUX_ARMEL_TOOLCHAIN || ADK_LINUX_ARM_TOOLCHAIN
-#
-#config ADK_LINUX_ARM_V5TE
-#	bool "armv5te"
-#	help
-#
-#config ADK_LINUX_ARM_V4T
-#	bool "armv4t"
-#	help
-#
-#endchoice
-
-#config ADK_TARGET_ARCH_OPTIMIZATION
-#	string
-#	default "armv5te" if ADK_LINUX_ARM_V5TE
-#	default "armv4t" if ADK_LINUX_ARM_V4T
-
 choice
 prompt "Architecture"
 depends on ADK_LINUX_QEMU
@@ -608,104 +591,7 @@ config ADK_LINUX_X86_64_QEMU
 
 endchoice
 
-choice
-prompt "Alix/Wrap model"
-default ADK_LINUX_X86_ALIX1C
-depends on ADK_LINUX_ALIX
-
-config ADK_LINUX_X86_ALIX1C
-	bool "PC Engines Alix1C"
-	select ADK_x86
-	select ADK_alix1c
-	select ADK_KERNEL_NLS
-	select ADK_KERNEL_SCSI
-	select ADK_KERNEL_ATA
-	select ADK_KERNEL_BLK_DEV_SD
-	select ADK_KERNEL_EXT2_FS
-	select ADK_KERNEL_NET_PCI
-	select ADK_KERNEL_NETDEVICES
-	select ADK_KERNEL_NET_ETHERNET
-	select ADK_KERNEL_MII
-	select BUSYBOX_HWCLOCK
-	select ADK_TARGET_WITH_USB
-	select ADK_TARGET_WITH_VGA
-	select ADK_TARGET_WITH_MINIPCI
-	select ADK_TARGET_WITH_INPUT
-	select ADK_PACKAGE_KMOD_USB_CONTROLLER
-	help
-	  Support for ALIX1C boards.
-	  http://www.pcengines.ch/
-	  Status: stable
-
-config ADK_LINUX_X86_ALIX2D
-	bool "PC Engines Alix2D"
-	select ADK_x86
-	select ADK_alix2d
-	select ADK_KERNEL_NLS
-	select ADK_KERNEL_SCSI
-	select ADK_KERNEL_ATA
-	select ADK_KERNEL_BLK_DEV_SD
-	select ADK_KERNEL_EXT2_FS
-	select ADK_KERNEL_NET_PCI
-	select ADK_KERNEL_NETDEVICES
-	select ADK_KERNEL_NET_ETHERNET
-	select ADK_KERNEL_MII
-	select BUSYBOX_HWCLOCK
-	select ADK_TARGET_WITH_USB
-	select ADK_TARGET_WITH_MINIPCI
-	select ADK_TARGET_WITH_LEDS
-	select ADK_TARGET_WITH_WATCHDOG
-	select ADK_PACKAGE_KMOD_USB_CONTROLLER
-	help
-	  Support for ALIX2D boards.
-	  http://www.pcengines.ch/
-	  Status: stable
-
-config ADK_LINUX_X86_ALIX2D13
-	bool "PC Engines Alix2D13"
-	select ADK_x86
-	select ADK_alix2d13
-	select ADK_KERNEL_NLS
-	select ADK_KERNEL_SCSI
-	select ADK_KERNEL_ATA
-	select ADK_KERNEL_BLK_DEV_SD
-	select ADK_KERNEL_EXT2_FS
-	select ADK_KERNEL_NET_PCI
-	select ADK_KERNEL_NETDEVICES
-	select ADK_KERNEL_NEW_LEDS
-	select ADK_KERNEL_NET_ETHERNET
-	select ADK_KERNEL_MII
-	select BUSYBOX_HWCLOCK
-	select ADK_TARGET_WITH_USB
-	select ADK_TARGET_WITH_MINIPCI
-	select ADK_TARGET_WITH_LEDS
-	select ADK_TARGET_WITH_WATCHDOG
-	select ADK_PACKAGE_KMOD_USB_CONTROLLER
-	help
-	  Support for ALIX2D13 boards.
-	  http://www.pcengines.ch/
-	  Status: stable
-
-config ADK_LINUX_X86_WRAP
-	bool "PC Engines WRAP"
-	select ADK_wrap
-	select ADK_KERNEL_SCSI
-	select ADK_KERNEL_ATA
-	select ADK_KERNEL_BLK_DEV_SD
-	select ADK_KERNEL_EXT2_FS
-	select ADK_KERNEL_NET_PCI
-	select ADK_KERNEL_NETDEVICES
-	select ADK_KERNEL_NET_ETHERNET
-	select ADK_KERNEL_MII
-	select ADK_KERNEL_CRC32
-	select ADK_TARGET_WITH_WATCHDOG
-	select BUSYBOX_HWCLOCK
-	help
-	  End of life, but I still have one board.
-	  http://www.pcengines.ch/
-	  Status: stable
-
-endchoice
+source "target/Config.in.alix"
 
 choice
 prompt "Routerboard model"
@@ -789,9 +675,7 @@ config ADK_TARGET_LIB_EGLIBC
 	select ADK_eglibc
 	depends on ADK_LINUX_QEMU || \
 		ADK_LINUX_X86_IBMX40 || \
-		ADK_LINUX_X86_ALIX1C || \
-		ADK_LINUX_X86_ALIX2D || \
-		ADK_LINUX_X86_ALIX2D13 || \
+		ADK_LINUX_X86_ALIX || \
 		ADK_LINUX_X86_WRAP || \
 		ADK_LINUX_MIPS_RB4XX || \
 		ADK_LINUX_MIPS_RB532 || \
@@ -807,9 +691,7 @@ config ADK_TARGET_LIB_GLIBC
 	select ADK_glibc
 	depends on ADK_LINUX_QEMU || \
 		ADK_LINUX_X86_IBMX40 || \
-		ADK_LINUX_X86_ALIX1C || \
-		ADK_LINUX_X86_ALIX2D || \
-		ADK_LINUX_X86_ALIX2D13 || \
+		ADK_LINUX_X86_ALIX || \
 		ADK_LINUX_X86_WRAP || \
 		ADK_LINUX_MIPS_RB532 || \
 		ADK_LINUX_MIPS_RB4XX || \
@@ -837,7 +719,7 @@ prompt "Target Firmware type"
 config ADK_TARGET_ROOTFS_INITRAMFS
 	bool "initramfs filesystem"
 	depends on \
-		ADK_LINUX_ALIX || \
+		ADK_LINUX_X86_ALIX || \
 		ADK_LINUX_QEMU || \
 		ADK_LINUX_X86_64_SHUTTLE || \
 		ADK_LINUX_NATIVE || \
@@ -851,7 +733,7 @@ config ADK_TARGET_ROOTFS_INITRAMFS_PIGGYBACK
 	bool "initramfs filesystem included into kernel image"
 	select ADK_LINUX_INITRAMFS_BUILTIN
 	depends on \
-		ADK_LINUX_ALIX || \
+		ADK_LINUX_X86_ALIX || \
 		ADK_LINUX_QEMU || \
 		ADK_LINUX_X86_IBMX40 || \
 		ADK_LINUX_X86_64_SHUTTLE || \
@@ -866,8 +748,7 @@ config ADK_TARGET_ROOTFS_SQUASHFS
 	select ADK_KERNEL_SQUASHFS
 	depends on \
 		ADK_LINUX_CRIS_FOXBOARD || \
-		ADK_LINUX_MIPS_AG241 || \
-		ADK_LINUX_MIPS_WAG54G
+		ADK_LINUX_MIPS_AG241
 	help
 	  highly compressed read-only filesystem for flash.
 
@@ -887,14 +768,11 @@ config ADK_TARGET_ROOTFS_NFSROOT
 	depends on \
 		ADK_LINUX_CRIS_FOXBOARD || \
 		ADK_LINUX_ARM_FOXG20 || \
-		ADK_LINUX_X86_ALIX1C || \
-		ADK_LINUX_X86_ALIX2D || \
-		ADK_LINUX_X86_ALIX2D13 || \
+		ADK_LINUX_X86_ALIX || \
 		ADK_LINUX_X86_WRAP || \
 		ADK_LINUX_MIPS_BRCM || \
 		ADK_LINUX_MIPS_RB532 || \
 		ADK_LINUX_MIPS_RB4XX || \
-		ADK_LINUX_MIPS_WAG54G || \
 		ADK_LINUX_MIPS_AG241 || \
 		ADK_LINUX_MIPS64_LEMOTE
 	select ADK_KERNEL_SUNRPC
@@ -923,10 +801,7 @@ config ADK_TARGET_ROOTFS_USB
 
 config ADK_TARGET_ROOTFS_EXT2_BLOCK
 	bool "read-write filesystem for block devices with ext2"
-	depends on \
-		ADK_LINUX_X86_ALIX1C || \
-		ADK_LINUX_X86_ALIX2D || \
-		ADK_LINUX_X86_ALIX2D13 || \
+	depends on ADK_LINUX_X86_ALIX || \
 		ADK_LINUX_X86_WRAP || \
 		ADK_LINUX_ARM_FOXG20 || \
 		ADK_LINUX_MIPS_RB532
@@ -1113,7 +988,6 @@ config ADK_PACKAGE_SUFFIX
 	string
 	default "ipk" if ADK_TARGET_PACKAGE_IPKG
 	default "tar.gz" if ADK_TARGET_PACKAGE_TGZ
-#	default "rpm" if ADK_TARGET_PACKAGE_RPM
 	help
 
 choice
@@ -1136,13 +1010,5 @@ config ADK_TARGET_PACKAGE_TGZ
 	  Pre- and post install scripts will be executed in the target
 	  directory. There will be no package manager installed onto the target.
 	  
-
-#config ADK_TARGET_PACKAGE_RPM
-#	boolean
-#	prompt "rpm package format"
-#	help
-#	  Create rpm packages and use rpm package management on the
-#         target. WARNING: NOT YET IMPLEMENTED
-
 endchoice
 endmenu

+ 64 - 0
target/Config.in.alix

@@ -0,0 +1,64 @@
+choice
+depends on ADK_LINUX_X86_ALIX
+prompt "Hardware model"
+
+config ADK_HARDWARE_ALIX1C
+	bool "ALIX.1C"
+	select ADK_TARGET_WITH_USB
+	select ADK_TARGET_WITH_VGA
+	select ADK_TARGET_WITH_INPUT
+	select ADK_TARGET_WITH_RTC
+	select ADK_TARGET_WITH_HDD
+	select ADK_KERNEL_NLS
+	select ADK_KERNEL_EXT2_FS
+	select ADK_KERNEL_SCSI
+	select ADK_KERNEL_ATA
+	select ADK_KERNEL_BLK_DEV_SD
+	select ADK_KERNEL_INPUT_KEYBOARD
+	select ADK_KERNEL_NETDEVICES
+	select ADK_KERNEL_NET_PCI
+	select ADK_KERNEL_NET_ETHERNET
+	select ADK_KERNEL_MII
+	help
+         Hardware profile for ALIX.1C
+
+config ADK_HARDWARE_ALIX2D2
+	bool "ALIX.2D2"
+	select ADK_TARGET_WITH_USB
+	select ADK_TARGET_WITH_HDD
+	select ADK_TARGET_WITH_WATCHDOG
+	select ADK_TARGET_WITH_LEDS
+	select ADK_KERNEL_NLS
+	select ADK_KERNEL_EXT2_FS
+	select ADK_KERNEL_SCSI
+	select ADK_KERNEL_ATA
+	select ADK_KERNEL_BLK_DEV_SD
+	select ADK_KERNEL_NETDEVICES
+	select ADK_KERNEL_NET_PCI
+	select ADK_KERNEL_NET_ETHERNET
+	select ADK_KERNEL_MII
+	select ADK_KERNEL_NEW_LEDS
+	help
+         Hardware profile for ALIX.2D2
+
+config ADK_HARDWARE_ALIX2D13
+	bool "ALIX.2D13"
+	select ADK_TARGET_WITH_USB
+	select ADK_TARGET_WITH_RTC
+	select ADK_TARGET_WITH_HDD
+	select ADK_TARGET_WITH_WATCHDOG
+	select ADK_TARGET_WITH_LEDS
+	select ADK_KERNEL_NLS
+	select ADK_KERNEL_EXT2_FS
+	select ADK_KERNEL_SCSI
+	select ADK_KERNEL_ATA
+	select ADK_KERNEL_BLK_DEV_SD
+	select ADK_KERNEL_NETDEVICES
+	select ADK_KERNEL_NET_PCI
+	select ADK_KERNEL_NET_ETHERNET
+	select ADK_KERNEL_MII
+	select ADK_KERNEL_NEW_LEDS
+	help
+         Hardware profile for ALIX.2D13
+
+endchoice

+ 0 - 0
target/alix1c/Makefile → target/alix/Makefile


+ 0 - 0
target/alix1c/files/etc/fstab → target/alix/files/etc/fstab


+ 0 - 0
target/alix1c/files/etc/inittab → target/alix/files/etc/inittab


+ 0 - 0
target/alix1c/files/etc/mdev.conf → target/alix/files/etc/mdev.conf


+ 0 - 0
target/alix1c/files/etc/network/interfaces → target/alix/files/etc/network/interfaces


+ 0 - 0
target/alix1c/files/etc/tmpfs → target/alix/files/etc/tmpfs


+ 145 - 135
target/alix2d13/kernel.config → target/alix/kernel.config

@@ -1,15 +1,15 @@
 #
 # Automatically generated make config: don't edit
-# Linux kernel version: 2.6.34
-# Mon Jul  5 20:11:20 2010
+# Linux kernel version: 2.6.36
+# Thu Nov 11 22:33:23 2010
 #
 # CONFIG_64BIT is not set
 CONFIG_X86_32=y
 # CONFIG_X86_64 is not set
 CONFIG_X86=y
+CONFIG_INSTRUCTION_DECODER=y
 CONFIG_OUTPUT_FORMAT="elf32-i386"
 CONFIG_ARCH_DEFCONFIG="arch/x86/configs/i386_defconfig"
-CONFIG_GENERIC_TIME=y
 CONFIG_GENERIC_CMOS_UPDATE=y
 CONFIG_CLOCKSOURCE_WATCHDOG=y
 CONFIG_GENERIC_CLOCKEVENTS=y
@@ -19,8 +19,10 @@ CONFIG_HAVE_LATENCYTOP_SUPPORT=y
 CONFIG_MMU=y
 CONFIG_ZONE_DMA=y
 # CONFIG_NEED_DMA_MAP_STATE is not set
+CONFIG_NEED_SG_DMA_LENGTH=y
 CONFIG_GENERIC_ISA_DMA=y
 CONFIG_GENERIC_IOMAP=y
+CONFIG_GENERIC_BUG=y
 CONFIG_GENERIC_HWEIGHT=y
 CONFIG_GENERIC_GPIO=y
 CONFIG_ARCH_MAY_HAVE_PC_FDC=y
@@ -48,6 +50,7 @@ CONFIG_GENERIC_HARDIRQS=y
 CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
 CONFIG_GENERIC_IRQ_PROBE=y
 CONFIG_X86_32_LAZY_GS=y
+CONFIG_ARCH_HWEIGHT_CFLAGS="-fcall-saved-ecx -fcall-saved-edx"
 CONFIG_KTIME_SCALAR=y
 CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
 CONFIG_CONSTRUCTORS=y
@@ -58,6 +61,7 @@ CONFIG_CONSTRUCTORS=y
 CONFIG_EXPERIMENTAL=y
 CONFIG_BROKEN_ON_SMP=y
 CONFIG_INIT_ENV_ARG_LIMIT=32
+CONFIG_CROSS_COMPILE=""
 CONFIG_LOCALVERSION=""
 # CONFIG_LOCALVERSION_AUTO is not set
 CONFIG_HAVE_KERNEL_GZIP=y
@@ -80,7 +84,6 @@ CONFIG_SYSVIPC_SYSCTL=y
 # RCU Subsystem
 #
 CONFIG_TREE_RCU=y
-# CONFIG_TREE_PREEMPT_RCU is not set
 # CONFIG_TINY_RCU is not set
 # CONFIG_RCU_TRACE is not set
 CONFIG_RCU_FANOUT=32
@@ -103,10 +106,10 @@ CONFIG_SYSCTL_SYSCALL=y
 # CONFIG_KALLSYMS is not set
 CONFIG_HOTPLUG=y
 CONFIG_PRINTK=y
-# CONFIG_BUG is not set
+CONFIG_BUG=y
 # CONFIG_ELF_CORE is not set
 # CONFIG_PCSPKR_PLATFORM is not set
-# CONFIG_BASE_FULL is not set
+CONFIG_BASE_FULL=y
 CONFIG_FUTEX=y
 CONFIG_EPOLL=y
 CONFIG_SIGNALFD=y
@@ -129,6 +132,7 @@ CONFIG_SLAB=y
 # CONFIG_SLOB is not set
 # CONFIG_PROFILING is not set
 CONFIG_HAVE_OPROFILE=y
+# CONFIG_KPROBES is not set
 CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS=y
 CONFIG_HAVE_IOREMAP_PROT=y
 CONFIG_HAVE_KPROBES=y
@@ -139,20 +143,21 @@ CONFIG_HAVE_DMA_ATTRS=y
 CONFIG_HAVE_REGS_AND_STACK_ACCESS_API=y
 CONFIG_HAVE_DMA_API_DEBUG=y
 CONFIG_HAVE_HW_BREAKPOINT=y
+CONFIG_HAVE_MIXED_BREAKPOINTS_REGS=y
 CONFIG_HAVE_USER_RETURN_NOTIFIER=y
+CONFIG_HAVE_PERF_EVENTS_NMI=y
 
 #
 # GCOV-based kernel profiling
 #
-# CONFIG_SLOW_WORK is not set
 CONFIG_HAVE_GENERIC_DMA_COHERENT=y
 CONFIG_SLABINFO=y
 CONFIG_RT_MUTEXES=y
-CONFIG_BASE_SMALL=1
+CONFIG_BASE_SMALL=0
 CONFIG_MODULES=y
 # CONFIG_MODULE_FORCE_LOAD is not set
 CONFIG_MODULE_UNLOAD=y
-# CONFIG_MODULE_FORCE_UNLOAD is not set
+CONFIG_MODULE_FORCE_UNLOAD=y
 # CONFIG_MODVERSIONS is not set
 # CONFIG_MODULE_SRCVERSION_ALL is not set
 CONFIG_BLOCK=y
@@ -166,8 +171,6 @@ CONFIG_BLOCK=y
 CONFIG_IOSCHED_NOOP=y
 # CONFIG_IOSCHED_DEADLINE is not set
 # CONFIG_IOSCHED_CFQ is not set
-# CONFIG_DEFAULT_DEADLINE is not set
-# CONFIG_DEFAULT_CFQ is not set
 CONFIG_DEFAULT_NOOP=y
 CONFIG_DEFAULT_IOSCHED="noop"
 # CONFIG_INLINE_SPIN_TRYLOCK is not set
@@ -206,7 +209,7 @@ CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
 #
 CONFIG_TICK_ONESHOT=y
 CONFIG_NO_HZ=y
-CONFIG_HIGH_RES_TIMERS=y
+# CONFIG_HIGH_RES_TIMERS is not set
 CONFIG_GENERIC_CLOCKEVENTS_BUILD=y
 # CONFIG_SMP is not set
 # CONFIG_X86_EXTENDED_PLATFORM is not set
@@ -236,10 +239,8 @@ CONFIG_MGEODE_LX=y
 # CONFIG_MCYRIXIII is not set
 # CONFIG_MVIAC3_2 is not set
 # CONFIG_MVIAC7 is not set
-# CONFIG_MPSC is not set
 # CONFIG_MCORE2 is not set
 # CONFIG_MATOM is not set
-# CONFIG_GENERIC_CPU is not set
 # CONFIG_X86_GENERIC is not set
 CONFIG_X86_CPU=y
 CONFIG_X86_INTERNODE_CACHE_SHIFT=5
@@ -263,7 +264,6 @@ CONFIG_CPU_SUP_AMD=y
 # CONFIG_CPU_SUP_CENTAUR is not set
 # CONFIG_CPU_SUP_TRANSMETA_32 is not set
 # CONFIG_CPU_SUP_UMC_32 is not set
-# CONFIG_X86_DS is not set
 # CONFIG_HPET_TIMER is not set
 # CONFIG_DMI is not set
 # CONFIG_IOMMU_HELPER is not set
@@ -274,7 +274,7 @@ CONFIG_PREEMPT_NONE=y
 # CONFIG_PREEMPT is not set
 # CONFIG_X86_UP_APIC is not set
 # CONFIG_X86_MCE is not set
-# CONFIG_VM86 is not set
+CONFIG_VM86=y
 # CONFIG_TOSHIBA is not set
 # CONFIG_I8K is not set
 # CONFIG_X86_REBOOTFIXUPS is not set
@@ -298,7 +298,6 @@ CONFIG_ARCH_SELECT_MEMORY_MODEL=y
 CONFIG_ILLEGAL_POINTER_VALUE=0
 CONFIG_SELECT_MEMORY_MODEL=y
 CONFIG_FLATMEM_MANUAL=y
-# CONFIG_DISCONTIGMEM_MANUAL is not set
 # CONFIG_SPARSEMEM_MANUAL is not set
 CONFIG_FLATMEM=y
 CONFIG_FLAT_NODE_MEM_MAP=y
@@ -315,7 +314,9 @@ CONFIG_X86_CHECK_BIOS_CORRUPTION=y
 # CONFIG_X86_BOOTPARAM_MEMORY_CORRUPTION_CHECK is not set
 CONFIG_X86_RESERVE_LOW_64K=y
 # CONFIG_MATH_EMULATION is not set
-# CONFIG_MTRR is not set
+CONFIG_MTRR=y
+# CONFIG_MTRR_SANITIZER is not set
+# CONFIG_X86_PAT is not set
 # CONFIG_SECCOMP is not set
 # CONFIG_CC_STACKPROTECTOR is not set
 # CONFIG_HZ_100 is not set
@@ -323,14 +324,14 @@ CONFIG_HZ_250=y
 # CONFIG_HZ_300 is not set
 # CONFIG_HZ_1000 is not set
 CONFIG_HZ=250
-CONFIG_SCHED_HRTICK=y
+# CONFIG_SCHED_HRTICK is not set
 # CONFIG_KEXEC is not set
 CONFIG_PHYSICAL_START=0x100000
 # CONFIG_RELOCATABLE is not set
 CONFIG_PHYSICAL_ALIGN=0x100000
 # CONFIG_COMPAT_VDSO is not set
 CONFIG_CMDLINE_BOOL=y
-CONFIG_CMDLINE="console=ttyS0,115200"
+CONFIG_CMDLINE="console=tty0 console=ttyS0,115200n8 irqpoll geodewdt.nowayout=1"
 # CONFIG_CMDLINE_OVERRIDE is not set
 
 #
@@ -352,11 +353,11 @@ CONFIG_PCI=y
 # CONFIG_PCI_GOBIOS is not set
 # CONFIG_PCI_GOMMCONFIG is not set
 # CONFIG_PCI_GODIRECT is not set
-# CONFIG_PCI_GOOLPC is not set
 CONFIG_PCI_GOANY=y
 CONFIG_PCI_BIOS=y
 CONFIG_PCI_DIRECT=y
 CONFIG_PCI_DOMAINS=y
+# CONFIG_PCI_CNB20LE_QUIRK is not set
 # CONFIG_PCIEPORTBUS is not set
 # CONFIG_ARCH_SUPPORTS_MSI is not set
 # CONFIG_PCI_STUB is not set
@@ -366,6 +367,7 @@ CONFIG_ISA_DMA_API=y
 # CONFIG_MCA is not set
 # CONFIG_SCx200 is not set
 # CONFIG_OLPC is not set
+# CONFIG_OLPC_OPENFIRMWARE is not set
 CONFIG_K8_NB=y
 # CONFIG_PCCARD is not set
 # CONFIG_HOTPLUG_PCI is not set
@@ -411,12 +413,14 @@ CONFIG_DEFAULT_TCP_CONG="cubic"
 # CONFIG_TCP_MD5SIG is not set
 # CONFIG_IPV6 is not set
 # CONFIG_NETWORK_SECMARK is not set
+# CONFIG_NETWORK_PHY_TIMESTAMPING is not set
 # CONFIG_NETFILTER is not set
 # CONFIG_IP_DCCP is not set
 # CONFIG_IP_SCTP is not set
 # CONFIG_RDS is not set
 # CONFIG_TIPC is not set
 # CONFIG_ATM is not set
+# CONFIG_L2TP is not set
 # CONFIG_BRIDGE is not set
 # CONFIG_NET_DSA is not set
 # CONFIG_VLAN_8021Q is not set
@@ -449,9 +453,14 @@ CONFIG_WIRELESS=y
 #
 # CFG80211 needs to be enabled for MAC80211
 #
+
+#
+# Some wireless drivers require a rate control algorithm
+#
 # CONFIG_WIMAX is not set
 # CONFIG_RFKILL is not set
 # CONFIG_NET_9P is not set
+# CONFIG_CAIF is not set
 
 #
 # Device Drivers
@@ -488,23 +497,7 @@ CONFIG_BLK_DEV=y
 # CONFIG_CDROM_PKTCDVD is not set
 # CONFIG_ATA_OVER_ETH is not set
 # CONFIG_BLK_DEV_HD is not set
-CONFIG_MISC_DEVICES=y
-# CONFIG_PHANTOM is not set
-# CONFIG_SGI_IOC4 is not set
-# CONFIG_TIFM_CORE is not set
-# CONFIG_ENCLOSURE_SERVICES is not set
-CONFIG_CS5535_MFGPT=y
-CONFIG_CS5535_MFGPT_DEFAULT_IRQ=7
-CONFIG_CS5535_CLOCK_EVENT_SRC=y
-# CONFIG_HP_ILO is not set
-# CONFIG_VMWARE_BALLOON is not set
-# CONFIG_C2PORT is not set
-
-#
-# EEPROM support
-#
-# CONFIG_EEPROM_93CX6 is not set
-# CONFIG_CB710_CORE is not set
+# CONFIG_MISC_DEVICES is not set
 CONFIG_HAVE_IDE=y
 # CONFIG_IDE is not set
 
@@ -547,31 +540,48 @@ CONFIG_SCSI_WAIT_SCAN=m
 # CONFIG_SCSI_OSD_INITIATOR is not set
 CONFIG_ATA=y
 # CONFIG_ATA_NONSTANDARD is not set
-CONFIG_ATA_VERBOSE_ERROR=y
+# CONFIG_ATA_VERBOSE_ERROR is not set
 # CONFIG_SATA_PMP is not set
+
+#
+# Controllers with non-SFF native interface
+#
 # CONFIG_SATA_AHCI is not set
+# CONFIG_SATA_AHCI_PLATFORM is not set
+# CONFIG_SATA_INIC162X is not set
 # CONFIG_SATA_SIL24 is not set
 CONFIG_ATA_SFF=y
-# CONFIG_SATA_SVW is not set
+
+#
+# SFF controllers with custom DMA interface
+#
+# CONFIG_PDC_ADMA is not set
+# CONFIG_SATA_QSTOR is not set
+# CONFIG_SATA_SX4 is not set
+CONFIG_ATA_BMDMA=y
+
+#
+# SATA SFF controllers with BMDMA
+#
 # CONFIG_ATA_PIIX is not set
 # CONFIG_SATA_MV is not set
 # CONFIG_SATA_NV is not set
-# CONFIG_PDC_ADMA is not set
-# CONFIG_SATA_QSTOR is not set
 # CONFIG_SATA_PROMISE is not set
-# CONFIG_SATA_SX4 is not set
 # CONFIG_SATA_SIL is not set
 # CONFIG_SATA_SIS is not set
+# CONFIG_SATA_SVW is not set
 # CONFIG_SATA_ULI is not set
 # CONFIG_SATA_VIA is not set
 # CONFIG_SATA_VITESSE is not set
-# CONFIG_SATA_INIC162X is not set
+
+#
+# PATA SFF controllers with BMDMA
+#
 # CONFIG_PATA_ALI is not set
 CONFIG_PATA_AMD=y
 # CONFIG_PATA_ARTOP is not set
-# CONFIG_PATA_ATP867X is not set
 # CONFIG_PATA_ATIIXP is not set
-# CONFIG_PATA_CMD640_PCI is not set
+# CONFIG_PATA_ATP867X is not set
 # CONFIG_PATA_CMD64X is not set
 # CONFIG_PATA_CS5520 is not set
 # CONFIG_PATA_CS5530 is not set
@@ -579,39 +589,48 @@ CONFIG_PATA_AMD=y
 # CONFIG_PATA_CS5536 is not set
 # CONFIG_PATA_CYPRESS is not set
 # CONFIG_PATA_EFAR is not set
-# CONFIG_ATA_GENERIC is not set
 # CONFIG_PATA_HPT366 is not set
 # CONFIG_PATA_HPT37X is not set
 # CONFIG_PATA_HPT3X2N is not set
 # CONFIG_PATA_HPT3X3 is not set
-# CONFIG_PATA_IT821X is not set
 # CONFIG_PATA_IT8213 is not set
+# CONFIG_PATA_IT821X is not set
 # CONFIG_PATA_JMICRON is not set
-# CONFIG_PATA_LEGACY is not set
-# CONFIG_PATA_TRIFLEX is not set
 # CONFIG_PATA_MARVELL is not set
-# CONFIG_PATA_MPIIX is not set
-# CONFIG_PATA_OLDPIIX is not set
 # CONFIG_PATA_NETCELL is not set
 # CONFIG_PATA_NINJA32 is not set
-# CONFIG_PATA_NS87410 is not set
 # CONFIG_PATA_NS87415 is not set
-# CONFIG_PATA_OPTI is not set
+# CONFIG_PATA_OLDPIIX is not set
 # CONFIG_PATA_OPTIDMA is not set
 # CONFIG_PATA_PDC2027X is not set
 # CONFIG_PATA_PDC_OLD is not set
 # CONFIG_PATA_RADISYS is not set
 # CONFIG_PATA_RDC is not set
-# CONFIG_PATA_RZ1000 is not set
 # CONFIG_PATA_SC1200 is not set
+# CONFIG_PATA_SCH is not set
 # CONFIG_PATA_SERVERWORKS is not set
 # CONFIG_PATA_SIL680 is not set
 # CONFIG_PATA_SIS is not set
 # CONFIG_PATA_TOSHIBA is not set
+# CONFIG_PATA_TRIFLEX is not set
 # CONFIG_PATA_VIA is not set
 # CONFIG_PATA_WINBOND is not set
+
+#
+# PIO-only SFF controllers
+#
+# CONFIG_PATA_CMD640_PCI is not set
+# CONFIG_PATA_MPIIX is not set
+# CONFIG_PATA_NS87410 is not set
+# CONFIG_PATA_OPTI is not set
 # CONFIG_PATA_PLATFORM is not set
-# CONFIG_PATA_SCH is not set
+# CONFIG_PATA_RZ1000 is not set
+
+#
+# Generic fallback / legacy drivers
+#
+# CONFIG_ATA_GENERIC is not set
+# CONFIG_PATA_LEGACY is not set
 # CONFIG_MD is not set
 # CONFIG_FUSION is not set
 
@@ -628,6 +647,7 @@ CONFIG_PATA_AMD=y
 #
 # CONFIG_FIREWIRE is not set
 # CONFIG_IEEE1394 is not set
+# CONFIG_FIREWIRE_NOSY is not set
 # CONFIG_I2O is not set
 # CONFIG_MACINTOSH_DRIVERS is not set
 CONFIG_NETDEVICES=y
@@ -695,7 +715,6 @@ CONFIG_NET_PCI=y
 # CONFIG_SMSC9420 is not set
 # CONFIG_SUNDANCE is not set
 # CONFIG_TLAN is not set
-# CONFIG_KS8842 is not set
 # CONFIG_KS8851_MLL is not set
 CONFIG_VIA_RHINE=y
 CONFIG_VIA_RHINE_MMIO=y
@@ -714,6 +733,10 @@ CONFIG_WLAN=y
 # Enable WiMAX (Networking options) to see the WiMAX drivers
 #
 # CONFIG_WAN is not set
+
+#
+# CAIF transport drivers
+#
 # CONFIG_FDDI is not set
 # CONFIG_HIPPI is not set
 # CONFIG_PPP is not set
@@ -729,7 +752,28 @@ CONFIG_WLAN=y
 #
 # Input device support
 #
-# CONFIG_INPUT is not set
+CONFIG_INPUT=y
+# CONFIG_INPUT_FF_MEMLESS is not set
+# CONFIG_INPUT_POLLDEV is not set
+# CONFIG_INPUT_SPARSEKMAP is not set
+
+#
+# Userland interfaces
+#
+# CONFIG_INPUT_MOUSEDEV is not set
+# CONFIG_INPUT_JOYDEV is not set
+# CONFIG_INPUT_EVDEV is not set
+# CONFIG_INPUT_EVBUG is not set
+
+#
+# Input Device Drivers
+#
+# CONFIG_INPUT_KEYBOARD is not set
+# CONFIG_INPUT_MOUSE is not set
+# CONFIG_INPUT_JOYSTICK is not set
+# CONFIG_INPUT_TABLET is not set
+# CONFIG_INPUT_TOUCHSCREEN is not set
+# CONFIG_INPUT_MISC is not set
 
 #
 # Hardware I/O ports
@@ -740,9 +784,14 @@ CONFIG_WLAN=y
 #
 # Character devices
 #
-# CONFIG_VT is not set
+CONFIG_VT=y
+# CONFIG_CONSOLE_TRANSLATIONS is not set
+CONFIG_VT_CONSOLE=y
+CONFIG_HW_CONSOLE=y
+# CONFIG_VT_HW_CONSOLE_BINDING is not set
 # CONFIG_DEVKMEM is not set
 # CONFIG_SERIAL_NONSTANDARD is not set
+# CONFIG_N_GSM is not set
 # CONFIG_NOZOMI is not set
 
 #
@@ -752,25 +801,31 @@ CONFIG_SERIAL_8250=y
 CONFIG_SERIAL_8250_CONSOLE=y
 CONFIG_FIX_EARLYCON_MEM=y
 # CONFIG_SERIAL_8250_PCI is not set
-CONFIG_SERIAL_8250_NR_UARTS=2
-CONFIG_SERIAL_8250_RUNTIME_UARTS=2
+CONFIG_SERIAL_8250_NR_UARTS=4
+CONFIG_SERIAL_8250_RUNTIME_UARTS=4
 # CONFIG_SERIAL_8250_EXTENDED is not set
 
 #
 # Non-8250 serial port support
 #
+# CONFIG_SERIAL_MFD_HSU is not set
 CONFIG_SERIAL_CORE=y
 CONFIG_SERIAL_CORE_CONSOLE=y
 # CONFIG_SERIAL_JSM is not set
 # CONFIG_SERIAL_TIMBERDALE is not set
+# CONFIG_SERIAL_ALTERA_JTAGUART is not set
+# CONFIG_SERIAL_ALTERA_UART is not set
 CONFIG_UNIX98_PTYS=y
 # CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
 # CONFIG_LEGACY_PTYS is not set
 # CONFIG_IPMI_HANDLER is not set
 # CONFIG_HW_RANDOM is not set
 # CONFIG_NVRAM is not set
+# CONFIG_RTC is not set
+# CONFIG_GEN_RTC is not set
 # CONFIG_R3964 is not set
 # CONFIG_APPLICOM is not set
+# CONFIG_SONYPI is not set
 # CONFIG_MWAVE is not set
 # CONFIG_PC8736x_GPIO is not set
 # CONFIG_NSC_GPIO is not set
@@ -780,6 +835,7 @@ CONFIG_UNIX98_PTYS=y
 # CONFIG_TCG_TPM is not set
 # CONFIG_TELCLOCK is not set
 CONFIG_DEVPORT=y
+# CONFIG_RAMOOPS is not set
 # CONFIG_I2C is not set
 # CONFIG_SPI is not set
 
@@ -789,7 +845,7 @@ CONFIG_DEVPORT=y
 # CONFIG_PPS is not set
 CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y
 CONFIG_GPIOLIB=y
-# CONFIG_GPIO_SYSFS is not set
+CONFIG_GPIO_SYSFS=y
 
 #
 # Memory mapped GPIO expanders:
@@ -807,6 +863,7 @@ CONFIG_GPIOLIB=y
 # CONFIG_GPIO_CS5535 is not set
 # CONFIG_GPIO_BT8XX is not set
 # CONFIG_GPIO_LANGWELL is not set
+# CONFIG_GPIO_RDC321X is not set
 
 #
 # SPI GPIO expanders:
@@ -815,12 +872,16 @@ CONFIG_GPIOLIB=y
 #
 # AC97 GPIO expanders:
 #
+
+#
+# MODULbus GPIO expanders:
+#
 # CONFIG_W1 is not set
 # CONFIG_POWER_SUPPLY is not set
 # CONFIG_HWMON is not set
 # CONFIG_THERMAL is not set
 CONFIG_WATCHDOG=y
-CONFIG_WATCHDOG_NOWAYOUT=y
+# CONFIG_WATCHDOG_NOWAYOUT is not set
 
 #
 # Watchdog Device Drivers
@@ -830,7 +891,7 @@ CONFIG_WATCHDOG_NOWAYOUT=y
 # CONFIG_ADVANTECH_WDT is not set
 # CONFIG_ALIM1535_WDT is not set
 # CONFIG_ALIM7101_WDT is not set
-CONFIG_GEODE_WDT=y
+# CONFIG_F71808E_WDT is not set
 # CONFIG_SC520_WDT is not set
 # CONFIG_SBC_FITPC2_WATCHDOG is not set
 # CONFIG_EUROTECH_WDT is not set
@@ -869,16 +930,7 @@ CONFIG_SSB_POSSIBLE=y
 # Sonics Silicon Backplane
 #
 # CONFIG_SSB is not set
-
-#
-# Multifunction device drivers
-#
-# CONFIG_MFD_CORE is not set
-# CONFIG_MFD_SM501 is not set
-# CONFIG_HTC_PASIC3 is not set
-# CONFIG_MFD_TMIO is not set
-# CONFIG_MFD_TIMBERDALE is not set
-# CONFIG_LPC_SCH is not set
+# CONFIG_MFD_SUPPORT is not set
 # CONFIG_REGULATOR is not set
 # CONFIG_MEDIA_SUPPORT is not set
 
@@ -897,7 +949,16 @@ CONFIG_SSB_POSSIBLE=y
 # Display device support
 #
 # CONFIG_DISPLAY_SUPPORT is not set
+
+#
+# Console display driver support
+#
+# CONFIG_VGA_CONSOLE is not set
+CONFIG_DUMMY_CONSOLE=y
 # CONFIG_SOUND is not set
+CONFIG_HID_SUPPORT=y
+# CONFIG_HID is not set
+# CONFIG_HID_PID is not set
 CONFIG_USB_SUPPORT=y
 CONFIG_USB_ARCH_HAS_HCD=y
 CONFIG_USB_ARCH_HAS_OHCI=y
@@ -921,65 +982,14 @@ CONFIG_USB_ARCH_HAS_EHCI=y
 # CONFIG_UWB is not set
 # CONFIG_MMC is not set
 # CONFIG_MEMSTICK is not set
-CONFIG_NEW_LEDS=y
-CONFIG_LEDS_CLASS=y
-
-#
-# LED drivers
-#
-CONFIG_LEDS_ALIX2=y
-# CONFIG_LEDS_GPIO is not set
-# CONFIG_LEDS_LT3593 is not set
-# CONFIG_LEDS_TRIGGERS is not set
+# CONFIG_NEW_LEDS is not set
 # CONFIG_ACCESSIBILITY is not set
 # CONFIG_INFINIBAND is not set
 # CONFIG_EDAC is not set
-CONFIG_RTC_LIB=y
-CONFIG_RTC_CLASS=y
-CONFIG_RTC_HCTOSYS=y
-CONFIG_RTC_HCTOSYS_DEVICE="rtc0"
-# CONFIG_RTC_DEBUG is not set
-
-#
-# RTC interfaces
-#
-CONFIG_RTC_INTF_SYSFS=y
-CONFIG_RTC_INTF_PROC=y
-CONFIG_RTC_INTF_DEV=y
-# CONFIG_RTC_INTF_DEV_UIE_EMUL is not set
-# CONFIG_RTC_DRV_TEST is not set
-
-#
-# SPI RTC drivers
-#
-
-#
-# Platform RTC drivers
-#
-CONFIG_RTC_DRV_CMOS=y
-# CONFIG_RTC_DRV_DS1286 is not set
-# CONFIG_RTC_DRV_DS1511 is not set
-# CONFIG_RTC_DRV_DS1553 is not set
-# CONFIG_RTC_DRV_DS1742 is not set
-# CONFIG_RTC_DRV_STK17TA8 is not set
-# CONFIG_RTC_DRV_M48T86 is not set
-# CONFIG_RTC_DRV_M48T35 is not set
-# CONFIG_RTC_DRV_M48T59 is not set
-# CONFIG_RTC_DRV_MSM6242 is not set
-# CONFIG_RTC_DRV_BQ4802 is not set
-# CONFIG_RTC_DRV_RP5C01 is not set
-# CONFIG_RTC_DRV_V3020 is not set
-
-#
-# on-CPU RTC drivers
-#
+# CONFIG_RTC_CLASS is not set
 # CONFIG_DMADEVICES is not set
 # CONFIG_AUXDISPLAY is not set
 # CONFIG_UIO is not set
-
-#
-# TI VLYNQ
-#
 # CONFIG_STAGING is not set
 # CONFIG_X86_PLATFORM_DEVICES is not set
 
@@ -1007,11 +1017,9 @@ CONFIG_EXT2_FS=y
 # CONFIG_OCFS2_FS is not set
 # CONFIG_BTRFS_FS is not set
 # CONFIG_NILFS2_FS is not set
-# CONFIG_AUFS_FS is not set
 CONFIG_FILE_LOCKING=y
 # CONFIG_FSNOTIFY is not set
 # CONFIG_DNOTIFY is not set
-# CONFIG_INOTIFY is not set
 # CONFIG_INOTIFY_USER is not set
 # CONFIG_QUOTA is not set
 # CONFIG_AUTOFS_FS is not set
@@ -1110,17 +1118,18 @@ CONFIG_PRINTK_TIME=y
 # CONFIG_ENABLE_WARN_DEPRECATED is not set
 # CONFIG_ENABLE_MUST_CHECK is not set
 CONFIG_FRAME_WARN=1024
-CONFIG_MAGIC_SYSRQ=y
+# CONFIG_MAGIC_SYSRQ is not set
 CONFIG_STRIP_ASM_SYMS=y
 # CONFIG_UNUSED_SYMBOLS is not set
 # CONFIG_DEBUG_FS is not set
 # CONFIG_HEADERS_CHECK is not set
 # CONFIG_DEBUG_KERNEL is not set
+# CONFIG_HARDLOCKUP_DETECTOR is not set
+CONFIG_DEBUG_BUGVERBOSE=y
 # CONFIG_DEBUG_MEMORY_INIT is not set
 CONFIG_ARCH_WANT_FRAME_POINTERS=y
 # CONFIG_FRAME_POINTER is not set
 # CONFIG_RCU_CPU_STALL_DETECTOR is not set
-# CONFIG_LATENCYTOP is not set
 # CONFIG_SYSCTL_SYSCALL_CHECK is not set
 CONFIG_USER_STACKTRACE_SUPPORT=y
 CONFIG_HAVE_FUNCTION_TRACER=y
@@ -1134,6 +1143,7 @@ CONFIG_TRACING_SUPPORT=y
 # CONFIG_FTRACE is not set
 # CONFIG_PROVIDE_OHCI1394_DMA_INIT is not set
 # CONFIG_DMA_API_DEBUG is not set
+# CONFIG_ATOMIC64_SELFTEST is not set
 # CONFIG_SAMPLES is not set
 CONFIG_HAVE_ARCH_KGDB=y
 CONFIG_HAVE_ARCH_KMEMCHECK=y
@@ -1161,9 +1171,6 @@ CONFIG_DEFAULT_IO_DELAY_TYPE=0
 # CONFIG_KEYS is not set
 # CONFIG_SECURITY is not set
 # CONFIG_SECURITYFS is not set
-# CONFIG_DEFAULT_SECURITY_SELINUX is not set
-# CONFIG_DEFAULT_SECURITY_SMACK is not set
-# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
 CONFIG_DEFAULT_SECURITY_DAC=y
 CONFIG_DEFAULT_SECURITY=""
 CONFIG_CRYPTO=y
@@ -1256,7 +1263,10 @@ CONFIG_CRYPTO=y
 # Random Number Generation
 #
 # CONFIG_CRYPTO_ANSI_CPRNG is not set
-# CONFIG_CRYPTO_HW is not set
+CONFIG_CRYPTO_HW=y
+# CONFIG_CRYPTO_DEV_PADLOCK is not set
+# CONFIG_CRYPTO_DEV_GEODE is not set
+# CONFIG_CRYPTO_DEV_HIFN_795X is not set
 
 #
 # OCF Configuration

+ 0 - 0
target/alix1c/target.mk → target/alix/target.mk


+ 0 - 0
target/alix1c/uclibc.config → target/alix/uclibc.config


+ 0 - 1425
target/alix1c/kernel.config

@@ -1,1425 +0,0 @@
-#
-# Automatically generated make config: don't edit
-# Linux kernel version: 2.6.36
-# Thu Nov 11 20:54:51 2010
-#
-# CONFIG_64BIT is not set
-CONFIG_X86_32=y
-# CONFIG_X86_64 is not set
-CONFIG_X86=y
-CONFIG_INSTRUCTION_DECODER=y
-CONFIG_OUTPUT_FORMAT="elf32-i386"
-CONFIG_ARCH_DEFCONFIG="arch/x86/configs/i386_defconfig"
-CONFIG_GENERIC_CMOS_UPDATE=y
-CONFIG_CLOCKSOURCE_WATCHDOG=y
-CONFIG_GENERIC_CLOCKEVENTS=y
-CONFIG_LOCKDEP_SUPPORT=y
-CONFIG_STACKTRACE_SUPPORT=y
-CONFIG_HAVE_LATENCYTOP_SUPPORT=y
-CONFIG_MMU=y
-CONFIG_ZONE_DMA=y
-# CONFIG_NEED_DMA_MAP_STATE is not set
-CONFIG_NEED_SG_DMA_LENGTH=y
-CONFIG_GENERIC_ISA_DMA=y
-CONFIG_GENERIC_IOMAP=y
-CONFIG_GENERIC_BUG=y
-CONFIG_GENERIC_HWEIGHT=y
-CONFIG_GENERIC_GPIO=y
-CONFIG_ARCH_MAY_HAVE_PC_FDC=y
-# CONFIG_RWSEM_GENERIC_SPINLOCK is not set
-CONFIG_RWSEM_XCHGADD_ALGORITHM=y
-CONFIG_ARCH_HAS_CPU_IDLE_WAIT=y
-CONFIG_GENERIC_CALIBRATE_DELAY=y
-# CONFIG_GENERIC_TIME_VSYSCALL is not set
-CONFIG_ARCH_HAS_CPU_RELAX=y
-CONFIG_ARCH_HAS_DEFAULT_IDLE=y
-CONFIG_ARCH_HAS_CACHE_LINE_SIZE=y
-CONFIG_HAVE_SETUP_PER_CPU_AREA=y
-CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK=y
-CONFIG_NEED_PER_CPU_PAGE_FIRST_CHUNK=y
-# CONFIG_HAVE_CPUMASK_OF_CPU_MAP is not set
-CONFIG_ARCH_HIBERNATION_POSSIBLE=y
-CONFIG_ARCH_SUSPEND_POSSIBLE=y
-# CONFIG_ZONE_DMA32 is not set
-CONFIG_ARCH_POPULATES_NODE_MAP=y
-# CONFIG_AUDIT_ARCH is not set
-CONFIG_ARCH_SUPPORTS_OPTIMIZED_INLINING=y
-CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
-CONFIG_HAVE_EARLY_RES=y
-CONFIG_GENERIC_HARDIRQS=y
-CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
-CONFIG_GENERIC_IRQ_PROBE=y
-CONFIG_X86_32_LAZY_GS=y
-CONFIG_ARCH_HWEIGHT_CFLAGS="-fcall-saved-ecx -fcall-saved-edx"
-CONFIG_KTIME_SCALAR=y
-CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
-CONFIG_CONSTRUCTORS=y
-
-#
-# General setup
-#
-CONFIG_EXPERIMENTAL=y
-CONFIG_BROKEN_ON_SMP=y
-CONFIG_INIT_ENV_ARG_LIMIT=32
-CONFIG_CROSS_COMPILE=""
-CONFIG_LOCALVERSION=""
-# CONFIG_LOCALVERSION_AUTO is not set
-CONFIG_HAVE_KERNEL_GZIP=y
-CONFIG_HAVE_KERNEL_BZIP2=y
-CONFIG_HAVE_KERNEL_LZMA=y
-CONFIG_HAVE_KERNEL_LZO=y
-# CONFIG_KERNEL_GZIP is not set
-# CONFIG_KERNEL_BZIP2 is not set
-CONFIG_KERNEL_LZMA=y
-# CONFIG_KERNEL_LZO is not set
-# CONFIG_SWAP is not set
-CONFIG_SYSVIPC=y
-CONFIG_SYSVIPC_SYSCTL=y
-# CONFIG_POSIX_MQUEUE is not set
-# CONFIG_BSD_PROCESS_ACCT is not set
-# CONFIG_TASKSTATS is not set
-# CONFIG_AUDIT is not set
-
-#
-# RCU Subsystem
-#
-CONFIG_TREE_RCU=y
-# CONFIG_TINY_RCU is not set
-# CONFIG_RCU_TRACE is not set
-CONFIG_RCU_FANOUT=32
-# CONFIG_RCU_FANOUT_EXACT is not set
-# CONFIG_TREE_RCU_TRACE is not set
-# CONFIG_IKCONFIG is not set
-CONFIG_LOG_BUF_SHIFT=14
-CONFIG_HAVE_UNSTABLE_SCHED_CLOCK=y
-# CONFIG_CGROUPS is not set
-# CONFIG_SYSFS_DEPRECATED_V2 is not set
-# CONFIG_RELAY is not set
-# CONFIG_NAMESPACES is not set
-# CONFIG_BLK_DEV_INITRD is not set
-CONFIG_CC_OPTIMIZE_FOR_SIZE=y
-CONFIG_SYSCTL=y
-CONFIG_ANON_INODES=y
-CONFIG_EMBEDDED=y
-CONFIG_UID16=y
-CONFIG_SYSCTL_SYSCALL=y
-# CONFIG_KALLSYMS is not set
-CONFIG_HOTPLUG=y
-CONFIG_PRINTK=y
-CONFIG_BUG=y
-# CONFIG_ELF_CORE is not set
-# CONFIG_PCSPKR_PLATFORM is not set
-CONFIG_BASE_FULL=y
-CONFIG_FUTEX=y
-CONFIG_EPOLL=y
-CONFIG_SIGNALFD=y
-CONFIG_TIMERFD=y
-CONFIG_EVENTFD=y
-CONFIG_SHMEM=y
-# CONFIG_AIO is not set
-CONFIG_HAVE_PERF_EVENTS=y
-
-#
-# Kernel Performance Events And Counters
-#
-CONFIG_PERF_EVENTS=y
-# CONFIG_PERF_COUNTERS is not set
-# CONFIG_VM_EVENT_COUNTERS is not set
-# CONFIG_PCI_QUIRKS is not set
-# CONFIG_COMPAT_BRK is not set
-CONFIG_SLAB=y
-# CONFIG_SLUB is not set
-# CONFIG_SLOB is not set
-# CONFIG_PROFILING is not set
-CONFIG_HAVE_OPROFILE=y
-# CONFIG_KPROBES is not set
-CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS=y
-CONFIG_HAVE_IOREMAP_PROT=y
-CONFIG_HAVE_KPROBES=y
-CONFIG_HAVE_KRETPROBES=y
-CONFIG_HAVE_OPTPROBES=y
-CONFIG_HAVE_ARCH_TRACEHOOK=y
-CONFIG_HAVE_DMA_ATTRS=y
-CONFIG_HAVE_REGS_AND_STACK_ACCESS_API=y
-CONFIG_HAVE_DMA_API_DEBUG=y
-CONFIG_HAVE_HW_BREAKPOINT=y
-CONFIG_HAVE_MIXED_BREAKPOINTS_REGS=y
-CONFIG_HAVE_USER_RETURN_NOTIFIER=y
-CONFIG_HAVE_PERF_EVENTS_NMI=y
-
-#
-# GCOV-based kernel profiling
-#
-CONFIG_HAVE_GENERIC_DMA_COHERENT=y
-CONFIG_SLABINFO=y
-CONFIG_RT_MUTEXES=y
-CONFIG_BASE_SMALL=0
-CONFIG_MODULES=y
-# CONFIG_MODULE_FORCE_LOAD is not set
-CONFIG_MODULE_UNLOAD=y
-CONFIG_MODULE_FORCE_UNLOAD=y
-# CONFIG_MODVERSIONS is not set
-# CONFIG_MODULE_SRCVERSION_ALL is not set
-CONFIG_BLOCK=y
-# CONFIG_LBDAF is not set
-# CONFIG_BLK_DEV_BSG is not set
-# CONFIG_BLK_DEV_INTEGRITY is not set
-
-#
-# IO Schedulers
-#
-CONFIG_IOSCHED_NOOP=y
-# CONFIG_IOSCHED_DEADLINE is not set
-# CONFIG_IOSCHED_CFQ is not set
-CONFIG_DEFAULT_NOOP=y
-CONFIG_DEFAULT_IOSCHED="noop"
-# CONFIG_INLINE_SPIN_TRYLOCK is not set
-# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
-# CONFIG_INLINE_SPIN_LOCK is not set
-# CONFIG_INLINE_SPIN_LOCK_BH is not set
-# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
-# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
-CONFIG_INLINE_SPIN_UNLOCK=y
-# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
-CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
-# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
-# CONFIG_INLINE_READ_TRYLOCK is not set
-# CONFIG_INLINE_READ_LOCK is not set
-# CONFIG_INLINE_READ_LOCK_BH is not set
-# CONFIG_INLINE_READ_LOCK_IRQ is not set
-# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
-CONFIG_INLINE_READ_UNLOCK=y
-# CONFIG_INLINE_READ_UNLOCK_BH is not set
-CONFIG_INLINE_READ_UNLOCK_IRQ=y
-# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
-# CONFIG_INLINE_WRITE_TRYLOCK is not set
-# CONFIG_INLINE_WRITE_LOCK is not set
-# CONFIG_INLINE_WRITE_LOCK_BH is not set
-# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
-# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
-CONFIG_INLINE_WRITE_UNLOCK=y
-# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
-CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
-# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
-# CONFIG_MUTEX_SPIN_ON_OWNER is not set
-# CONFIG_FREEZER is not set
-
-#
-# Processor type and features
-#
-CONFIG_TICK_ONESHOT=y
-CONFIG_NO_HZ=y
-# CONFIG_HIGH_RES_TIMERS is not set
-CONFIG_GENERIC_CLOCKEVENTS_BUILD=y
-# CONFIG_SMP is not set
-# CONFIG_X86_EXTENDED_PLATFORM is not set
-CONFIG_SCHED_OMIT_FRAME_POINTER=y
-# CONFIG_PARAVIRT_GUEST is not set
-CONFIG_NO_BOOTMEM=y
-# CONFIG_MEMTEST is not set
-# CONFIG_M386 is not set
-# CONFIG_M486 is not set
-# CONFIG_M586 is not set
-# CONFIG_M586TSC is not set
-# CONFIG_M586MMX is not set
-# CONFIG_M686 is not set
-# CONFIG_MPENTIUMII is not set
-# CONFIG_MPENTIUMIII is not set
-# CONFIG_MPENTIUMM is not set
-# CONFIG_MPENTIUM4 is not set
-# CONFIG_MK6 is not set
-# CONFIG_MK7 is not set
-# CONFIG_MK8 is not set
-# CONFIG_MCRUSOE is not set
-# CONFIG_MEFFICEON is not set
-# CONFIG_MWINCHIPC6 is not set
-# CONFIG_MWINCHIP3D is not set
-# CONFIG_MGEODEGX1 is not set
-CONFIG_MGEODE_LX=y
-# CONFIG_MCYRIXIII is not set
-# CONFIG_MVIAC3_2 is not set
-# CONFIG_MVIAC7 is not set
-# CONFIG_MCORE2 is not set
-# CONFIG_MATOM is not set
-# CONFIG_X86_GENERIC is not set
-CONFIG_X86_CPU=y
-CONFIG_X86_INTERNODE_CACHE_SHIFT=5
-CONFIG_X86_CMPXCHG=y
-CONFIG_X86_L1_CACHE_SHIFT=5
-CONFIG_X86_XADD=y
-CONFIG_X86_WP_WORKS_OK=y
-CONFIG_X86_INVLPG=y
-CONFIG_X86_BSWAP=y
-CONFIG_X86_POPAD_OK=y
-CONFIG_X86_USE_PPRO_CHECKSUM=y
-CONFIG_X86_USE_3DNOW=y
-CONFIG_X86_TSC=y
-CONFIG_X86_CMOV=y
-CONFIG_X86_MINIMUM_CPU_FAMILY=4
-CONFIG_X86_DEBUGCTLMSR=y
-CONFIG_PROCESSOR_SELECT=y
-# CONFIG_CPU_SUP_INTEL is not set
-# CONFIG_CPU_SUP_CYRIX_32 is not set
-CONFIG_CPU_SUP_AMD=y
-# CONFIG_CPU_SUP_CENTAUR is not set
-# CONFIG_CPU_SUP_TRANSMETA_32 is not set
-# CONFIG_CPU_SUP_UMC_32 is not set
-# CONFIG_HPET_TIMER is not set
-# CONFIG_DMI is not set
-# CONFIG_IOMMU_HELPER is not set
-# CONFIG_IOMMU_API is not set
-CONFIG_NR_CPUS=1
-CONFIG_PREEMPT_NONE=y
-# CONFIG_PREEMPT_VOLUNTARY is not set
-# CONFIG_PREEMPT is not set
-# CONFIG_X86_UP_APIC is not set
-# CONFIG_X86_MCE is not set
-CONFIG_VM86=y
-# CONFIG_TOSHIBA is not set
-# CONFIG_I8K is not set
-# CONFIG_X86_REBOOTFIXUPS is not set
-# CONFIG_MICROCODE is not set
-CONFIG_X86_MSR=y
-CONFIG_X86_CPUID=y
-CONFIG_NOHIGHMEM=y
-# CONFIG_HIGHMEM4G is not set
-# CONFIG_HIGHMEM64G is not set
-CONFIG_VMSPLIT_3G=y
-# CONFIG_VMSPLIT_3G_OPT is not set
-# CONFIG_VMSPLIT_2G is not set
-# CONFIG_VMSPLIT_2G_OPT is not set
-# CONFIG_VMSPLIT_1G is not set
-CONFIG_PAGE_OFFSET=0xC0000000
-# CONFIG_X86_PAE is not set
-# CONFIG_ARCH_PHYS_ADDR_T_64BIT is not set
-CONFIG_ARCH_FLATMEM_ENABLE=y
-CONFIG_ARCH_SPARSEMEM_ENABLE=y
-CONFIG_ARCH_SELECT_MEMORY_MODEL=y
-CONFIG_ILLEGAL_POINTER_VALUE=0
-CONFIG_SELECT_MEMORY_MODEL=y
-CONFIG_FLATMEM_MANUAL=y
-# CONFIG_SPARSEMEM_MANUAL is not set
-CONFIG_FLATMEM=y
-CONFIG_FLAT_NODE_MEM_MAP=y
-CONFIG_SPARSEMEM_STATIC=y
-CONFIG_PAGEFLAGS_EXTENDED=y
-CONFIG_SPLIT_PTLOCK_CPUS=4
-# CONFIG_PHYS_ADDR_T_64BIT is not set
-CONFIG_ZONE_DMA_FLAG=1
-CONFIG_BOUNCE=y
-CONFIG_VIRT_TO_BUS=y
-# CONFIG_KSM is not set
-CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
-CONFIG_X86_CHECK_BIOS_CORRUPTION=y
-# CONFIG_X86_BOOTPARAM_MEMORY_CORRUPTION_CHECK is not set
-CONFIG_X86_RESERVE_LOW_64K=y
-# CONFIG_MATH_EMULATION is not set
-CONFIG_MTRR=y
-# CONFIG_MTRR_SANITIZER is not set
-# CONFIG_X86_PAT is not set
-# CONFIG_SECCOMP is not set
-# CONFIG_CC_STACKPROTECTOR is not set
-# CONFIG_HZ_100 is not set
-CONFIG_HZ_250=y
-# CONFIG_HZ_300 is not set
-# CONFIG_HZ_1000 is not set
-CONFIG_HZ=250
-# CONFIG_SCHED_HRTICK is not set
-# CONFIG_KEXEC is not set
-CONFIG_PHYSICAL_START=0x100000
-# CONFIG_RELOCATABLE is not set
-CONFIG_PHYSICAL_ALIGN=0x100000
-# CONFIG_COMPAT_VDSO is not set
-CONFIG_CMDLINE_BOOL=y
-CONFIG_CMDLINE="console=tty0 console=ttyS0,115200n8 irqpoll"
-# CONFIG_CMDLINE_OVERRIDE is not set
-
-#
-# Power management and ACPI options
-#
-# CONFIG_PM is not set
-# CONFIG_SFI is not set
-
-#
-# CPU Frequency scaling
-#
-# CONFIG_CPU_FREQ is not set
-# CONFIG_CPU_IDLE is not set
-
-#
-# Bus options (PCI etc.)
-#
-CONFIG_PCI=y
-# CONFIG_PCI_GOBIOS is not set
-# CONFIG_PCI_GOMMCONFIG is not set
-# CONFIG_PCI_GODIRECT is not set
-CONFIG_PCI_GOANY=y
-CONFIG_PCI_BIOS=y
-CONFIG_PCI_DIRECT=y
-CONFIG_PCI_DOMAINS=y
-# CONFIG_PCI_CNB20LE_QUIRK is not set
-# CONFIG_PCIEPORTBUS is not set
-# CONFIG_ARCH_SUPPORTS_MSI is not set
-# CONFIG_PCI_STUB is not set
-# CONFIG_PCI_IOV is not set
-CONFIG_ISA_DMA_API=y
-# CONFIG_ISA is not set
-# CONFIG_MCA is not set
-# CONFIG_SCx200 is not set
-# CONFIG_OLPC is not set
-# CONFIG_OLPC_OPENFIRMWARE is not set
-CONFIG_K8_NB=y
-# CONFIG_PCCARD is not set
-# CONFIG_HOTPLUG_PCI is not set
-
-#
-# Executable file formats / Emulations
-#
-CONFIG_BINFMT_ELF=y
-CONFIG_HAVE_AOUT=y
-# CONFIG_BINFMT_AOUT is not set
-# CONFIG_BINFMT_MISC is not set
-CONFIG_HAVE_ATOMIC_IOMAP=y
-CONFIG_NET=y
-
-#
-# Networking options
-#
-CONFIG_PACKET=y
-CONFIG_UNIX=y
-# CONFIG_NET_KEY is not set
-CONFIG_INET=y
-# CONFIG_IP_MULTICAST is not set
-# CONFIG_IP_ADVANCED_ROUTER is not set
-CONFIG_IP_FIB_HASH=y
-# CONFIG_IP_PNP is not set
-# CONFIG_NET_IPIP is not set
-# CONFIG_NET_IPGRE is not set
-# CONFIG_ARPD is not set
-# CONFIG_SYN_COOKIES is not set
-# CONFIG_INET_AH is not set
-# CONFIG_INET_ESP is not set
-# CONFIG_INET_IPCOMP is not set
-# CONFIG_INET_XFRM_TUNNEL is not set
-# CONFIG_INET_TUNNEL is not set
-# CONFIG_INET_XFRM_MODE_TRANSPORT is not set
-# CONFIG_INET_XFRM_MODE_TUNNEL is not set
-# CONFIG_INET_XFRM_MODE_BEET is not set
-# CONFIG_INET_LRO is not set
-# CONFIG_INET_DIAG is not set
-# CONFIG_TCP_CONG_ADVANCED is not set
-CONFIG_TCP_CONG_CUBIC=y
-CONFIG_DEFAULT_TCP_CONG="cubic"
-# CONFIG_TCP_MD5SIG is not set
-# CONFIG_IPV6 is not set
-# CONFIG_NETWORK_SECMARK is not set
-# CONFIG_NETWORK_PHY_TIMESTAMPING is not set
-# CONFIG_NETFILTER is not set
-# CONFIG_IP_DCCP is not set
-# CONFIG_IP_SCTP is not set
-# CONFIG_RDS is not set
-# CONFIG_TIPC is not set
-# CONFIG_ATM is not set
-# CONFIG_L2TP is not set
-# CONFIG_BRIDGE is not set
-# CONFIG_NET_DSA is not set
-# CONFIG_VLAN_8021Q is not set
-# CONFIG_DECNET is not set
-# CONFIG_LLC2 is not set
-# CONFIG_IPX is not set
-# CONFIG_ATALK is not set
-# CONFIG_X25 is not set
-# CONFIG_LAPB is not set
-# CONFIG_ECONET is not set
-# CONFIG_WAN_ROUTER is not set
-# CONFIG_PHONET is not set
-# CONFIG_IEEE802154 is not set
-# CONFIG_NET_SCHED is not set
-# CONFIG_DCB is not set
-
-#
-# Network testing
-#
-# CONFIG_NET_PKTGEN is not set
-# CONFIG_HAMRADIO is not set
-# CONFIG_CAN is not set
-# CONFIG_IRDA is not set
-# CONFIG_BT is not set
-# CONFIG_AF_RXRPC is not set
-CONFIG_WIRELESS=y
-# CONFIG_CFG80211 is not set
-# CONFIG_LIB80211 is not set
-
-#
-# CFG80211 needs to be enabled for MAC80211
-#
-
-#
-# Some wireless drivers require a rate control algorithm
-#
-# CONFIG_WIMAX is not set
-# CONFIG_RFKILL is not set
-# CONFIG_NET_9P is not set
-# CONFIG_CAIF is not set
-
-#
-# Device Drivers
-#
-
-#
-# Generic Driver Options
-#
-CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
-CONFIG_DEVTMPFS=y
-CONFIG_DEVTMPFS_MOUNT=y
-# CONFIG_STANDALONE is not set
-# CONFIG_PREVENT_FIRMWARE_BUILD is not set
-# CONFIG_FW_LOADER is not set
-# CONFIG_SYS_HYPERVISOR is not set
-# CONFIG_CONNECTOR is not set
-# CONFIG_MTD is not set
-# CONFIG_PARPORT is not set
-CONFIG_BLK_DEV=y
-# CONFIG_BLK_DEV_FD is not set
-# CONFIG_BLK_CPQ_DA is not set
-# CONFIG_BLK_CPQ_CISS_DA is not set
-# CONFIG_BLK_DEV_DAC960 is not set
-# CONFIG_BLK_DEV_UMEM is not set
-# CONFIG_BLK_DEV_COW_COMMON is not set
-# CONFIG_BLK_DEV_LOOP is not set
-
-#
-# DRBD disabled because PROC_FS, INET or CONNECTOR not selected
-#
-# CONFIG_BLK_DEV_NBD is not set
-# CONFIG_BLK_DEV_SX8 is not set
-# CONFIG_BLK_DEV_RAM is not set
-# CONFIG_CDROM_PKTCDVD is not set
-# CONFIG_ATA_OVER_ETH is not set
-# CONFIG_BLK_DEV_HD is not set
-# CONFIG_MISC_DEVICES is not set
-CONFIG_HAVE_IDE=y
-# CONFIG_IDE is not set
-
-#
-# SCSI device support
-#
-CONFIG_SCSI_MOD=y
-# CONFIG_RAID_ATTRS is not set
-CONFIG_SCSI=y
-CONFIG_SCSI_DMA=y
-# CONFIG_SCSI_TGT is not set
-# CONFIG_SCSI_NETLINK is not set
-# CONFIG_SCSI_PROC_FS is not set
-
-#
-# SCSI support type (disk, tape, CD-ROM)
-#
-CONFIG_BLK_DEV_SD=y
-# CONFIG_CHR_DEV_ST is not set
-# CONFIG_CHR_DEV_OSST is not set
-# CONFIG_BLK_DEV_SR is not set
-# CONFIG_CHR_DEV_SG is not set
-# CONFIG_CHR_DEV_SCH is not set
-# CONFIG_SCSI_MULTI_LUN is not set
-# CONFIG_SCSI_CONSTANTS is not set
-# CONFIG_SCSI_LOGGING is not set
-# CONFIG_SCSI_SCAN_ASYNC is not set
-CONFIG_SCSI_WAIT_SCAN=m
-
-#
-# SCSI Transports
-#
-# CONFIG_SCSI_SPI_ATTRS is not set
-# CONFIG_SCSI_FC_ATTRS is not set
-# CONFIG_SCSI_ISCSI_ATTRS is not set
-# CONFIG_SCSI_SAS_LIBSAS is not set
-# CONFIG_SCSI_SRP_ATTRS is not set
-# CONFIG_SCSI_LOWLEVEL is not set
-# CONFIG_SCSI_DH is not set
-# CONFIG_SCSI_OSD_INITIATOR is not set
-CONFIG_ATA=y
-# CONFIG_ATA_NONSTANDARD is not set
-CONFIG_ATA_VERBOSE_ERROR=y
-# CONFIG_SATA_PMP is not set
-
-#
-# Controllers with non-SFF native interface
-#
-# CONFIG_SATA_AHCI is not set
-# CONFIG_SATA_AHCI_PLATFORM is not set
-# CONFIG_SATA_INIC162X is not set
-# CONFIG_SATA_SIL24 is not set
-CONFIG_ATA_SFF=y
-
-#
-# SFF controllers with custom DMA interface
-#
-# CONFIG_PDC_ADMA is not set
-# CONFIG_SATA_QSTOR is not set
-# CONFIG_SATA_SX4 is not set
-CONFIG_ATA_BMDMA=y
-
-#
-# SATA SFF controllers with BMDMA
-#
-# CONFIG_ATA_PIIX is not set
-# CONFIG_SATA_MV is not set
-# CONFIG_SATA_NV is not set
-# CONFIG_SATA_PROMISE is not set
-# CONFIG_SATA_SIL is not set
-# CONFIG_SATA_SIS is not set
-# CONFIG_SATA_SVW is not set
-# CONFIG_SATA_ULI is not set
-# CONFIG_SATA_VIA is not set
-# CONFIG_SATA_VITESSE is not set
-
-#
-# PATA SFF controllers with BMDMA
-#
-# CONFIG_PATA_ALI is not set
-CONFIG_PATA_AMD=y
-# CONFIG_PATA_ARTOP is not set
-# CONFIG_PATA_ATIIXP is not set
-# CONFIG_PATA_ATP867X is not set
-# CONFIG_PATA_CMD64X is not set
-# CONFIG_PATA_CS5520 is not set
-# CONFIG_PATA_CS5530 is not set
-# CONFIG_PATA_CS5535 is not set
-# CONFIG_PATA_CS5536 is not set
-# CONFIG_PATA_CYPRESS is not set
-# CONFIG_PATA_EFAR is not set
-# CONFIG_PATA_HPT366 is not set
-# CONFIG_PATA_HPT37X is not set
-# CONFIG_PATA_HPT3X2N is not set
-# CONFIG_PATA_HPT3X3 is not set
-# CONFIG_PATA_IT8213 is not set
-# CONFIG_PATA_IT821X is not set
-# CONFIG_PATA_JMICRON is not set
-# CONFIG_PATA_MARVELL is not set
-# CONFIG_PATA_NETCELL is not set
-# CONFIG_PATA_NINJA32 is not set
-# CONFIG_PATA_NS87415 is not set
-# CONFIG_PATA_OLDPIIX is not set
-# CONFIG_PATA_OPTIDMA is not set
-# CONFIG_PATA_PDC2027X is not set
-# CONFIG_PATA_PDC_OLD is not set
-# CONFIG_PATA_RADISYS is not set
-# CONFIG_PATA_RDC is not set
-# CONFIG_PATA_SC1200 is not set
-# CONFIG_PATA_SCH is not set
-# CONFIG_PATA_SERVERWORKS is not set
-# CONFIG_PATA_SIL680 is not set
-# CONFIG_PATA_SIS is not set
-# CONFIG_PATA_TOSHIBA is not set
-# CONFIG_PATA_TRIFLEX is not set
-# CONFIG_PATA_VIA is not set
-# CONFIG_PATA_WINBOND is not set
-
-#
-# PIO-only SFF controllers
-#
-# CONFIG_PATA_CMD640_PCI is not set
-# CONFIG_PATA_MPIIX is not set
-# CONFIG_PATA_NS87410 is not set
-# CONFIG_PATA_OPTI is not set
-# CONFIG_PATA_PLATFORM is not set
-# CONFIG_PATA_RZ1000 is not set
-
-#
-# Generic fallback / legacy drivers
-#
-# CONFIG_ATA_GENERIC is not set
-# CONFIG_PATA_LEGACY is not set
-# CONFIG_MD is not set
-# CONFIG_FUSION is not set
-
-#
-# IEEE 1394 (FireWire) support
-#
-
-#
-# You can enable one or both FireWire driver stacks.
-#
-
-#
-# The newer stack is recommended.
-#
-# CONFIG_FIREWIRE is not set
-# CONFIG_IEEE1394 is not set
-# CONFIG_FIREWIRE_NOSY is not set
-# CONFIG_I2O is not set
-# CONFIG_MACINTOSH_DRIVERS is not set
-CONFIG_NETDEVICES=y
-# CONFIG_DUMMY is not set
-# CONFIG_BONDING is not set
-# CONFIG_MACVLAN is not set
-# CONFIG_EQUALIZER is not set
-# CONFIG_TUN is not set
-# CONFIG_VETH is not set
-# CONFIG_ARCNET is not set
-CONFIG_PHYLIB=y
-
-#
-# MII PHY device drivers
-#
-# CONFIG_MARVELL_PHY is not set
-# CONFIG_DAVICOM_PHY is not set
-# CONFIG_QSEMI_PHY is not set
-# CONFIG_LXT_PHY is not set
-# CONFIG_CICADA_PHY is not set
-# CONFIG_VITESSE_PHY is not set
-# CONFIG_SMSC_PHY is not set
-# CONFIG_BROADCOM_PHY is not set
-# CONFIG_ICPLUS_PHY is not set
-# CONFIG_REALTEK_PHY is not set
-# CONFIG_NATIONAL_PHY is not set
-# CONFIG_STE10XP is not set
-# CONFIG_LSI_ET1011C_PHY is not set
-# CONFIG_MICREL_PHY is not set
-# CONFIG_FIXED_PHY is not set
-# CONFIG_MDIO_BITBANG is not set
-CONFIG_NET_ETHERNET=y
-CONFIG_MII=y
-# CONFIG_HAPPYMEAL is not set
-# CONFIG_SUNGEM is not set
-# CONFIG_CASSINI is not set
-# CONFIG_NET_VENDOR_3COM is not set
-# CONFIG_ETHOC is not set
-# CONFIG_DNET is not set
-# CONFIG_NET_TULIP is not set
-# CONFIG_HP100 is not set
-# CONFIG_IBM_NEW_EMAC_ZMII is not set
-# CONFIG_IBM_NEW_EMAC_RGMII is not set
-# CONFIG_IBM_NEW_EMAC_TAH is not set
-# CONFIG_IBM_NEW_EMAC_EMAC4 is not set
-# CONFIG_IBM_NEW_EMAC_NO_FLOW_CTRL is not set
-# CONFIG_IBM_NEW_EMAC_MAL_CLR_ICINTSTAT is not set
-# CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR is not set
-CONFIG_NET_PCI=y
-# CONFIG_PCNET32 is not set
-# CONFIG_AMD8111_ETH is not set
-# CONFIG_ADAPTEC_STARFIRE is not set
-# CONFIG_KSZ884X_PCI is not set
-# CONFIG_B44 is not set
-# CONFIG_FORCEDETH is not set
-# CONFIG_E100 is not set
-# CONFIG_FEALNX is not set
-# CONFIG_NATSEMI is not set
-# CONFIG_NE2K_PCI is not set
-# CONFIG_8139CP is not set
-# CONFIG_8139TOO is not set
-# CONFIG_R6040 is not set
-# CONFIG_SIS900 is not set
-# CONFIG_EPIC100 is not set
-# CONFIG_SMSC9420 is not set
-# CONFIG_SUNDANCE is not set
-# CONFIG_TLAN is not set
-# CONFIG_KS8851_MLL is not set
-CONFIG_VIA_RHINE=y
-CONFIG_VIA_RHINE_MMIO=y
-# CONFIG_SC92031 is not set
-# CONFIG_ATL2 is not set
-# CONFIG_NETDEV_1000 is not set
-# CONFIG_NETDEV_10000 is not set
-# CONFIG_TR is not set
-CONFIG_WLAN=y
-# CONFIG_AIRO is not set
-# CONFIG_ATMEL is not set
-# CONFIG_PRISM54 is not set
-# CONFIG_HOSTAP is not set
-
-#
-# Enable WiMAX (Networking options) to see the WiMAX drivers
-#
-# CONFIG_WAN is not set
-
-#
-# CAIF transport drivers
-#
-# CONFIG_FDDI is not set
-# CONFIG_HIPPI is not set
-# CONFIG_PPP is not set
-# CONFIG_SLIP is not set
-# CONFIG_NET_FC is not set
-# CONFIG_NETCONSOLE is not set
-# CONFIG_NETPOLL is not set
-# CONFIG_NET_POLL_CONTROLLER is not set
-# CONFIG_VMXNET3 is not set
-# CONFIG_ISDN is not set
-# CONFIG_PHONE is not set
-
-#
-# Input device support
-#
-CONFIG_INPUT=y
-# CONFIG_INPUT_FF_MEMLESS is not set
-# CONFIG_INPUT_POLLDEV is not set
-# CONFIG_INPUT_SPARSEKMAP is not set
-
-#
-# Userland interfaces
-#
-CONFIG_INPUT_MOUSEDEV=y
-# CONFIG_INPUT_MOUSEDEV_PSAUX is not set
-CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024
-CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768
-# CONFIG_INPUT_JOYDEV is not set
-# CONFIG_INPUT_EVDEV is not set
-# CONFIG_INPUT_EVBUG is not set
-
-#
-# Input Device Drivers
-#
-CONFIG_INPUT_KEYBOARD=y
-CONFIG_KEYBOARD_ATKBD=y
-# CONFIG_KEYBOARD_LKKBD is not set
-# CONFIG_KEYBOARD_GPIO is not set
-# CONFIG_KEYBOARD_MATRIX is not set
-# CONFIG_KEYBOARD_NEWTON is not set
-# CONFIG_KEYBOARD_OPENCORES is not set
-# CONFIG_KEYBOARD_STOWAWAY is not set
-# CONFIG_KEYBOARD_SUNKBD is not set
-# CONFIG_KEYBOARD_XTKBD is not set
-# CONFIG_INPUT_MOUSE is not set
-# CONFIG_INPUT_JOYSTICK is not set
-# CONFIG_INPUT_TABLET is not set
-# CONFIG_INPUT_TOUCHSCREEN is not set
-# CONFIG_INPUT_MISC is not set
-
-#
-# Hardware I/O ports
-#
-CONFIG_SERIO=y
-CONFIG_SERIO_I8042=y
-# CONFIG_SERIO_SERPORT is not set
-# CONFIG_SERIO_CT82C710 is not set
-# CONFIG_SERIO_PCIPS2 is not set
-CONFIG_SERIO_LIBPS2=y
-# CONFIG_SERIO_RAW is not set
-# CONFIG_SERIO_ALTERA_PS2 is not set
-# CONFIG_GAMEPORT is not set
-
-#
-# Character devices
-#
-CONFIG_VT=y
-# CONFIG_CONSOLE_TRANSLATIONS is not set
-CONFIG_VT_CONSOLE=y
-CONFIG_HW_CONSOLE=y
-# CONFIG_VT_HW_CONSOLE_BINDING is not set
-CONFIG_DEVKMEM=y
-# CONFIG_SERIAL_NONSTANDARD is not set
-# CONFIG_N_GSM is not set
-# CONFIG_NOZOMI is not set
-
-#
-# Serial drivers
-#
-CONFIG_SERIAL_8250=y
-CONFIG_SERIAL_8250_CONSOLE=y
-CONFIG_FIX_EARLYCON_MEM=y
-# CONFIG_SERIAL_8250_PCI is not set
-CONFIG_SERIAL_8250_NR_UARTS=4
-CONFIG_SERIAL_8250_RUNTIME_UARTS=4
-# CONFIG_SERIAL_8250_EXTENDED is not set
-
-#
-# Non-8250 serial port support
-#
-# CONFIG_SERIAL_MFD_HSU is not set
-CONFIG_SERIAL_CORE=y
-CONFIG_SERIAL_CORE_CONSOLE=y
-# CONFIG_SERIAL_JSM is not set
-# CONFIG_SERIAL_TIMBERDALE is not set
-# CONFIG_SERIAL_ALTERA_JTAGUART is not set
-# CONFIG_SERIAL_ALTERA_UART is not set
-CONFIG_UNIX98_PTYS=y
-# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
-# CONFIG_LEGACY_PTYS is not set
-# CONFIG_IPMI_HANDLER is not set
-# CONFIG_HW_RANDOM is not set
-# CONFIG_NVRAM is not set
-# CONFIG_R3964 is not set
-# CONFIG_APPLICOM is not set
-# CONFIG_SONYPI is not set
-# CONFIG_MWAVE is not set
-# CONFIG_PC8736x_GPIO is not set
-# CONFIG_NSC_GPIO is not set
-# CONFIG_CS5535_GPIO is not set
-# CONFIG_RAW_DRIVER is not set
-# CONFIG_HANGCHECK_TIMER is not set
-# CONFIG_TCG_TPM is not set
-# CONFIG_TELCLOCK is not set
-CONFIG_DEVPORT=y
-# CONFIG_RAMOOPS is not set
-# CONFIG_I2C is not set
-# CONFIG_SPI is not set
-
-#
-# PPS support
-#
-# CONFIG_PPS is not set
-CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y
-CONFIG_GPIOLIB=y
-CONFIG_GPIO_SYSFS=y
-
-#
-# Memory mapped GPIO expanders:
-#
-# CONFIG_GPIO_IT8761E is not set
-# CONFIG_GPIO_SCH is not set
-
-#
-# I2C GPIO expanders:
-#
-
-#
-# PCI GPIO expanders:
-#
-# CONFIG_GPIO_CS5535 is not set
-# CONFIG_GPIO_BT8XX is not set
-# CONFIG_GPIO_LANGWELL is not set
-# CONFIG_GPIO_RDC321X is not set
-
-#
-# SPI GPIO expanders:
-#
-
-#
-# AC97 GPIO expanders:
-#
-
-#
-# MODULbus GPIO expanders:
-#
-# CONFIG_W1 is not set
-# CONFIG_POWER_SUPPLY is not set
-# CONFIG_HWMON is not set
-# CONFIG_THERMAL is not set
-CONFIG_WATCHDOG=y
-# CONFIG_WATCHDOG_NOWAYOUT is not set
-
-#
-# Watchdog Device Drivers
-#
-# CONFIG_SOFT_WATCHDOG is not set
-# CONFIG_ACQUIRE_WDT is not set
-# CONFIG_ADVANTECH_WDT is not set
-# CONFIG_ALIM1535_WDT is not set
-# CONFIG_ALIM7101_WDT is not set
-# CONFIG_F71808E_WDT is not set
-# CONFIG_SC520_WDT is not set
-# CONFIG_SBC_FITPC2_WATCHDOG is not set
-# CONFIG_EUROTECH_WDT is not set
-# CONFIG_IB700_WDT is not set
-# CONFIG_IBMASR is not set
-# CONFIG_WAFER_WDT is not set
-# CONFIG_I6300ESB_WDT is not set
-# CONFIG_ITCO_WDT is not set
-# CONFIG_IT8712F_WDT is not set
-# CONFIG_IT87_WDT is not set
-# CONFIG_HP_WATCHDOG is not set
-# CONFIG_SC1200_WDT is not set
-# CONFIG_PC87413_WDT is not set
-# CONFIG_60XX_WDT is not set
-# CONFIG_SBC8360_WDT is not set
-# CONFIG_SBC7240_WDT is not set
-# CONFIG_CPU5_WDT is not set
-# CONFIG_SMSC_SCH311X_WDT is not set
-# CONFIG_SMSC37B787_WDT is not set
-# CONFIG_W83627HF_WDT is not set
-# CONFIG_W83697HF_WDT is not set
-# CONFIG_W83697UG_WDT is not set
-# CONFIG_W83877F_WDT is not set
-# CONFIG_W83977F_WDT is not set
-# CONFIG_MACHZ_WDT is not set
-# CONFIG_SBC_EPX_C3_WATCHDOG is not set
-
-#
-# PCI-based Watchdog Cards
-#
-# CONFIG_PCIPCWATCHDOG is not set
-# CONFIG_WDTPCI is not set
-CONFIG_SSB_POSSIBLE=y
-
-#
-# Sonics Silicon Backplane
-#
-# CONFIG_SSB is not set
-# CONFIG_MFD_SUPPORT is not set
-# CONFIG_REGULATOR is not set
-# CONFIG_MEDIA_SUPPORT is not set
-
-#
-# Graphics support
-#
-# CONFIG_AGP is not set
-# CONFIG_VGA_ARB is not set
-# CONFIG_DRM is not set
-# CONFIG_VGASTATE is not set
-# CONFIG_VIDEO_OUTPUT_CONTROL is not set
-CONFIG_FB=y
-# CONFIG_FIRMWARE_EDID is not set
-# CONFIG_FB_DDC is not set
-# CONFIG_FB_BOOT_VESA_SUPPORT is not set
-CONFIG_FB_CFB_FILLRECT=y
-CONFIG_FB_CFB_COPYAREA=y
-CONFIG_FB_CFB_IMAGEBLIT=y
-# CONFIG_FB_CFB_REV_PIXELS_IN_BYTE is not set
-# CONFIG_FB_SYS_FILLRECT is not set
-# CONFIG_FB_SYS_COPYAREA is not set
-# CONFIG_FB_SYS_IMAGEBLIT is not set
-# CONFIG_FB_FOREIGN_ENDIAN is not set
-# CONFIG_FB_SYS_FOPS is not set
-# CONFIG_FB_SVGALIB is not set
-# CONFIG_FB_MACMODES is not set
-# CONFIG_FB_BACKLIGHT is not set
-# CONFIG_FB_MODE_HELPERS is not set
-# CONFIG_FB_TILEBLITTING is not set
-
-#
-# Frame buffer hardware drivers
-#
-# CONFIG_FB_CIRRUS is not set
-# CONFIG_FB_PM2 is not set
-# CONFIG_FB_CYBER2000 is not set
-# CONFIG_FB_ARC is not set
-# CONFIG_FB_ASILIANT is not set
-# CONFIG_FB_IMSTT is not set
-# CONFIG_FB_VGA16 is not set
-# CONFIG_FB_VESA is not set
-# CONFIG_FB_N411 is not set
-# CONFIG_FB_HGA is not set
-# CONFIG_FB_S1D13XXX is not set
-# CONFIG_FB_NVIDIA is not set
-# CONFIG_FB_RIVA is not set
-# CONFIG_FB_LE80578 is not set
-# CONFIG_FB_MATROX is not set
-# CONFIG_FB_RADEON is not set
-# CONFIG_FB_ATY128 is not set
-# CONFIG_FB_ATY is not set
-# CONFIG_FB_S3 is not set
-# CONFIG_FB_SAVAGE is not set
-# CONFIG_FB_SIS is not set
-# CONFIG_FB_VIA is not set
-# CONFIG_FB_NEOMAGIC is not set
-# CONFIG_FB_KYRO is not set
-# CONFIG_FB_3DFX is not set
-# CONFIG_FB_VOODOO1 is not set
-# CONFIG_FB_VT8623 is not set
-# CONFIG_FB_TRIDENT is not set
-# CONFIG_FB_ARK is not set
-# CONFIG_FB_PM3 is not set
-# CONFIG_FB_CARMINE is not set
-CONFIG_FB_GEODE=y
-CONFIG_FB_GEODE_LX=y
-# CONFIG_FB_GEODE_GX is not set
-# CONFIG_FB_GEODE_GX1 is not set
-# CONFIG_FB_VIRTUAL is not set
-# CONFIG_FB_METRONOME is not set
-# CONFIG_FB_MB862XX is not set
-# CONFIG_FB_BROADSHEET is not set
-# CONFIG_BACKLIGHT_LCD_SUPPORT is not set
-
-#
-# Display device support
-#
-# CONFIG_DISPLAY_SUPPORT is not set
-
-#
-# Console display driver support
-#
-CONFIG_VGA_CONSOLE=y
-CONFIG_VGACON_SOFT_SCROLLBACK=y
-CONFIG_VGACON_SOFT_SCROLLBACK_SIZE=64
-CONFIG_DUMMY_CONSOLE=y
-CONFIG_FRAMEBUFFER_CONSOLE=y
-# CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY is not set
-# CONFIG_FRAMEBUFFER_CONSOLE_ROTATION is not set
-# CONFIG_FONTS is not set
-CONFIG_FONT_8x8=y
-CONFIG_FONT_8x16=y
-# CONFIG_LOGO is not set
-# CONFIG_SOUND is not set
-CONFIG_HID_SUPPORT=y
-CONFIG_HID=y
-# CONFIG_HIDRAW is not set
-# CONFIG_HID_PID is not set
-
-#
-# Special HID drivers
-#
-CONFIG_USB_SUPPORT=y
-CONFIG_USB_ARCH_HAS_HCD=y
-CONFIG_USB_ARCH_HAS_OHCI=y
-CONFIG_USB_ARCH_HAS_EHCI=y
-# CONFIG_USB is not set
-# CONFIG_USB_OTG_WHITELIST is not set
-# CONFIG_USB_OTG_BLACKLIST_HUB is not set
-
-#
-# Enable Host or Gadget support to see Inventra options
-#
-
-#
-# NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may
-#
-# CONFIG_USB_GADGET is not set
-
-#
-# OTG and related infrastructure
-#
-# CONFIG_UWB is not set
-# CONFIG_MMC is not set
-# CONFIG_MEMSTICK is not set
-# CONFIG_NEW_LEDS is not set
-# CONFIG_ACCESSIBILITY is not set
-# CONFIG_INFINIBAND is not set
-# CONFIG_EDAC is not set
-CONFIG_RTC_LIB=y
-CONFIG_RTC_CLASS=y
-CONFIG_RTC_HCTOSYS=y
-CONFIG_RTC_HCTOSYS_DEVICE="rtc0"
-# CONFIG_RTC_DEBUG is not set
-
-#
-# RTC interfaces
-#
-CONFIG_RTC_INTF_SYSFS=y
-CONFIG_RTC_INTF_PROC=y
-CONFIG_RTC_INTF_DEV=y
-# CONFIG_RTC_INTF_DEV_UIE_EMUL is not set
-# CONFIG_RTC_DRV_TEST is not set
-
-#
-# SPI RTC drivers
-#
-
-#
-# Platform RTC drivers
-#
-CONFIG_RTC_DRV_CMOS=y
-# CONFIG_RTC_DRV_DS1286 is not set
-# CONFIG_RTC_DRV_DS1511 is not set
-# CONFIG_RTC_DRV_DS1553 is not set
-# CONFIG_RTC_DRV_DS1742 is not set
-# CONFIG_RTC_DRV_STK17TA8 is not set
-# CONFIG_RTC_DRV_M48T86 is not set
-# CONFIG_RTC_DRV_M48T35 is not set
-# CONFIG_RTC_DRV_M48T59 is not set
-# CONFIG_RTC_DRV_MSM6242 is not set
-# CONFIG_RTC_DRV_BQ4802 is not set
-# CONFIG_RTC_DRV_RP5C01 is not set
-# CONFIG_RTC_DRV_V3020 is not set
-
-#
-# on-CPU RTC drivers
-#
-# CONFIG_DMADEVICES is not set
-# CONFIG_AUXDISPLAY is not set
-# CONFIG_UIO is not set
-# CONFIG_STAGING is not set
-# CONFIG_X86_PLATFORM_DEVICES is not set
-
-#
-# Firmware Drivers
-#
-# CONFIG_EDD is not set
-# CONFIG_FIRMWARE_MEMMAP is not set
-# CONFIG_DELL_RBU is not set
-# CONFIG_DCDBAS is not set
-# CONFIG_ISCSI_IBFT_FIND is not set
-
-#
-# File systems
-#
-CONFIG_EXT2_FS=y
-# CONFIG_EXT2_FS_XATTR is not set
-# CONFIG_EXT2_FS_XIP is not set
-# CONFIG_EXT3_FS is not set
-# CONFIG_EXT4_FS is not set
-# CONFIG_REISERFS_FS is not set
-# CONFIG_JFS_FS is not set
-# CONFIG_FS_POSIX_ACL is not set
-# CONFIG_XFS_FS is not set
-# CONFIG_OCFS2_FS is not set
-# CONFIG_BTRFS_FS is not set
-# CONFIG_NILFS2_FS is not set
-CONFIG_FILE_LOCKING=y
-# CONFIG_FSNOTIFY is not set
-# CONFIG_DNOTIFY is not set
-# CONFIG_INOTIFY_USER is not set
-# CONFIG_QUOTA is not set
-# CONFIG_AUTOFS_FS is not set
-# CONFIG_AUTOFS4_FS is not set
-# CONFIG_FUSE_FS is not set
-
-#
-# Caches
-#
-# CONFIG_FSCACHE is not set
-
-#
-# CD-ROM/DVD Filesystems
-#
-# CONFIG_ISO9660_FS is not set
-# CONFIG_UDF_FS is not set
-
-#
-# DOS/FAT/NT Filesystems
-#
-# CONFIG_MSDOS_FS is not set
-# CONFIG_VFAT_FS is not set
-# CONFIG_NTFS_FS is not set
-
-#
-# Pseudo filesystems
-#
-CONFIG_PROC_FS=y
-# CONFIG_PROC_KCORE is not set
-CONFIG_PROC_SYSCTL=y
-# CONFIG_PROC_PAGE_MONITOR is not set
-CONFIG_SYSFS=y
-CONFIG_TMPFS=y
-# CONFIG_TMPFS_POSIX_ACL is not set
-# CONFIG_HUGETLBFS is not set
-# CONFIG_HUGETLB_PAGE is not set
-# CONFIG_CONFIGFS_FS is not set
-CONFIG_MISC_FILESYSTEMS=y
-# CONFIG_ADFS_FS is not set
-# CONFIG_AFFS_FS is not set
-# CONFIG_HFS_FS is not set
-# CONFIG_HFSPLUS_FS is not set
-# CONFIG_BEFS_FS is not set
-# CONFIG_BFS_FS is not set
-# CONFIG_EFS_FS is not set
-# CONFIG_LOGFS is not set
-# CONFIG_CRAMFS is not set
-# CONFIG_SQUASHFS is not set
-# CONFIG_VXFS_FS is not set
-# CONFIG_MINIX_FS is not set
-# CONFIG_OMFS_FS is not set
-# CONFIG_HPFS_FS is not set
-# CONFIG_QNX4FS_FS is not set
-# CONFIG_ROMFS_FS is not set
-# CONFIG_SYSV_FS is not set
-# CONFIG_UFS_FS is not set
-CONFIG_NETWORK_FILESYSTEMS=y
-# CONFIG_NFS_FS is not set
-# CONFIG_NFSD is not set
-# CONFIG_SMB_FS is not set
-# CONFIG_CEPH_FS is not set
-# CONFIG_CIFS is not set
-# CONFIG_NCP_FS is not set
-# CONFIG_CODA_FS is not set
-# CONFIG_AFS_FS is not set
-
-#
-# Partition Types
-#
-CONFIG_PARTITION_ADVANCED=y
-# CONFIG_ACORN_PARTITION is not set
-# CONFIG_OSF_PARTITION is not set
-# CONFIG_AMIGA_PARTITION is not set
-# CONFIG_ATARI_PARTITION is not set
-# CONFIG_MAC_PARTITION is not set
-CONFIG_MSDOS_PARTITION=y
-# CONFIG_BSD_DISKLABEL is not set
-# CONFIG_MINIX_SUBPARTITION is not set
-# CONFIG_SOLARIS_X86_PARTITION is not set
-# CONFIG_UNIXWARE_DISKLABEL is not set
-# CONFIG_LDM_PARTITION is not set
-# CONFIG_SGI_PARTITION is not set
-# CONFIG_ULTRIX_PARTITION is not set
-# CONFIG_SUN_PARTITION is not set
-# CONFIG_KARMA_PARTITION is not set
-# CONFIG_EFI_PARTITION is not set
-# CONFIG_SYSV68_PARTITION is not set
-# CONFIG_NLS is not set
-# CONFIG_DLM is not set
-
-#
-# Kernel hacking
-#
-CONFIG_TRACE_IRQFLAGS_SUPPORT=y
-CONFIG_PRINTK_TIME=y
-# CONFIG_ENABLE_WARN_DEPRECATED is not set
-# CONFIG_ENABLE_MUST_CHECK is not set
-CONFIG_FRAME_WARN=1024
-CONFIG_MAGIC_SYSRQ=y
-CONFIG_STRIP_ASM_SYMS=y
-# CONFIG_UNUSED_SYMBOLS is not set
-# CONFIG_DEBUG_FS is not set
-# CONFIG_HEADERS_CHECK is not set
-# CONFIG_DEBUG_KERNEL is not set
-# CONFIG_HARDLOCKUP_DETECTOR is not set
-CONFIG_DEBUG_BUGVERBOSE=y
-# CONFIG_DEBUG_MEMORY_INIT is not set
-CONFIG_ARCH_WANT_FRAME_POINTERS=y
-# CONFIG_FRAME_POINTER is not set
-# CONFIG_RCU_CPU_STALL_DETECTOR is not set
-# CONFIG_SYSCTL_SYSCALL_CHECK is not set
-CONFIG_USER_STACKTRACE_SUPPORT=y
-CONFIG_HAVE_FUNCTION_TRACER=y
-CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y
-CONFIG_HAVE_FUNCTION_GRAPH_FP_TEST=y
-CONFIG_HAVE_FUNCTION_TRACE_MCOUNT_TEST=y
-CONFIG_HAVE_DYNAMIC_FTRACE=y
-CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y
-CONFIG_HAVE_SYSCALL_TRACEPOINTS=y
-CONFIG_TRACING_SUPPORT=y
-# CONFIG_FTRACE is not set
-# CONFIG_PROVIDE_OHCI1394_DMA_INIT is not set
-# CONFIG_DMA_API_DEBUG is not set
-# CONFIG_ATOMIC64_SELFTEST is not set
-# CONFIG_SAMPLES is not set
-CONFIG_HAVE_ARCH_KGDB=y
-CONFIG_HAVE_ARCH_KMEMCHECK=y
-# CONFIG_STRICT_DEVMEM is not set
-# CONFIG_X86_VERBOSE_BOOTUP is not set
-# CONFIG_EARLY_PRINTK is not set
-# CONFIG_4KSTACKS is not set
-# CONFIG_DOUBLEFAULT is not set
-# CONFIG_IOMMU_STRESS is not set
-CONFIG_HAVE_MMIOTRACE_SUPPORT=y
-CONFIG_IO_DELAY_TYPE_0X80=0
-CONFIG_IO_DELAY_TYPE_0XED=1
-CONFIG_IO_DELAY_TYPE_UDELAY=2
-CONFIG_IO_DELAY_TYPE_NONE=3
-CONFIG_IO_DELAY_0X80=y
-# CONFIG_IO_DELAY_0XED is not set
-# CONFIG_IO_DELAY_UDELAY is not set
-# CONFIG_IO_DELAY_NONE is not set
-CONFIG_DEFAULT_IO_DELAY_TYPE=0
-# CONFIG_OPTIMIZE_INLINING is not set
-
-#
-# Security options
-#
-# CONFIG_KEYS is not set
-# CONFIG_SECURITY is not set
-# CONFIG_SECURITYFS is not set
-CONFIG_DEFAULT_SECURITY_DAC=y
-CONFIG_DEFAULT_SECURITY=""
-CONFIG_CRYPTO=y
-
-#
-# Crypto core or helper
-#
-# CONFIG_CRYPTO_MANAGER is not set
-# CONFIG_CRYPTO_MANAGER2 is not set
-# CONFIG_CRYPTO_GF128MUL is not set
-# CONFIG_CRYPTO_NULL is not set
-# CONFIG_CRYPTO_CRYPTD is not set
-# CONFIG_CRYPTO_AUTHENC is not set
-# CONFIG_CRYPTO_TEST is not set
-
-#
-# Authenticated Encryption with Associated Data
-#
-# CONFIG_CRYPTO_CCM is not set
-# CONFIG_CRYPTO_GCM is not set
-# CONFIG_CRYPTO_SEQIV is not set
-
-#
-# Block modes
-#
-# CONFIG_CRYPTO_CBC is not set
-# CONFIG_CRYPTO_CTR is not set
-# CONFIG_CRYPTO_CTS is not set
-# CONFIG_CRYPTO_ECB is not set
-# CONFIG_CRYPTO_LRW is not set
-# CONFIG_CRYPTO_PCBC is not set
-# CONFIG_CRYPTO_XTS is not set
-
-#
-# Hash modes
-#
-# CONFIG_CRYPTO_HMAC is not set
-# CONFIG_CRYPTO_XCBC is not set
-# CONFIG_CRYPTO_VMAC is not set
-
-#
-# Digest
-#
-# CONFIG_CRYPTO_CRC32C is not set
-# CONFIG_CRYPTO_CRC32C_INTEL is not set
-# CONFIG_CRYPTO_GHASH is not set
-# CONFIG_CRYPTO_MD4 is not set
-# CONFIG_CRYPTO_MD5 is not set
-# CONFIG_CRYPTO_MICHAEL_MIC is not set
-# CONFIG_CRYPTO_RMD128 is not set
-# CONFIG_CRYPTO_RMD160 is not set
-# CONFIG_CRYPTO_RMD256 is not set
-# CONFIG_CRYPTO_RMD320 is not set
-# CONFIG_CRYPTO_SHA1 is not set
-# CONFIG_CRYPTO_SHA256 is not set
-# CONFIG_CRYPTO_SHA512 is not set
-# CONFIG_CRYPTO_TGR192 is not set
-# CONFIG_CRYPTO_WP512 is not set
-
-#
-# Ciphers
-#
-# CONFIG_CRYPTO_AES is not set
-# CONFIG_CRYPTO_AES_586 is not set
-# CONFIG_CRYPTO_ANUBIS is not set
-# CONFIG_CRYPTO_ARC4 is not set
-# CONFIG_CRYPTO_BLOWFISH is not set
-# CONFIG_CRYPTO_CAMELLIA is not set
-# CONFIG_CRYPTO_CAST5 is not set
-# CONFIG_CRYPTO_CAST6 is not set
-# CONFIG_CRYPTO_DES is not set
-# CONFIG_CRYPTO_FCRYPT is not set
-# CONFIG_CRYPTO_KHAZAD is not set
-# CONFIG_CRYPTO_SALSA20 is not set
-# CONFIG_CRYPTO_SALSA20_586 is not set
-# CONFIG_CRYPTO_SEED is not set
-# CONFIG_CRYPTO_SERPENT is not set
-# CONFIG_CRYPTO_TEA is not set
-# CONFIG_CRYPTO_TWOFISH is not set
-# CONFIG_CRYPTO_TWOFISH_586 is not set
-
-#
-# Compression
-#
-# CONFIG_CRYPTO_DEFLATE is not set
-# CONFIG_CRYPTO_ZLIB is not set
-# CONFIG_CRYPTO_LZO is not set
-
-#
-# Random Number Generation
-#
-# CONFIG_CRYPTO_ANSI_CPRNG is not set
-CONFIG_CRYPTO_HW=y
-# CONFIG_CRYPTO_DEV_PADLOCK is not set
-# CONFIG_CRYPTO_DEV_GEODE is not set
-# CONFIG_CRYPTO_DEV_HIFN_795X is not set
-
-#
-# OCF Configuration
-#
-# CONFIG_OCF_OCF is not set
-CONFIG_HAVE_KVM=y
-# CONFIG_VIRTUALIZATION is not set
-# CONFIG_BINARY_PRINTF is not set
-
-#
-# Library routines
-#
-CONFIG_BITREVERSE=y
-CONFIG_GENERIC_FIND_FIRST_BIT=y
-CONFIG_GENERIC_FIND_NEXT_BIT=y
-CONFIG_GENERIC_FIND_LAST_BIT=y
-# CONFIG_CRC_CCITT is not set
-# CONFIG_CRC16 is not set
-# CONFIG_CRC_T10DIF is not set
-# CONFIG_CRC_ITU_T is not set
-CONFIG_CRC32=y
-# CONFIG_CRC7 is not set
-# CONFIG_LIBCRC32C is not set
-CONFIG_HAS_IOMEM=y
-CONFIG_HAS_IOPORT=y
-CONFIG_HAS_DMA=y
-CONFIG_NLATTR=y

+ 0 - 39
target/alix2d/Makefile

@@ -1,39 +0,0 @@
-# This file is part of the OpenADK project. OpenADK is copyrighted
-# material, please see the LICENCE file in the top-level directory.
-
-include $(TOPDIR)/rules.mk
-include $(TOPDIR)/mk/kernel.mk
-include $(TOPDIR)/mk/modules.mk
-include $(TOPDIR)/mk/kernel-build.mk
-include $(TOPDIR)/mk/image.mk
-
-KERNEL:=$(LINUX_DIR)/arch/x86/boot/bzImage
-
-ifeq ($(FS),ext2-block)
-imageinstall: $(BIN_DIR)/$(ROOTFSTARBALL)
-	@echo "The RootFS tarball is:"
-	@echo "$(BIN_DIR)/$(ROOTFSTARBALL)"
-	@echo "To install everything to CompactFlash use scripts/install.sh"
-endif
-ifeq ($(FS),nfsroot)
-imageinstall: $(BIN_DIR)/$(ROOTFSUSERTARBALL)
-	@cp $(KERNEL) $(BIN_DIR)/${ADK_TARGET}-${FS}-kernel
-	@echo 'The linux kernel is here:'
-	@echo '$(BIN_DIR)/${ADK_TARGET}-${FS}-kernel'
-	@echo 'The nfs root tarball is here:'
-	@echo '${BIN_DIR}/${ROOTFSUSERTARBALL}'
-endif
-ifeq ($(FS),initramfs)
-imageinstall: $(BIN_DIR)/$(INITRAMFS)
-	@cp $(KERNEL) $(BIN_DIR)/${ADK_TARGET}-${FS}-kernel
-	@echo 'The kernel file is:'
-	@echo '${BIN_DIR}/${ADK_TARGET}-${FS}-kernel'
-	@echo 'The initramfs image is:'
-	@echo '${BIN_DIR}/${INITRAMFS}'
-endif
-ifeq ($(FS),initramfs-piggyback)
-imageinstall: ${BUILD_DIR}/${INITRAMFS_PIGGYBACK} createinitramfs
-	@cp $(KERNEL) ${BIN_DIR}/${ADK_TARGET}-${FS}-kernel
-	@echo 'The kernel+initramfs file is:'
-	@echo '${BIN_DIR}/${ADK_TARGET}-${FS}-kernel'
-endif

+ 0 - 2
target/alix2d/files/etc/fstab

@@ -1,2 +0,0 @@
-# <fs>			<mountpoint>	<type>		<opts>		<dump/pass>
-/dev/root		/		ext2		noatime		0 0

+ 0 - 3
target/alix2d/files/etc/inittab

@@ -1,3 +0,0 @@
-::sysinit:/etc/init.d/rcS
-::shutdown:/etc/init.d/rcK
-ttyS0::respawn:/sbin/getty -i -L ttyS0 115200 vt100

+ 0 - 17
target/alix2d/files/etc/mdev.conf

@@ -1,17 +0,0 @@
-rtc0 root:root 660 @ln -sf /dev/rtc0 /dev/rtc
-device-mapper 0:0 660 @mkdir /dev/mapper
-tun 0:0 660 >net/tun
-null 0:0 777
-zero 0:0 666
-u?random 0:0 644
-console 0:0 0600
-ptmx 0:0 666
-ttyS* 0:0 640
-audio root:audio 660 >snd/audio
-dsp root:audio 660 >snd/dsp
-timer root:audio 660 >snd/timer
-controlC0 root:audio 660 >snd/controlC0
-pcmC0D0c root:audio 660 >snd/pcmC0D0c
-pcmC0D0p root:audio 660 >snd/pcmC0D0p
-msr0 root:root 660 @(mkdir -p /dev/cpu/0 && ln -sf /dev/msr0 /dev/cpu/0/msr)
-.* 0:0 644 @/lib/mdev/init

+ 0 - 1301
target/alix2d/kernel.config

@@ -1,1301 +0,0 @@
-#
-# Automatically generated make config: don't edit
-# Linux kernel version: 2.6.34
-# Fri Jul 16 05:47:44 2010
-#
-# CONFIG_64BIT is not set
-CONFIG_X86_32=y
-# CONFIG_X86_64 is not set
-CONFIG_X86=y
-CONFIG_OUTPUT_FORMAT="elf32-i386"
-CONFIG_ARCH_DEFCONFIG="arch/x86/configs/i386_defconfig"
-CONFIG_GENERIC_TIME=y
-CONFIG_GENERIC_CMOS_UPDATE=y
-CONFIG_CLOCKSOURCE_WATCHDOG=y
-CONFIG_GENERIC_CLOCKEVENTS=y
-CONFIG_LOCKDEP_SUPPORT=y
-CONFIG_STACKTRACE_SUPPORT=y
-CONFIG_HAVE_LATENCYTOP_SUPPORT=y
-CONFIG_MMU=y
-CONFIG_ZONE_DMA=y
-# CONFIG_NEED_DMA_MAP_STATE is not set
-CONFIG_GENERIC_ISA_DMA=y
-CONFIG_GENERIC_IOMAP=y
-CONFIG_GENERIC_HWEIGHT=y
-CONFIG_GENERIC_GPIO=y
-CONFIG_ARCH_MAY_HAVE_PC_FDC=y
-# CONFIG_RWSEM_GENERIC_SPINLOCK is not set
-CONFIG_RWSEM_XCHGADD_ALGORITHM=y
-CONFIG_ARCH_HAS_CPU_IDLE_WAIT=y
-CONFIG_GENERIC_CALIBRATE_DELAY=y
-# CONFIG_GENERIC_TIME_VSYSCALL is not set
-CONFIG_ARCH_HAS_CPU_RELAX=y
-CONFIG_ARCH_HAS_DEFAULT_IDLE=y
-CONFIG_ARCH_HAS_CACHE_LINE_SIZE=y
-CONFIG_HAVE_SETUP_PER_CPU_AREA=y
-CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK=y
-CONFIG_NEED_PER_CPU_PAGE_FIRST_CHUNK=y
-# CONFIG_HAVE_CPUMASK_OF_CPU_MAP is not set
-CONFIG_ARCH_HIBERNATION_POSSIBLE=y
-CONFIG_ARCH_SUSPEND_POSSIBLE=y
-# CONFIG_ZONE_DMA32 is not set
-CONFIG_ARCH_POPULATES_NODE_MAP=y
-# CONFIG_AUDIT_ARCH is not set
-CONFIG_ARCH_SUPPORTS_OPTIMIZED_INLINING=y
-CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y
-CONFIG_HAVE_EARLY_RES=y
-CONFIG_GENERIC_HARDIRQS=y
-CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
-CONFIG_GENERIC_IRQ_PROBE=y
-CONFIG_X86_32_LAZY_GS=y
-CONFIG_KTIME_SCALAR=y
-CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
-CONFIG_CONSTRUCTORS=y
-
-#
-# General setup
-#
-CONFIG_EXPERIMENTAL=y
-CONFIG_BROKEN_ON_SMP=y
-CONFIG_INIT_ENV_ARG_LIMIT=32
-CONFIG_LOCALVERSION=""
-# CONFIG_LOCALVERSION_AUTO is not set
-CONFIG_HAVE_KERNEL_GZIP=y
-CONFIG_HAVE_KERNEL_BZIP2=y
-CONFIG_HAVE_KERNEL_LZMA=y
-CONFIG_HAVE_KERNEL_LZO=y
-# CONFIG_KERNEL_GZIP is not set
-# CONFIG_KERNEL_BZIP2 is not set
-CONFIG_KERNEL_LZMA=y
-# CONFIG_KERNEL_LZO is not set
-# CONFIG_SWAP is not set
-CONFIG_SYSVIPC=y
-CONFIG_SYSVIPC_SYSCTL=y
-CONFIG_POSIX_MQUEUE=y
-CONFIG_POSIX_MQUEUE_SYSCTL=y
-# CONFIG_BSD_PROCESS_ACCT is not set
-# CONFIG_TASKSTATS is not set
-# CONFIG_AUDIT is not set
-
-#
-# RCU Subsystem
-#
-CONFIG_TREE_RCU=y
-# CONFIG_TREE_PREEMPT_RCU is not set
-# CONFIG_TINY_RCU is not set
-# CONFIG_RCU_TRACE is not set
-CONFIG_RCU_FANOUT=32
-# CONFIG_RCU_FANOUT_EXACT is not set
-# CONFIG_TREE_RCU_TRACE is not set
-# CONFIG_IKCONFIG is not set
-CONFIG_LOG_BUF_SHIFT=14
-CONFIG_HAVE_UNSTABLE_SCHED_CLOCK=y
-# CONFIG_CGROUPS is not set
-# CONFIG_SYSFS_DEPRECATED_V2 is not set
-# CONFIG_RELAY is not set
-# CONFIG_NAMESPACES is not set
-# CONFIG_BLK_DEV_INITRD is not set
-CONFIG_CC_OPTIMIZE_FOR_SIZE=y
-CONFIG_SYSCTL=y
-CONFIG_ANON_INODES=y
-CONFIG_EMBEDDED=y
-CONFIG_UID16=y
-CONFIG_SYSCTL_SYSCALL=y
-# CONFIG_KALLSYMS is not set
-CONFIG_HOTPLUG=y
-CONFIG_PRINTK=y
-# CONFIG_BUG is not set
-# CONFIG_ELF_CORE is not set
-# CONFIG_PCSPKR_PLATFORM is not set
-CONFIG_BASE_FULL=y
-CONFIG_FUTEX=y
-CONFIG_EPOLL=y
-CONFIG_SIGNALFD=y
-CONFIG_TIMERFD=y
-CONFIG_EVENTFD=y
-CONFIG_SHMEM=y
-# CONFIG_AIO is not set
-CONFIG_HAVE_PERF_EVENTS=y
-
-#
-# Kernel Performance Events And Counters
-#
-CONFIG_PERF_EVENTS=y
-# CONFIG_PERF_COUNTERS is not set
-# CONFIG_VM_EVENT_COUNTERS is not set
-# CONFIG_PCI_QUIRKS is not set
-# CONFIG_COMPAT_BRK is not set
-CONFIG_SLAB=y
-# CONFIG_SLUB is not set
-# CONFIG_SLOB is not set
-# CONFIG_PROFILING is not set
-CONFIG_HAVE_OPROFILE=y
-CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS=y
-CONFIG_HAVE_IOREMAP_PROT=y
-CONFIG_HAVE_KPROBES=y
-CONFIG_HAVE_KRETPROBES=y
-CONFIG_HAVE_OPTPROBES=y
-CONFIG_HAVE_ARCH_TRACEHOOK=y
-CONFIG_HAVE_DMA_ATTRS=y
-CONFIG_HAVE_REGS_AND_STACK_ACCESS_API=y
-CONFIG_HAVE_DMA_API_DEBUG=y
-CONFIG_HAVE_HW_BREAKPOINT=y
-CONFIG_HAVE_USER_RETURN_NOTIFIER=y
-
-#
-# GCOV-based kernel profiling
-#
-# CONFIG_SLOW_WORK is not set
-CONFIG_HAVE_GENERIC_DMA_COHERENT=y
-CONFIG_SLABINFO=y
-CONFIG_RT_MUTEXES=y
-CONFIG_BASE_SMALL=0
-CONFIG_MODULES=y
-# CONFIG_MODULE_FORCE_LOAD is not set
-CONFIG_MODULE_UNLOAD=y
-# CONFIG_MODULE_FORCE_UNLOAD is not set
-# CONFIG_MODVERSIONS is not set
-# CONFIG_MODULE_SRCVERSION_ALL is not set
-CONFIG_BLOCK=y
-# CONFIG_LBDAF is not set
-# CONFIG_BLK_DEV_BSG is not set
-# CONFIG_BLK_DEV_INTEGRITY is not set
-
-#
-# IO Schedulers
-#
-CONFIG_IOSCHED_NOOP=y
-# CONFIG_IOSCHED_DEADLINE is not set
-# CONFIG_IOSCHED_CFQ is not set
-# CONFIG_DEFAULT_DEADLINE is not set
-# CONFIG_DEFAULT_CFQ is not set
-CONFIG_DEFAULT_NOOP=y
-CONFIG_DEFAULT_IOSCHED="noop"
-# CONFIG_INLINE_SPIN_TRYLOCK is not set
-# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set
-# CONFIG_INLINE_SPIN_LOCK is not set
-# CONFIG_INLINE_SPIN_LOCK_BH is not set
-# CONFIG_INLINE_SPIN_LOCK_IRQ is not set
-# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set
-CONFIG_INLINE_SPIN_UNLOCK=y
-# CONFIG_INLINE_SPIN_UNLOCK_BH is not set
-CONFIG_INLINE_SPIN_UNLOCK_IRQ=y
-# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set
-# CONFIG_INLINE_READ_TRYLOCK is not set
-# CONFIG_INLINE_READ_LOCK is not set
-# CONFIG_INLINE_READ_LOCK_BH is not set
-# CONFIG_INLINE_READ_LOCK_IRQ is not set
-# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set
-CONFIG_INLINE_READ_UNLOCK=y
-# CONFIG_INLINE_READ_UNLOCK_BH is not set
-CONFIG_INLINE_READ_UNLOCK_IRQ=y
-# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set
-# CONFIG_INLINE_WRITE_TRYLOCK is not set
-# CONFIG_INLINE_WRITE_LOCK is not set
-# CONFIG_INLINE_WRITE_LOCK_BH is not set
-# CONFIG_INLINE_WRITE_LOCK_IRQ is not set
-# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set
-CONFIG_INLINE_WRITE_UNLOCK=y
-# CONFIG_INLINE_WRITE_UNLOCK_BH is not set
-CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
-# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set
-# CONFIG_MUTEX_SPIN_ON_OWNER is not set
-# CONFIG_FREEZER is not set
-
-#
-# Processor type and features
-#
-CONFIG_TICK_ONESHOT=y
-CONFIG_NO_HZ=y
-CONFIG_HIGH_RES_TIMERS=y
-CONFIG_GENERIC_CLOCKEVENTS_BUILD=y
-# CONFIG_SMP is not set
-# CONFIG_X86_EXTENDED_PLATFORM is not set
-CONFIG_SCHED_OMIT_FRAME_POINTER=y
-# CONFIG_PARAVIRT_GUEST is not set
-CONFIG_NO_BOOTMEM=y
-# CONFIG_MEMTEST is not set
-# CONFIG_M386 is not set
-# CONFIG_M486 is not set
-# CONFIG_M586 is not set
-# CONFIG_M586TSC is not set
-# CONFIG_M586MMX is not set
-# CONFIG_M686 is not set
-# CONFIG_MPENTIUMII is not set
-# CONFIG_MPENTIUMIII is not set
-# CONFIG_MPENTIUMM is not set
-# CONFIG_MPENTIUM4 is not set
-# CONFIG_MK6 is not set
-# CONFIG_MK7 is not set
-# CONFIG_MK8 is not set
-# CONFIG_MCRUSOE is not set
-# CONFIG_MEFFICEON is not set
-# CONFIG_MWINCHIPC6 is not set
-# CONFIG_MWINCHIP3D is not set
-# CONFIG_MGEODEGX1 is not set
-CONFIG_MGEODE_LX=y
-# CONFIG_MCYRIXIII is not set
-# CONFIG_MVIAC3_2 is not set
-# CONFIG_MVIAC7 is not set
-# CONFIG_MPSC is not set
-# CONFIG_MCORE2 is not set
-# CONFIG_MATOM is not set
-# CONFIG_GENERIC_CPU is not set
-# CONFIG_X86_GENERIC is not set
-CONFIG_X86_CPU=y
-CONFIG_X86_INTERNODE_CACHE_SHIFT=5
-CONFIG_X86_CMPXCHG=y
-CONFIG_X86_L1_CACHE_SHIFT=5
-CONFIG_X86_XADD=y
-CONFIG_X86_WP_WORKS_OK=y
-CONFIG_X86_INVLPG=y
-CONFIG_X86_BSWAP=y
-CONFIG_X86_POPAD_OK=y
-CONFIG_X86_USE_PPRO_CHECKSUM=y
-CONFIG_X86_USE_3DNOW=y
-CONFIG_X86_TSC=y
-CONFIG_X86_CMOV=y
-CONFIG_X86_MINIMUM_CPU_FAMILY=4
-CONFIG_X86_DEBUGCTLMSR=y
-CONFIG_PROCESSOR_SELECT=y
-# CONFIG_CPU_SUP_INTEL is not set
-# CONFIG_CPU_SUP_CYRIX_32 is not set
-CONFIG_CPU_SUP_AMD=y
-# CONFIG_CPU_SUP_CENTAUR is not set
-# CONFIG_CPU_SUP_TRANSMETA_32 is not set
-# CONFIG_CPU_SUP_UMC_32 is not set
-# CONFIG_X86_DS is not set
-# CONFIG_HPET_TIMER is not set
-# CONFIG_DMI is not set
-# CONFIG_IOMMU_HELPER is not set
-# CONFIG_IOMMU_API is not set
-CONFIG_NR_CPUS=1
-CONFIG_PREEMPT_NONE=y
-# CONFIG_PREEMPT_VOLUNTARY is not set
-# CONFIG_PREEMPT is not set
-# CONFIG_X86_UP_APIC is not set
-# CONFIG_X86_MCE is not set
-# CONFIG_VM86 is not set
-# CONFIG_TOSHIBA is not set
-# CONFIG_I8K is not set
-# CONFIG_X86_REBOOTFIXUPS is not set
-# CONFIG_MICROCODE is not set
-CONFIG_X86_MSR=y
-CONFIG_X86_CPUID=y
-CONFIG_NOHIGHMEM=y
-# CONFIG_HIGHMEM4G is not set
-# CONFIG_HIGHMEM64G is not set
-CONFIG_VMSPLIT_3G=y
-# CONFIG_VMSPLIT_3G_OPT is not set
-# CONFIG_VMSPLIT_2G is not set
-# CONFIG_VMSPLIT_2G_OPT is not set
-# CONFIG_VMSPLIT_1G is not set
-CONFIG_PAGE_OFFSET=0xC0000000
-# CONFIG_X86_PAE is not set
-# CONFIG_ARCH_PHYS_ADDR_T_64BIT is not set
-CONFIG_ARCH_FLATMEM_ENABLE=y
-CONFIG_ARCH_SPARSEMEM_ENABLE=y
-CONFIG_ARCH_SELECT_MEMORY_MODEL=y
-CONFIG_ILLEGAL_POINTER_VALUE=0
-CONFIG_SELECT_MEMORY_MODEL=y
-CONFIG_FLATMEM_MANUAL=y
-# CONFIG_DISCONTIGMEM_MANUAL is not set
-# CONFIG_SPARSEMEM_MANUAL is not set
-CONFIG_FLATMEM=y
-CONFIG_FLAT_NODE_MEM_MAP=y
-CONFIG_SPARSEMEM_STATIC=y
-CONFIG_PAGEFLAGS_EXTENDED=y
-CONFIG_SPLIT_PTLOCK_CPUS=4
-# CONFIG_PHYS_ADDR_T_64BIT is not set
-CONFIG_ZONE_DMA_FLAG=1
-CONFIG_BOUNCE=y
-CONFIG_VIRT_TO_BUS=y
-# CONFIG_KSM is not set
-CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
-CONFIG_X86_CHECK_BIOS_CORRUPTION=y
-# CONFIG_X86_BOOTPARAM_MEMORY_CORRUPTION_CHECK is not set
-CONFIG_X86_RESERVE_LOW_64K=y
-# CONFIG_MATH_EMULATION is not set
-# CONFIG_MTRR is not set
-# CONFIG_SECCOMP is not set
-# CONFIG_CC_STACKPROTECTOR is not set
-# CONFIG_HZ_100 is not set
-CONFIG_HZ_250=y
-# CONFIG_HZ_300 is not set
-# CONFIG_HZ_1000 is not set
-CONFIG_HZ=250
-CONFIG_SCHED_HRTICK=y
-# CONFIG_KEXEC is not set
-CONFIG_PHYSICAL_START=0x100000
-# CONFIG_RELOCATABLE is not set
-CONFIG_PHYSICAL_ALIGN=0x100000
-# CONFIG_COMPAT_VDSO is not set
-CONFIG_CMDLINE_BOOL=y
-CONFIG_CMDLINE="console=ttyS0,115200"
-# CONFIG_CMDLINE_OVERRIDE is not set
-
-#
-# Power management and ACPI options
-#
-# CONFIG_PM is not set
-# CONFIG_SFI is not set
-
-#
-# CPU Frequency scaling
-#
-# CONFIG_CPU_FREQ is not set
-# CONFIG_CPU_IDLE is not set
-
-#
-# Bus options (PCI etc.)
-#
-CONFIG_PCI=y
-# CONFIG_PCI_GOBIOS is not set
-# CONFIG_PCI_GOMMCONFIG is not set
-# CONFIG_PCI_GODIRECT is not set
-# CONFIG_PCI_GOOLPC is not set
-CONFIG_PCI_GOANY=y
-CONFIG_PCI_BIOS=y
-CONFIG_PCI_DIRECT=y
-CONFIG_PCI_DOMAINS=y
-# CONFIG_PCIEPORTBUS is not set
-# CONFIG_ARCH_SUPPORTS_MSI is not set
-# CONFIG_PCI_STUB is not set
-# CONFIG_PCI_IOV is not set
-CONFIG_ISA_DMA_API=y
-# CONFIG_ISA is not set
-# CONFIG_MCA is not set
-# CONFIG_SCx200 is not set
-# CONFIG_OLPC is not set
-CONFIG_K8_NB=y
-# CONFIG_PCCARD is not set
-# CONFIG_HOTPLUG_PCI is not set
-
-#
-# Executable file formats / Emulations
-#
-CONFIG_BINFMT_ELF=y
-CONFIG_HAVE_AOUT=y
-# CONFIG_BINFMT_AOUT is not set
-# CONFIG_BINFMT_MISC is not set
-CONFIG_HAVE_ATOMIC_IOMAP=y
-CONFIG_NET=y
-
-#
-# Networking options
-#
-CONFIG_PACKET=y
-CONFIG_UNIX=y
-# CONFIG_NET_KEY is not set
-CONFIG_INET=y
-# CONFIG_IP_MULTICAST is not set
-# CONFIG_IP_ADVANCED_ROUTER is not set
-CONFIG_IP_FIB_HASH=y
-# CONFIG_IP_PNP is not set
-# CONFIG_NET_IPIP is not set
-# CONFIG_NET_IPGRE is not set
-# CONFIG_ARPD is not set
-# CONFIG_SYN_COOKIES is not set
-# CONFIG_INET_AH is not set
-# CONFIG_INET_ESP is not set
-# CONFIG_INET_IPCOMP is not set
-# CONFIG_INET_XFRM_TUNNEL is not set
-# CONFIG_INET_TUNNEL is not set
-# CONFIG_INET_XFRM_MODE_TRANSPORT is not set
-# CONFIG_INET_XFRM_MODE_TUNNEL is not set
-# CONFIG_INET_XFRM_MODE_BEET is not set
-# CONFIG_INET_LRO is not set
-# CONFIG_INET_DIAG is not set
-# CONFIG_TCP_CONG_ADVANCED is not set
-CONFIG_TCP_CONG_CUBIC=y
-CONFIG_DEFAULT_TCP_CONG="cubic"
-# CONFIG_TCP_MD5SIG is not set
-# CONFIG_IPV6 is not set
-# CONFIG_NETWORK_SECMARK is not set
-# CONFIG_NETFILTER is not set
-# CONFIG_IP_DCCP is not set
-# CONFIG_IP_SCTP is not set
-# CONFIG_RDS is not set
-# CONFIG_TIPC is not set
-# CONFIG_ATM is not set
-# CONFIG_BRIDGE is not set
-# CONFIG_NET_DSA is not set
-# CONFIG_VLAN_8021Q is not set
-# CONFIG_DECNET is not set
-# CONFIG_LLC2 is not set
-# CONFIG_IPX is not set
-# CONFIG_ATALK is not set
-# CONFIG_X25 is not set
-# CONFIG_LAPB is not set
-# CONFIG_ECONET is not set
-# CONFIG_WAN_ROUTER is not set
-# CONFIG_PHONET is not set
-# CONFIG_IEEE802154 is not set
-# CONFIG_NET_SCHED is not set
-# CONFIG_DCB is not set
-
-#
-# Network testing
-#
-# CONFIG_NET_PKTGEN is not set
-# CONFIG_HAMRADIO is not set
-# CONFIG_CAN is not set
-# CONFIG_IRDA is not set
-# CONFIG_BT is not set
-# CONFIG_AF_RXRPC is not set
-CONFIG_WIRELESS=y
-# CONFIG_CFG80211 is not set
-# CONFIG_LIB80211 is not set
-
-#
-# CFG80211 needs to be enabled for MAC80211
-#
-# CONFIG_WIMAX is not set
-# CONFIG_RFKILL is not set
-# CONFIG_NET_9P is not set
-
-#
-# Device Drivers
-#
-
-#
-# Generic Driver Options
-#
-CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
-CONFIG_DEVTMPFS=y
-CONFIG_DEVTMPFS_MOUNT=y
-# CONFIG_STANDALONE is not set
-# CONFIG_PREVENT_FIRMWARE_BUILD is not set
-# CONFIG_FW_LOADER is not set
-# CONFIG_SYS_HYPERVISOR is not set
-# CONFIG_CONNECTOR is not set
-# CONFIG_MTD is not set
-# CONFIG_PARPORT is not set
-CONFIG_BLK_DEV=y
-# CONFIG_BLK_DEV_FD is not set
-# CONFIG_BLK_CPQ_DA is not set
-# CONFIG_BLK_CPQ_CISS_DA is not set
-# CONFIG_BLK_DEV_DAC960 is not set
-# CONFIG_BLK_DEV_UMEM is not set
-# CONFIG_BLK_DEV_COW_COMMON is not set
-# CONFIG_BLK_DEV_LOOP is not set
-
-#
-# DRBD disabled because PROC_FS, INET or CONNECTOR not selected
-#
-# CONFIG_BLK_DEV_NBD is not set
-# CONFIG_BLK_DEV_SX8 is not set
-# CONFIG_BLK_DEV_RAM is not set
-# CONFIG_CDROM_PKTCDVD is not set
-# CONFIG_ATA_OVER_ETH is not set
-# CONFIG_BLK_DEV_HD is not set
-CONFIG_MISC_DEVICES=y
-# CONFIG_PHANTOM is not set
-# CONFIG_SGI_IOC4 is not set
-# CONFIG_TIFM_CORE is not set
-# CONFIG_ENCLOSURE_SERVICES is not set
-CONFIG_CS5535_MFGPT=y
-CONFIG_CS5535_MFGPT_DEFAULT_IRQ=7
-CONFIG_CS5535_CLOCK_EVENT_SRC=y
-# CONFIG_HP_ILO is not set
-# CONFIG_VMWARE_BALLOON is not set
-# CONFIG_C2PORT is not set
-
-#
-# EEPROM support
-#
-# CONFIG_EEPROM_93CX6 is not set
-# CONFIG_CB710_CORE is not set
-CONFIG_HAVE_IDE=y
-# CONFIG_IDE is not set
-
-#
-# SCSI device support
-#
-CONFIG_SCSI_MOD=y
-# CONFIG_RAID_ATTRS is not set
-CONFIG_SCSI=y
-CONFIG_SCSI_DMA=y
-# CONFIG_SCSI_TGT is not set
-# CONFIG_SCSI_NETLINK is not set
-# CONFIG_SCSI_PROC_FS is not set
-
-#
-# SCSI support type (disk, tape, CD-ROM)
-#
-CONFIG_BLK_DEV_SD=y
-# CONFIG_CHR_DEV_ST is not set
-# CONFIG_CHR_DEV_OSST is not set
-# CONFIG_BLK_DEV_SR is not set
-# CONFIG_CHR_DEV_SG is not set
-# CONFIG_CHR_DEV_SCH is not set
-# CONFIG_SCSI_MULTI_LUN is not set
-# CONFIG_SCSI_CONSTANTS is not set
-# CONFIG_SCSI_LOGGING is not set
-# CONFIG_SCSI_SCAN_ASYNC is not set
-CONFIG_SCSI_WAIT_SCAN=m
-
-#
-# SCSI Transports
-#
-# CONFIG_SCSI_SPI_ATTRS is not set
-# CONFIG_SCSI_FC_ATTRS is not set
-# CONFIG_SCSI_ISCSI_ATTRS is not set
-# CONFIG_SCSI_SAS_LIBSAS is not set
-# CONFIG_SCSI_SRP_ATTRS is not set
-# CONFIG_SCSI_LOWLEVEL is not set
-# CONFIG_SCSI_DH is not set
-# CONFIG_SCSI_OSD_INITIATOR is not set
-CONFIG_ATA=y
-# CONFIG_ATA_NONSTANDARD is not set
-CONFIG_ATA_VERBOSE_ERROR=y
-# CONFIG_SATA_PMP is not set
-# CONFIG_SATA_AHCI is not set
-# CONFIG_SATA_SIL24 is not set
-CONFIG_ATA_SFF=y
-# CONFIG_SATA_SVW is not set
-# CONFIG_ATA_PIIX is not set
-# CONFIG_SATA_MV is not set
-# CONFIG_SATA_NV is not set
-# CONFIG_PDC_ADMA is not set
-# CONFIG_SATA_QSTOR is not set
-# CONFIG_SATA_PROMISE is not set
-# CONFIG_SATA_SX4 is not set
-# CONFIG_SATA_SIL is not set
-# CONFIG_SATA_SIS is not set
-# CONFIG_SATA_ULI is not set
-# CONFIG_SATA_VIA is not set
-# CONFIG_SATA_VITESSE is not set
-# CONFIG_SATA_INIC162X is not set
-# CONFIG_PATA_ALI is not set
-CONFIG_PATA_AMD=y
-# CONFIG_PATA_ARTOP is not set
-# CONFIG_PATA_ATP867X is not set
-# CONFIG_PATA_ATIIXP is not set
-# CONFIG_PATA_CMD640_PCI is not set
-# CONFIG_PATA_CMD64X is not set
-# CONFIG_PATA_CS5520 is not set
-# CONFIG_PATA_CS5530 is not set
-# CONFIG_PATA_CS5535 is not set
-# CONFIG_PATA_CS5536 is not set
-# CONFIG_PATA_CYPRESS is not set
-# CONFIG_PATA_EFAR is not set
-# CONFIG_ATA_GENERIC is not set
-# CONFIG_PATA_HPT366 is not set
-# CONFIG_PATA_HPT37X is not set
-# CONFIG_PATA_HPT3X2N is not set
-# CONFIG_PATA_HPT3X3 is not set
-# CONFIG_PATA_IT821X is not set
-# CONFIG_PATA_IT8213 is not set
-# CONFIG_PATA_JMICRON is not set
-# CONFIG_PATA_LEGACY is not set
-# CONFIG_PATA_TRIFLEX is not set
-# CONFIG_PATA_MARVELL is not set
-# CONFIG_PATA_MPIIX is not set
-# CONFIG_PATA_OLDPIIX is not set
-# CONFIG_PATA_NETCELL is not set
-# CONFIG_PATA_NINJA32 is not set
-# CONFIG_PATA_NS87410 is not set
-# CONFIG_PATA_NS87415 is not set
-# CONFIG_PATA_OPTI is not set
-# CONFIG_PATA_OPTIDMA is not set
-# CONFIG_PATA_PDC2027X is not set
-# CONFIG_PATA_PDC_OLD is not set
-# CONFIG_PATA_RADISYS is not set
-# CONFIG_PATA_RDC is not set
-# CONFIG_PATA_RZ1000 is not set
-# CONFIG_PATA_SC1200 is not set
-# CONFIG_PATA_SERVERWORKS is not set
-# CONFIG_PATA_SIL680 is not set
-# CONFIG_PATA_SIS is not set
-# CONFIG_PATA_TOSHIBA is not set
-# CONFIG_PATA_VIA is not set
-# CONFIG_PATA_WINBOND is not set
-# CONFIG_PATA_PLATFORM is not set
-# CONFIG_PATA_SCH is not set
-# CONFIG_MD is not set
-# CONFIG_FUSION is not set
-
-#
-# IEEE 1394 (FireWire) support
-#
-
-#
-# You can enable one or both FireWire driver stacks.
-#
-
-#
-# The newer stack is recommended.
-#
-# CONFIG_FIREWIRE is not set
-# CONFIG_IEEE1394 is not set
-# CONFIG_I2O is not set
-# CONFIG_MACINTOSH_DRIVERS is not set
-CONFIG_NETDEVICES=y
-# CONFIG_DUMMY is not set
-# CONFIG_BONDING is not set
-# CONFIG_MACVLAN is not set
-# CONFIG_EQUALIZER is not set
-# CONFIG_TUN is not set
-# CONFIG_VETH is not set
-# CONFIG_ARCNET is not set
-CONFIG_PHYLIB=y
-
-#
-# MII PHY device drivers
-#
-# CONFIG_MARVELL_PHY is not set
-# CONFIG_DAVICOM_PHY is not set
-# CONFIG_QSEMI_PHY is not set
-# CONFIG_LXT_PHY is not set
-# CONFIG_CICADA_PHY is not set
-# CONFIG_VITESSE_PHY is not set
-# CONFIG_SMSC_PHY is not set
-# CONFIG_BROADCOM_PHY is not set
-# CONFIG_ICPLUS_PHY is not set
-# CONFIG_REALTEK_PHY is not set
-# CONFIG_NATIONAL_PHY is not set
-# CONFIG_STE10XP is not set
-# CONFIG_LSI_ET1011C_PHY is not set
-# CONFIG_MICREL_PHY is not set
-# CONFIG_FIXED_PHY is not set
-# CONFIG_MDIO_BITBANG is not set
-CONFIG_NET_ETHERNET=y
-CONFIG_MII=y
-# CONFIG_HAPPYMEAL is not set
-# CONFIG_SUNGEM is not set
-# CONFIG_CASSINI is not set
-# CONFIG_NET_VENDOR_3COM is not set
-# CONFIG_ETHOC is not set
-# CONFIG_DNET is not set
-# CONFIG_NET_TULIP is not set
-# CONFIG_HP100 is not set
-# CONFIG_IBM_NEW_EMAC_ZMII is not set
-# CONFIG_IBM_NEW_EMAC_RGMII is not set
-# CONFIG_IBM_NEW_EMAC_TAH is not set
-# CONFIG_IBM_NEW_EMAC_EMAC4 is not set
-# CONFIG_IBM_NEW_EMAC_NO_FLOW_CTRL is not set
-# CONFIG_IBM_NEW_EMAC_MAL_CLR_ICINTSTAT is not set
-# CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR is not set
-CONFIG_NET_PCI=y
-# CONFIG_PCNET32 is not set
-# CONFIG_AMD8111_ETH is not set
-# CONFIG_ADAPTEC_STARFIRE is not set
-# CONFIG_KSZ884X_PCI is not set
-# CONFIG_B44 is not set
-# CONFIG_FORCEDETH is not set
-# CONFIG_E100 is not set
-# CONFIG_FEALNX is not set
-# CONFIG_NATSEMI is not set
-# CONFIG_NE2K_PCI is not set
-# CONFIG_8139CP is not set
-# CONFIG_8139TOO is not set
-# CONFIG_R6040 is not set
-# CONFIG_SIS900 is not set
-# CONFIG_EPIC100 is not set
-# CONFIG_SMSC9420 is not set
-# CONFIG_SUNDANCE is not set
-# CONFIG_TLAN is not set
-# CONFIG_KS8842 is not set
-# CONFIG_KS8851_MLL is not set
-CONFIG_VIA_RHINE=y
-CONFIG_VIA_RHINE_MMIO=y
-# CONFIG_SC92031 is not set
-# CONFIG_ATL2 is not set
-# CONFIG_NETDEV_1000 is not set
-# CONFIG_NETDEV_10000 is not set
-# CONFIG_TR is not set
-CONFIG_WLAN=y
-# CONFIG_AIRO is not set
-# CONFIG_ATMEL is not set
-# CONFIG_PRISM54 is not set
-# CONFIG_HOSTAP is not set
-
-#
-# Enable WiMAX (Networking options) to see the WiMAX drivers
-#
-# CONFIG_WAN is not set
-# CONFIG_FDDI is not set
-# CONFIG_HIPPI is not set
-# CONFIG_PPP is not set
-# CONFIG_SLIP is not set
-# CONFIG_NET_FC is not set
-# CONFIG_NETCONSOLE is not set
-# CONFIG_NETPOLL is not set
-# CONFIG_NET_POLL_CONTROLLER is not set
-# CONFIG_VMXNET3 is not set
-# CONFIG_ISDN is not set
-# CONFIG_PHONE is not set
-
-#
-# Input device support
-#
-# CONFIG_INPUT is not set
-
-#
-# Hardware I/O ports
-#
-# CONFIG_SERIO is not set
-# CONFIG_GAMEPORT is not set
-
-#
-# Character devices
-#
-# CONFIG_VT is not set
-# CONFIG_DEVKMEM is not set
-# CONFIG_SERIAL_NONSTANDARD is not set
-# CONFIG_NOZOMI is not set
-
-#
-# Serial drivers
-#
-CONFIG_SERIAL_8250=y
-CONFIG_SERIAL_8250_CONSOLE=y
-CONFIG_FIX_EARLYCON_MEM=y
-# CONFIG_SERIAL_8250_PCI is not set
-CONFIG_SERIAL_8250_NR_UARTS=2
-CONFIG_SERIAL_8250_RUNTIME_UARTS=2
-# CONFIG_SERIAL_8250_EXTENDED is not set
-
-#
-# Non-8250 serial port support
-#
-CONFIG_SERIAL_CORE=y
-CONFIG_SERIAL_CORE_CONSOLE=y
-# CONFIG_SERIAL_JSM is not set
-# CONFIG_SERIAL_TIMBERDALE is not set
-CONFIG_UNIX98_PTYS=y
-# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
-# CONFIG_LEGACY_PTYS is not set
-# CONFIG_IPMI_HANDLER is not set
-CONFIG_HW_RANDOM=y
-# CONFIG_HW_RANDOM_TIMERIOMEM is not set
-# CONFIG_HW_RANDOM_INTEL is not set
-# CONFIG_HW_RANDOM_AMD is not set
-CONFIG_HW_RANDOM_GEODE=y
-# CONFIG_HW_RANDOM_VIA is not set
-# CONFIG_NVRAM is not set
-# CONFIG_R3964 is not set
-# CONFIG_APPLICOM is not set
-# CONFIG_MWAVE is not set
-# CONFIG_PC8736x_GPIO is not set
-# CONFIG_NSC_GPIO is not set
-# CONFIG_CS5535_GPIO is not set
-# CONFIG_RAW_DRIVER is not set
-# CONFIG_HANGCHECK_TIMER is not set
-# CONFIG_TCG_TPM is not set
-# CONFIG_TELCLOCK is not set
-CONFIG_DEVPORT=y
-# CONFIG_I2C is not set
-# CONFIG_SPI is not set
-
-#
-# PPS support
-#
-# CONFIG_PPS is not set
-CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y
-CONFIG_GPIOLIB=y
-# CONFIG_GPIO_SYSFS is not set
-
-#
-# Memory mapped GPIO expanders:
-#
-# CONFIG_GPIO_IT8761E is not set
-# CONFIG_GPIO_SCH is not set
-
-#
-# I2C GPIO expanders:
-#
-
-#
-# PCI GPIO expanders:
-#
-# CONFIG_GPIO_CS5535 is not set
-# CONFIG_GPIO_BT8XX is not set
-# CONFIG_GPIO_LANGWELL is not set
-
-#
-# SPI GPIO expanders:
-#
-
-#
-# AC97 GPIO expanders:
-#
-# CONFIG_W1 is not set
-# CONFIG_POWER_SUPPLY is not set
-# CONFIG_HWMON is not set
-# CONFIG_THERMAL is not set
-CONFIG_WATCHDOG=y
-# CONFIG_WATCHDOG_NOWAYOUT is not set
-
-#
-# Watchdog Device Drivers
-#
-# CONFIG_SOFT_WATCHDOG is not set
-# CONFIG_ACQUIRE_WDT is not set
-# CONFIG_ADVANTECH_WDT is not set
-# CONFIG_ALIM1535_WDT is not set
-# CONFIG_ALIM7101_WDT is not set
-CONFIG_GEODE_WDT=y
-# CONFIG_SC520_WDT is not set
-# CONFIG_SBC_FITPC2_WATCHDOG is not set
-# CONFIG_EUROTECH_WDT is not set
-# CONFIG_IB700_WDT is not set
-# CONFIG_IBMASR is not set
-# CONFIG_WAFER_WDT is not set
-# CONFIG_I6300ESB_WDT is not set
-# CONFIG_ITCO_WDT is not set
-# CONFIG_IT8712F_WDT is not set
-# CONFIG_IT87_WDT is not set
-# CONFIG_HP_WATCHDOG is not set
-# CONFIG_SC1200_WDT is not set
-# CONFIG_PC87413_WDT is not set
-# CONFIG_60XX_WDT is not set
-# CONFIG_SBC8360_WDT is not set
-# CONFIG_SBC7240_WDT is not set
-# CONFIG_CPU5_WDT is not set
-# CONFIG_SMSC_SCH311X_WDT is not set
-# CONFIG_SMSC37B787_WDT is not set
-# CONFIG_W83627HF_WDT is not set
-# CONFIG_W83697HF_WDT is not set
-# CONFIG_W83697UG_WDT is not set
-# CONFIG_W83877F_WDT is not set
-# CONFIG_W83977F_WDT is not set
-# CONFIG_MACHZ_WDT is not set
-# CONFIG_SBC_EPX_C3_WATCHDOG is not set
-
-#
-# PCI-based Watchdog Cards
-#
-# CONFIG_PCIPCWATCHDOG is not set
-# CONFIG_WDTPCI is not set
-CONFIG_SSB_POSSIBLE=y
-
-#
-# Sonics Silicon Backplane
-#
-# CONFIG_SSB is not set
-
-#
-# Multifunction device drivers
-#
-# CONFIG_MFD_CORE is not set
-# CONFIG_MFD_SM501 is not set
-# CONFIG_HTC_PASIC3 is not set
-# CONFIG_MFD_TMIO is not set
-# CONFIG_MFD_TIMBERDALE is not set
-# CONFIG_LPC_SCH is not set
-# CONFIG_REGULATOR is not set
-# CONFIG_MEDIA_SUPPORT is not set
-
-#
-# Graphics support
-#
-# CONFIG_AGP is not set
-# CONFIG_VGA_ARB is not set
-# CONFIG_DRM is not set
-# CONFIG_VGASTATE is not set
-# CONFIG_VIDEO_OUTPUT_CONTROL is not set
-# CONFIG_FB is not set
-# CONFIG_BACKLIGHT_LCD_SUPPORT is not set
-
-#
-# Display device support
-#
-# CONFIG_DISPLAY_SUPPORT is not set
-# CONFIG_SOUND is not set
-CONFIG_USB_SUPPORT=y
-CONFIG_USB_ARCH_HAS_HCD=y
-CONFIG_USB_ARCH_HAS_OHCI=y
-CONFIG_USB_ARCH_HAS_EHCI=y
-# CONFIG_USB is not set
-# CONFIG_USB_OTG_WHITELIST is not set
-# CONFIG_USB_OTG_BLACKLIST_HUB is not set
-
-#
-# Enable Host or Gadget support to see Inventra options
-#
-
-#
-# NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may
-#
-# CONFIG_USB_GADGET is not set
-
-#
-# OTG and related infrastructure
-#
-# CONFIG_UWB is not set
-# CONFIG_MMC is not set
-# CONFIG_MEMSTICK is not set
-CONFIG_NEW_LEDS=y
-CONFIG_LEDS_CLASS=y
-
-#
-# LED drivers
-#
-CONFIG_LEDS_ALIX2=y
-# CONFIG_LEDS_GPIO is not set
-# CONFIG_LEDS_LT3593 is not set
-# CONFIG_LEDS_TRIGGERS is not set
-# CONFIG_ACCESSIBILITY is not set
-# CONFIG_INFINIBAND is not set
-# CONFIG_EDAC is not set
-CONFIG_RTC_LIB=y
-CONFIG_RTC_CLASS=y
-CONFIG_RTC_HCTOSYS=y
-CONFIG_RTC_HCTOSYS_DEVICE="rtc0"
-# CONFIG_RTC_DEBUG is not set
-
-#
-# RTC interfaces
-#
-CONFIG_RTC_INTF_SYSFS=y
-CONFIG_RTC_INTF_PROC=y
-CONFIG_RTC_INTF_DEV=y
-# CONFIG_RTC_INTF_DEV_UIE_EMUL is not set
-# CONFIG_RTC_DRV_TEST is not set
-
-#
-# SPI RTC drivers
-#
-
-#
-# Platform RTC drivers
-#
-CONFIG_RTC_DRV_CMOS=y
-# CONFIG_RTC_DRV_DS1286 is not set
-# CONFIG_RTC_DRV_DS1511 is not set
-# CONFIG_RTC_DRV_DS1553 is not set
-# CONFIG_RTC_DRV_DS1742 is not set
-# CONFIG_RTC_DRV_STK17TA8 is not set
-# CONFIG_RTC_DRV_M48T86 is not set
-# CONFIG_RTC_DRV_M48T35 is not set
-# CONFIG_RTC_DRV_M48T59 is not set
-# CONFIG_RTC_DRV_MSM6242 is not set
-# CONFIG_RTC_DRV_BQ4802 is not set
-# CONFIG_RTC_DRV_RP5C01 is not set
-# CONFIG_RTC_DRV_V3020 is not set
-
-#
-# on-CPU RTC drivers
-#
-# CONFIG_DMADEVICES is not set
-# CONFIG_AUXDISPLAY is not set
-# CONFIG_UIO is not set
-
-#
-# TI VLYNQ
-#
-# CONFIG_STAGING is not set
-# CONFIG_X86_PLATFORM_DEVICES is not set
-
-#
-# Firmware Drivers
-#
-# CONFIG_EDD is not set
-# CONFIG_FIRMWARE_MEMMAP is not set
-# CONFIG_DELL_RBU is not set
-# CONFIG_DCDBAS is not set
-# CONFIG_ISCSI_IBFT_FIND is not set
-
-#
-# File systems
-#
-CONFIG_EXT2_FS=y
-# CONFIG_EXT2_FS_XATTR is not set
-# CONFIG_EXT2_FS_XIP is not set
-# CONFIG_EXT3_FS is not set
-# CONFIG_EXT4_FS is not set
-# CONFIG_REISERFS_FS is not set
-# CONFIG_JFS_FS is not set
-# CONFIG_FS_POSIX_ACL is not set
-# CONFIG_XFS_FS is not set
-# CONFIG_OCFS2_FS is not set
-# CONFIG_BTRFS_FS is not set
-# CONFIG_NILFS2_FS is not set
-# CONFIG_AUFS_FS is not set
-CONFIG_FILE_LOCKING=y
-# CONFIG_FSNOTIFY is not set
-# CONFIG_DNOTIFY is not set
-# CONFIG_INOTIFY is not set
-# CONFIG_INOTIFY_USER is not set
-# CONFIG_QUOTA is not set
-# CONFIG_AUTOFS_FS is not set
-# CONFIG_AUTOFS4_FS is not set
-# CONFIG_FUSE_FS is not set
-
-#
-# Caches
-#
-# CONFIG_FSCACHE is not set
-
-#
-# CD-ROM/DVD Filesystems
-#
-# CONFIG_ISO9660_FS is not set
-# CONFIG_UDF_FS is not set
-
-#
-# DOS/FAT/NT Filesystems
-#
-# CONFIG_MSDOS_FS is not set
-# CONFIG_VFAT_FS is not set
-# CONFIG_NTFS_FS is not set
-
-#
-# Pseudo filesystems
-#
-CONFIG_PROC_FS=y
-# CONFIG_PROC_KCORE is not set
-CONFIG_PROC_SYSCTL=y
-# CONFIG_PROC_PAGE_MONITOR is not set
-CONFIG_SYSFS=y
-CONFIG_TMPFS=y
-# CONFIG_TMPFS_POSIX_ACL is not set
-# CONFIG_HUGETLBFS is not set
-# CONFIG_HUGETLB_PAGE is not set
-# CONFIG_CONFIGFS_FS is not set
-CONFIG_MISC_FILESYSTEMS=y
-# CONFIG_ADFS_FS is not set
-# CONFIG_AFFS_FS is not set
-# CONFIG_HFS_FS is not set
-# CONFIG_HFSPLUS_FS is not set
-# CONFIG_BEFS_FS is not set
-# CONFIG_BFS_FS is not set
-# CONFIG_EFS_FS is not set
-# CONFIG_LOGFS is not set
-# CONFIG_CRAMFS is not set
-# CONFIG_SQUASHFS is not set
-# CONFIG_VXFS_FS is not set
-# CONFIG_MINIX_FS is not set
-# CONFIG_OMFS_FS is not set
-# CONFIG_HPFS_FS is not set
-# CONFIG_QNX4FS_FS is not set
-# CONFIG_ROMFS_FS is not set
-# CONFIG_SYSV_FS is not set
-# CONFIG_UFS_FS is not set
-CONFIG_NETWORK_FILESYSTEMS=y
-# CONFIG_NFS_FS is not set
-# CONFIG_NFSD is not set
-# CONFIG_SMB_FS is not set
-# CONFIG_CEPH_FS is not set
-# CONFIG_CIFS is not set
-# CONFIG_NCP_FS is not set
-# CONFIG_CODA_FS is not set
-# CONFIG_AFS_FS is not set
-
-#
-# Partition Types
-#
-CONFIG_PARTITION_ADVANCED=y
-# CONFIG_ACORN_PARTITION is not set
-# CONFIG_OSF_PARTITION is not set
-# CONFIG_AMIGA_PARTITION is not set
-# CONFIG_ATARI_PARTITION is not set
-# CONFIG_MAC_PARTITION is not set
-CONFIG_MSDOS_PARTITION=y
-# CONFIG_BSD_DISKLABEL is not set
-# CONFIG_MINIX_SUBPARTITION is not set
-# CONFIG_SOLARIS_X86_PARTITION is not set
-# CONFIG_UNIXWARE_DISKLABEL is not set
-# CONFIG_LDM_PARTITION is not set
-# CONFIG_SGI_PARTITION is not set
-# CONFIG_ULTRIX_PARTITION is not set
-# CONFIG_SUN_PARTITION is not set
-# CONFIG_KARMA_PARTITION is not set
-# CONFIG_EFI_PARTITION is not set
-# CONFIG_SYSV68_PARTITION is not set
-# CONFIG_NLS is not set
-# CONFIG_DLM is not set
-
-#
-# Kernel hacking
-#
-CONFIG_TRACE_IRQFLAGS_SUPPORT=y
-CONFIG_PRINTK_TIME=y
-# CONFIG_ENABLE_WARN_DEPRECATED is not set
-# CONFIG_ENABLE_MUST_CHECK is not set
-CONFIG_FRAME_WARN=1024
-CONFIG_MAGIC_SYSRQ=y
-CONFIG_STRIP_ASM_SYMS=y
-# CONFIG_UNUSED_SYMBOLS is not set
-# CONFIG_DEBUG_FS is not set
-# CONFIG_HEADERS_CHECK is not set
-# CONFIG_DEBUG_KERNEL is not set
-# CONFIG_DEBUG_MEMORY_INIT is not set
-CONFIG_ARCH_WANT_FRAME_POINTERS=y
-# CONFIG_FRAME_POINTER is not set
-# CONFIG_RCU_CPU_STALL_DETECTOR is not set
-# CONFIG_LATENCYTOP is not set
-# CONFIG_SYSCTL_SYSCALL_CHECK is not set
-CONFIG_USER_STACKTRACE_SUPPORT=y
-CONFIG_HAVE_FUNCTION_TRACER=y
-CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y
-CONFIG_HAVE_FUNCTION_GRAPH_FP_TEST=y
-CONFIG_HAVE_FUNCTION_TRACE_MCOUNT_TEST=y
-CONFIG_HAVE_DYNAMIC_FTRACE=y
-CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y
-CONFIG_HAVE_SYSCALL_TRACEPOINTS=y
-CONFIG_TRACING_SUPPORT=y
-# CONFIG_FTRACE is not set
-# CONFIG_PROVIDE_OHCI1394_DMA_INIT is not set
-# CONFIG_DMA_API_DEBUG is not set
-# CONFIG_SAMPLES is not set
-CONFIG_HAVE_ARCH_KGDB=y
-CONFIG_HAVE_ARCH_KMEMCHECK=y
-# CONFIG_STRICT_DEVMEM is not set
-# CONFIG_X86_VERBOSE_BOOTUP is not set
-# CONFIG_EARLY_PRINTK is not set
-# CONFIG_4KSTACKS is not set
-# CONFIG_DOUBLEFAULT is not set
-# CONFIG_IOMMU_STRESS is not set
-CONFIG_HAVE_MMIOTRACE_SUPPORT=y
-CONFIG_IO_DELAY_TYPE_0X80=0
-CONFIG_IO_DELAY_TYPE_0XED=1
-CONFIG_IO_DELAY_TYPE_UDELAY=2
-CONFIG_IO_DELAY_TYPE_NONE=3
-CONFIG_IO_DELAY_0X80=y
-# CONFIG_IO_DELAY_0XED is not set
-# CONFIG_IO_DELAY_UDELAY is not set
-# CONFIG_IO_DELAY_NONE is not set
-CONFIG_DEFAULT_IO_DELAY_TYPE=0
-# CONFIG_OPTIMIZE_INLINING is not set
-
-#
-# Security options
-#
-# CONFIG_KEYS is not set
-# CONFIG_SECURITY is not set
-# CONFIG_SECURITYFS is not set
-# CONFIG_DEFAULT_SECURITY_SELINUX is not set
-# CONFIG_DEFAULT_SECURITY_SMACK is not set
-# CONFIG_DEFAULT_SECURITY_TOMOYO is not set
-CONFIG_DEFAULT_SECURITY_DAC=y
-CONFIG_DEFAULT_SECURITY=""
-CONFIG_CRYPTO=y
-
-#
-# Crypto core or helper
-#
-CONFIG_CRYPTO_ALGAPI=m
-CONFIG_CRYPTO_ALGAPI2=m
-CONFIG_CRYPTO_AEAD2=m
-CONFIG_CRYPTO_BLKCIPHER2=m
-CONFIG_CRYPTO_HASH=m
-CONFIG_CRYPTO_HASH2=m
-CONFIG_CRYPTO_RNG2=m
-CONFIG_CRYPTO_PCOMP=m
-CONFIG_CRYPTO_MANAGER=m
-CONFIG_CRYPTO_MANAGER2=m
-# CONFIG_CRYPTO_GF128MUL is not set
-# CONFIG_CRYPTO_NULL is not set
-CONFIG_CRYPTO_WORKQUEUE=m
-# CONFIG_CRYPTO_CRYPTD is not set
-# CONFIG_CRYPTO_AUTHENC is not set
-# CONFIG_CRYPTO_TEST is not set
-
-#
-# Authenticated Encryption with Associated Data
-#
-# CONFIG_CRYPTO_CCM is not set
-# CONFIG_CRYPTO_GCM is not set
-# CONFIG_CRYPTO_SEQIV is not set
-
-#
-# Block modes
-#
-# CONFIG_CRYPTO_CBC is not set
-# CONFIG_CRYPTO_CTR is not set
-# CONFIG_CRYPTO_CTS is not set
-# CONFIG_CRYPTO_ECB is not set
-# CONFIG_CRYPTO_LRW is not set
-# CONFIG_CRYPTO_PCBC is not set
-# CONFIG_CRYPTO_XTS is not set
-
-#
-# Hash modes
-#
-# CONFIG_CRYPTO_HMAC is not set
-CONFIG_CRYPTO_XCBC=m
-# CONFIG_CRYPTO_VMAC is not set
-
-#
-# Digest
-#
-# CONFIG_CRYPTO_CRC32C is not set
-# CONFIG_CRYPTO_CRC32C_INTEL is not set
-# CONFIG_CRYPTO_GHASH is not set
-# CONFIG_CRYPTO_MD4 is not set
-# CONFIG_CRYPTO_MD5 is not set
-# CONFIG_CRYPTO_MICHAEL_MIC is not set
-# CONFIG_CRYPTO_RMD128 is not set
-# CONFIG_CRYPTO_RMD160 is not set
-# CONFIG_CRYPTO_RMD256 is not set
-# CONFIG_CRYPTO_RMD320 is not set
-# CONFIG_CRYPTO_SHA1 is not set
-# CONFIG_CRYPTO_SHA256 is not set
-# CONFIG_CRYPTO_SHA512 is not set
-# CONFIG_CRYPTO_TGR192 is not set
-# CONFIG_CRYPTO_WP512 is not set
-
-#
-# Ciphers
-#
-# CONFIG_CRYPTO_AES is not set
-# CONFIG_CRYPTO_AES_586 is not set
-# CONFIG_CRYPTO_ANUBIS is not set
-# CONFIG_CRYPTO_ARC4 is not set
-# CONFIG_CRYPTO_BLOWFISH is not set
-# CONFIG_CRYPTO_CAMELLIA is not set
-# CONFIG_CRYPTO_CAST5 is not set
-# CONFIG_CRYPTO_CAST6 is not set
-# CONFIG_CRYPTO_DES is not set
-# CONFIG_CRYPTO_FCRYPT is not set
-# CONFIG_CRYPTO_KHAZAD is not set
-# CONFIG_CRYPTO_SALSA20 is not set
-# CONFIG_CRYPTO_SALSA20_586 is not set
-# CONFIG_CRYPTO_SEED is not set
-# CONFIG_CRYPTO_SERPENT is not set
-# CONFIG_CRYPTO_TEA is not set
-# CONFIG_CRYPTO_TWOFISH is not set
-# CONFIG_CRYPTO_TWOFISH_586 is not set
-
-#
-# Compression
-#
-# CONFIG_CRYPTO_DEFLATE is not set
-# CONFIG_CRYPTO_ZLIB is not set
-# CONFIG_CRYPTO_LZO is not set
-
-#
-# Random Number Generation
-#
-# CONFIG_CRYPTO_ANSI_CPRNG is not set
-# CONFIG_CRYPTO_HW is not set
-
-#
-# OCF Configuration
-#
-# CONFIG_OCF_OCF is not set
-CONFIG_HAVE_KVM=y
-# CONFIG_VIRTUALIZATION is not set
-# CONFIG_BINARY_PRINTF is not set
-
-#
-# Library routines
-#
-CONFIG_BITREVERSE=y
-CONFIG_GENERIC_FIND_FIRST_BIT=y
-CONFIG_GENERIC_FIND_NEXT_BIT=y
-CONFIG_GENERIC_FIND_LAST_BIT=y
-# CONFIG_CRC_CCITT is not set
-# CONFIG_CRC16 is not set
-# CONFIG_CRC_T10DIF is not set
-# CONFIG_CRC_ITU_T is not set
-CONFIG_CRC32=y
-# CONFIG_CRC7 is not set
-# CONFIG_LIBCRC32C is not set
-CONFIG_HAS_IOMEM=y
-CONFIG_HAS_IOPORT=y
-CONFIG_HAS_DMA=y
-CONFIG_NLATTR=y

+ 0 - 7
target/alix2d/target.mk

@@ -1,7 +0,0 @@
-ARCH:=			x86
-CPU_ARCH:=		i586
-KERNEL_VERSION:=	2.6.35.7
-KERNEL_RELEASE:=	1
-KERNEL_MD5SUM:=		f741879bcd3a5366a1bbe0ad5cdb7935
-TARGET_OPTIMIZATION:=	-Os -pipe
-TARGET_CFLAGS_ARCH:=	-march=geode

+ 0 - 241
target/alix2d/uclibc.config

@@ -1,241 +0,0 @@
-#
-# Automatically generated make config: don't edit
-# Version: 0.9.30
-# Mon Dec  1 19:41:35 2008
-#
-# TARGET_alpha is not set
-# TARGET_arm is not set
-# TARGET_avr32 is not set
-# TARGET_bfin is not set
-# TARGET_cris is not set
-# TARGET_e1 is not set
-# TARGET_frv is not set
-# TARGET_h8300 is not set
-# TARGET_hppa is not set
-TARGET_i386=y
-# TARGET_i960 is not set
-# TARGET_ia64 is not set
-# TARGET_m68k is not set
-# TARGET_microblaze is not set
-# TARGET_mips is not set
-# TARGET_nios is not set
-# TARGET_nios2 is not set
-# TARGET_powerpc is not set
-# TARGET_sh is not set
-# TARGET_sh64 is not set
-# TARGET_sparc is not set
-# TARGET_v850 is not set
-# TARGET_vax is not set
-# TARGET_x86_64 is not set
-# TARGET_xtensa is not set
-
-#
-# Target Architecture Features and Options
-#
-TARGET_ARCH="i386"
-FORCE_OPTIONS_FOR_ARCH=y
-# CONFIG_GENERIC_386 is not set
-# CONFIG_386 is not set
-# CONFIG_486 is not set
-CONFIG_586=y
-# CONFIG_586MMX is not set
-# CONFIG_686 is not set
-# CONFIG_PENTIUMII is not set
-# CONFIG_PENTIUMIII is not set
-# CONFIG_PENTIUM4 is not set
-# CONFIG_K6 is not set
-# CONFIG_K7 is not set
-# CONFIG_ELAN is not set
-# CONFIG_CRUSOE is not set
-# CONFIG_WINCHIPC6 is not set
-# CONFIG_WINCHIP2 is not set
-# CONFIG_CYRIXIII is not set
-# CONFIG_NEHEMIAH is not set
-TARGET_SUBARCH=""
-
-#
-# Using ELF file format
-#
-ARCH_LITTLE_ENDIAN=y
-
-#
-# Using Little Endian
-#
-ARCH_HAS_MMU=y
-ARCH_USE_MMU=y
-UCLIBC_HAS_FLOATS=y
-UCLIBC_HAS_FPU=y
-DO_C99_MATH=y
-UCLIBC_HAS_FENV=y
-UCLIBC_HAS_LONG_DOUBLE_MATH=y
-KERNEL_HEADERS=""
-HAVE_DOT_CONFIG=y
-
-#
-# General Library Settings
-#
-# HAVE_NO_PIC is not set
-DOPIC=y
-# ARCH_HAS_NO_SHARED is not set
-# ARCH_HAS_NO_LDSO is not set
-HAVE_SHARED=y
-# FORCE_SHAREABLE_TEXT_SEGMENTS is not set
-LDSO_LDD_SUPPORT=y
-LDSO_CACHE_SUPPORT=y
-# LDSO_PRELOAD_FILE_SUPPORT is not set
-LDSO_BASE_FILENAME="ld.so"
-# UCLIBC_STATIC_LDCONFIG is not set
-LDSO_RUNPATH=y
-UCLIBC_CTOR_DTOR=y
-# LDSO_GNU_HASH_SUPPORT is not set
-# HAS_NO_THREADS is not set
-UCLIBC_HAS_THREADS=y
-PTHREADS_DEBUG_SUPPORT=y
-LINUXTHREADS_OLD=y
-UCLIBC_HAS_SYSLOG=y
-UCLIBC_HAS_LFS=y
-# MALLOC is not set
-# MALLOC_SIMPLE is not set
-MALLOC_STANDARD=y
-MALLOC_GLIBC_COMPAT=y
-UCLIBC_DYNAMIC_ATEXIT=y
-COMPAT_ATEXIT=y
-# UCLIBC_SUSV3_LEGACY is not set
-# UCLIBC_SUSV3_LEGACY_MACROS is not set
-# UCLIBC_HAS_STUBS is not set
-UCLIBC_HAS_SHADOW=y
-UCLIBC_HAS_PROGRAM_INVOCATION_NAME=y
-UCLIBC_HAS___PROGNAME=y
-UCLIBC_HAS_PTY=y
-ASSUME_DEVPTS=y
-UNIX98PTY_ONLY=y
-# UCLIBC_HAS_GETPT is not set
-UCLIBC_HAS_TM_EXTENSIONS=y
-UCLIBC_HAS_TZ_CACHING=y
-UCLIBC_HAS_TZ_FILE=y
-UCLIBC_HAS_TZ_FILE_READ_MANY=y
-UCLIBC_TZ_FILE_PATH="/etc/TZ"
-
-#
-# Advanced Library Settings
-#
-UCLIBC_PWD_BUFFER_SIZE=256
-UCLIBC_GRP_BUFFER_SIZE=256
-
-#
-# Support various families of functions
-#
-# UCLIBC_LINUX_MODULE_24 is not set
-UCLIBC_LINUX_SPECIFIC=y
-UCLIBC_HAS_GNU_ERROR=y
-UCLIBC_BSD_SPECIFIC=y
-UCLIBC_HAS_BSD_ERR=y
-# UCLIBC_HAS_OBSOLETE_BSD_SIGNAL is not set
-# UCLIBC_HAS_OBSOLETE_SYSV_SIGNAL is not set
-# UCLIBC_NTP_LEGACY is not set
-# UCLIBC_SV4_DEPRECATED is not set
-UCLIBC_HAS_REALTIME=y
-UCLIBC_HAS_ADVANCED_REALTIME=y
-UCLIBC_HAS_EPOLL=y
-UCLIBC_HAS_XATTR=y
-# UCLIBC_HAS_PROFILING is not set
-UCLIBC_HAS_CRYPT_IMPL=y
-UCLIBC_HAS_CRYPT=y
-UCLIBC_HAS_NETWORK_SUPPORT=y
-UCLIBC_HAS_SOCKET=y
-UCLIBC_HAS_IPV4=y
-UCLIBC_HAS_IPV6=y
-UCLIBC_HAS_RPC=y
-UCLIBC_HAS_FULL_RPC=y
-UCLIBC_HAS_REENTRANT_RPC=y
-UCLIBC_USE_NETLINK=y
-UCLIBC_SUPPORT_AI_ADDRCONFIG=y
-UCLIBC_HAS_BSD_RES_CLOSE=y
-
-#
-# String and Stdio Support
-#
-UCLIBC_HAS_STRING_GENERIC_OPT=y
-UCLIBC_HAS_STRING_ARCH_OPT=y
-UCLIBC_HAS_CTYPE_TABLES=y
-UCLIBC_HAS_CTYPE_SIGNED=y
-# UCLIBC_HAS_CTYPE_UNSAFE is not set
-UCLIBC_HAS_CTYPE_CHECKED=y
-# UCLIBC_HAS_CTYPE_ENFORCED is not set
-UCLIBC_HAS_WCHAR=y
-# UCLIBC_HAS_LOCALE is not set
-UCLIBC_HAS_HEXADECIMAL_FLOATS=y
-UCLIBC_HAS_GLIBC_CUSTOM_PRINTF=y
-UCLIBC_PRINTF_SCANF_POSITIONAL_ARGS=9
-UCLIBC_HAS_SCANF_GLIBC_A_FLAG=y
-# UCLIBC_HAS_STDIO_BUFSIZ_NONE is not set
-# UCLIBC_HAS_STDIO_BUFSIZ_256 is not set
-# UCLIBC_HAS_STDIO_BUFSIZ_512 is not set
-# UCLIBC_HAS_STDIO_BUFSIZ_1024 is not set
-# UCLIBC_HAS_STDIO_BUFSIZ_2048 is not set
-UCLIBC_HAS_STDIO_BUFSIZ_4096=y
-# UCLIBC_HAS_STDIO_BUFSIZ_8192 is not set
-UCLIBC_HAS_STDIO_BUILTIN_BUFFER_NONE=y
-# UCLIBC_HAS_STDIO_BUILTIN_BUFFER_4 is not set
-# UCLIBC_HAS_STDIO_BUILTIN_BUFFER_8 is not set
-# UCLIBC_HAS_STDIO_SHUTDOWN_ON_ABORT is not set
-UCLIBC_HAS_STDIO_GETC_MACRO=y
-UCLIBC_HAS_STDIO_PUTC_MACRO=y
-UCLIBC_HAS_STDIO_AUTO_RW_TRANSITION=y
-# UCLIBC_HAS_FOPEN_LARGEFILE_MODE is not set
-UCLIBC_HAS_FOPEN_EXCLUSIVE_MODE=y
-UCLIBC_HAS_GLIBC_CUSTOM_STREAMS=y
-UCLIBC_HAS_PRINTF_M_SPEC=y
-UCLIBC_HAS_ERRNO_MESSAGES=y
-# UCLIBC_HAS_SYS_ERRLIST is not set
-UCLIBC_HAS_SIGNUM_MESSAGES=y
-# UCLIBC_HAS_SYS_SIGLIST is not set
-UCLIBC_HAS_GNU_GETOPT=y
-UCLIBC_HAS_GNU_GETSUBOPT=y
-
-#
-# Big and Tall
-#
-UCLIBC_HAS_REGEX=y
-UCLIBC_HAS_REGEX_OLD=y
-UCLIBC_HAS_FNMATCH=y
-UCLIBC_HAS_FNMATCH_OLD=y
-UCLIBC_HAS_WORDEXP=y
-UCLIBC_HAS_FTW=y
-UCLIBC_HAS_GLOB=y
-UCLIBC_HAS_GNU_GLOB=y
-
-#
-# Library Installation Options
-#
-SHARED_LIB_LOADER_PREFIX="/lib"
-RUNTIME_PREFIX="/"
-DEVEL_PREFIX="/usr/"
-
-#
-# Security options
-#
-# UCLIBC_BUILD_PIE is not set
-UCLIBC_HAS_ARC4RANDOM=y
-# HAVE_NO_SSP is not set
-# UCLIBC_HAS_SSP is not set
-UCLIBC_BUILD_RELRO=y
-# UCLIBC_BUILD_NOW is not set
-UCLIBC_BUILD_NOEXECSTACK=y
-
-#
-# uClibc development/debugging options
-#
-CROSS_COMPILER_PREFIX=""
-UCLIBC_EXTRA_CFLAGS=""
-# DODEBUG is not set
-# DODEBUG_PT is not set
-DOSTRIP=y
-# DOASSERTS is not set
-# SUPPORT_LD_DEBUG is not set
-# SUPPORT_LD_DEBUG_EARLY is not set
-# UCLIBC_MALLOC_DEBUGGING is not set
-WARNINGS="-Wall"
-# EXTRA_WARNINGS is not set
-# DOMULTI is not set
-# UCLIBC_MJN3_ONLY is not set

+ 0 - 33
target/alix2d13/Makefile

@@ -1,33 +0,0 @@
-# This file is part of the OpenADK project. OpenADK is copyrighted
-# material, please see the LICENCE file in the top-level directory.
-
-include $(TOPDIR)/rules.mk
-include $(TOPDIR)/mk/kernel.mk
-include $(TOPDIR)/mk/modules.mk
-include $(TOPDIR)/mk/kernel-build.mk
-include $(TOPDIR)/mk/image.mk
-
-KERNEL:=$(LINUX_DIR)/arch/x86/boot/bzImage
-
-ifeq ($(FS),ext2-block)
-imageinstall: $(BIN_DIR)/$(ROOTFSTARBALL)
-	@echo "The RootFS tarball is: $(BIN_DIR)/$(ROOTFSTARBALL)"
-	@echo "To install everything to CompactFlash use scripts/install.sh"
-endif
-ifeq ($(FS),nfsroot)
-imageinstall: $(BIN_DIR)/$(ROOTFSTARBALL)
-	@cp $(KERNEL) $(BIN_DIR)/${ADK_TARGET}-${FS}-kernel
-	@echo 'The linux kernel is here: $(BIN_DIR)/${ADK_TARGET}-${FS}-kernel'
-	@echo 'The nfs root tarball is here: ${BIN_DIR}/${ROOTFSTARBALL}'
-endif
-ifeq ($(FS),initramfs)
-imageinstall: $(BIN_DIR)/$(INITRAMFS)
-	@cp $(KERNEL) ${BIN_DIR}/${ADK_TARGET}-${FS}-kernel
-	@echo 'The kernel file is: ${BIN_DIR}/${ADK_TARGET}-${FS}-kernel'
-	@echo 'The initramfs image is: ${BIN_DIR}/${INITRAMFS}'
-endif
-ifeq ($(FS),initramfs-piggyback)
-imageinstall: ${BUILD_DIR}/${INITRAMFS_PIGGYBACK} createinitramfs
-	@cp $(KERNEL) ${BIN_DIR}/${ADK_TARGET}-${FS}-kernel
-	@echo 'The kernel+initramfs file is: ${BIN_DIR}/${ADK_TARGET}-${FS}-kernel'
-endif

+ 0 - 2
target/alix2d13/files/etc/fstab

@@ -1,2 +0,0 @@
-# <fs>			<mountpoint>	<type>		<opts>		<dump/pass>
-/dev/root		/		ext2		noatime		0 0

+ 0 - 3
target/alix2d13/files/etc/inittab

@@ -1,3 +0,0 @@
-::sysinit:/etc/init.d/rcS
-::shutdown:/etc/init.d/rcK
-ttyS0::respawn:/sbin/getty -i -L ttyS0 115200 vt100

+ 0 - 11
target/alix2d13/files/etc/mdev.conf

@@ -1,11 +0,0 @@
-rtc0 root:root 660 @ln -sf /dev/rtc0 /dev/rtc
-device-mapper 0:0 660 @mkdir /dev/mapper
-tun 0:0 660 >net/tun
-null 0:0 777
-zero 0:0 666
-u?random 0:0 644
-console 0:0 0600
-ptmx 0:0 666
-ttyS* 0:0 640
-msr0 root:root 660 @(mkdir -p /dev/cpu/0 && ln -sf /dev/msr0 /dev/cpu/0/msr)
-.* 0:0 644 @/lib/mdev/init

+ 0 - 7
target/alix2d13/target.mk

@@ -1,7 +0,0 @@
-ARCH:=			x86
-CPU_ARCH:=		i586
-KERNEL_VERSION:=	2.6.35.7
-KERNEL_RELEASE:=	1
-KERNEL_MD5SUM:=		f741879bcd3a5366a1bbe0ad5cdb7935
-TARGET_OPTIMIZATION:=	-Os -pipe
-TARGET_CFLAGS_ARCH:=	-march=geode

+ 0 - 241
target/alix2d13/uclibc.config

@@ -1,241 +0,0 @@
-#
-# Automatically generated make config: don't edit
-# Version: 0.9.30
-# Mon Dec  1 19:41:35 2008
-#
-# TARGET_alpha is not set
-# TARGET_arm is not set
-# TARGET_avr32 is not set
-# TARGET_bfin is not set
-# TARGET_cris is not set
-# TARGET_e1 is not set
-# TARGET_frv is not set
-# TARGET_h8300 is not set
-# TARGET_hppa is not set
-TARGET_i386=y
-# TARGET_i960 is not set
-# TARGET_ia64 is not set
-# TARGET_m68k is not set
-# TARGET_microblaze is not set
-# TARGET_mips is not set
-# TARGET_nios is not set
-# TARGET_nios2 is not set
-# TARGET_powerpc is not set
-# TARGET_sh is not set
-# TARGET_sh64 is not set
-# TARGET_sparc is not set
-# TARGET_v850 is not set
-# TARGET_vax is not set
-# TARGET_x86_64 is not set
-# TARGET_xtensa is not set
-
-#
-# Target Architecture Features and Options
-#
-TARGET_ARCH="i386"
-FORCE_OPTIONS_FOR_ARCH=y
-# CONFIG_GENERIC_386 is not set
-# CONFIG_386 is not set
-# CONFIG_486 is not set
-CONFIG_586=y
-# CONFIG_586MMX is not set
-# CONFIG_686 is not set
-# CONFIG_PENTIUMII is not set
-# CONFIG_PENTIUMIII is not set
-# CONFIG_PENTIUM4 is not set
-# CONFIG_K6 is not set
-# CONFIG_K7 is not set
-# CONFIG_ELAN is not set
-# CONFIG_CRUSOE is not set
-# CONFIG_WINCHIPC6 is not set
-# CONFIG_WINCHIP2 is not set
-# CONFIG_CYRIXIII is not set
-# CONFIG_NEHEMIAH is not set
-TARGET_SUBARCH=""
-
-#
-# Using ELF file format
-#
-ARCH_LITTLE_ENDIAN=y
-
-#
-# Using Little Endian
-#
-ARCH_HAS_MMU=y
-ARCH_USE_MMU=y
-UCLIBC_HAS_FLOATS=y
-UCLIBC_HAS_FPU=y
-DO_C99_MATH=y
-UCLIBC_HAS_FENV=y
-UCLIBC_HAS_LONG_DOUBLE_MATH=y
-KERNEL_HEADERS=""
-HAVE_DOT_CONFIG=y
-
-#
-# General Library Settings
-#
-# HAVE_NO_PIC is not set
-DOPIC=y
-# ARCH_HAS_NO_SHARED is not set
-# ARCH_HAS_NO_LDSO is not set
-HAVE_SHARED=y
-# FORCE_SHAREABLE_TEXT_SEGMENTS is not set
-LDSO_LDD_SUPPORT=y
-LDSO_CACHE_SUPPORT=y
-# LDSO_PRELOAD_FILE_SUPPORT is not set
-LDSO_BASE_FILENAME="ld.so"
-# UCLIBC_STATIC_LDCONFIG is not set
-LDSO_RUNPATH=y
-UCLIBC_CTOR_DTOR=y
-# LDSO_GNU_HASH_SUPPORT is not set
-# HAS_NO_THREADS is not set
-UCLIBC_HAS_THREADS=y
-PTHREADS_DEBUG_SUPPORT=y
-LINUXTHREADS_OLD=y
-UCLIBC_HAS_SYSLOG=y
-UCLIBC_HAS_LFS=y
-# MALLOC is not set
-# MALLOC_SIMPLE is not set
-MALLOC_STANDARD=y
-MALLOC_GLIBC_COMPAT=y
-UCLIBC_DYNAMIC_ATEXIT=y
-COMPAT_ATEXIT=y
-# UCLIBC_SUSV3_LEGACY is not set
-# UCLIBC_SUSV3_LEGACY_MACROS is not set
-# UCLIBC_HAS_STUBS is not set
-UCLIBC_HAS_SHADOW=y
-UCLIBC_HAS_PROGRAM_INVOCATION_NAME=y
-UCLIBC_HAS___PROGNAME=y
-UCLIBC_HAS_PTY=y
-ASSUME_DEVPTS=y
-UNIX98PTY_ONLY=y
-# UCLIBC_HAS_GETPT is not set
-UCLIBC_HAS_TM_EXTENSIONS=y
-UCLIBC_HAS_TZ_CACHING=y
-UCLIBC_HAS_TZ_FILE=y
-UCLIBC_HAS_TZ_FILE_READ_MANY=y
-UCLIBC_TZ_FILE_PATH="/etc/TZ"
-
-#
-# Advanced Library Settings
-#
-UCLIBC_PWD_BUFFER_SIZE=256
-UCLIBC_GRP_BUFFER_SIZE=256
-
-#
-# Support various families of functions
-#
-# UCLIBC_LINUX_MODULE_24 is not set
-UCLIBC_LINUX_SPECIFIC=y
-UCLIBC_HAS_GNU_ERROR=y
-UCLIBC_BSD_SPECIFIC=y
-UCLIBC_HAS_BSD_ERR=y
-# UCLIBC_HAS_OBSOLETE_BSD_SIGNAL is not set
-# UCLIBC_HAS_OBSOLETE_SYSV_SIGNAL is not set
-# UCLIBC_NTP_LEGACY is not set
-# UCLIBC_SV4_DEPRECATED is not set
-UCLIBC_HAS_REALTIME=y
-UCLIBC_HAS_ADVANCED_REALTIME=y
-UCLIBC_HAS_EPOLL=y
-UCLIBC_HAS_XATTR=y
-# UCLIBC_HAS_PROFILING is not set
-UCLIBC_HAS_CRYPT_IMPL=y
-UCLIBC_HAS_CRYPT=y
-UCLIBC_HAS_NETWORK_SUPPORT=y
-UCLIBC_HAS_SOCKET=y
-UCLIBC_HAS_IPV4=y
-UCLIBC_HAS_IPV6=y
-UCLIBC_HAS_RPC=y
-UCLIBC_HAS_FULL_RPC=y
-UCLIBC_HAS_REENTRANT_RPC=y
-UCLIBC_USE_NETLINK=y
-UCLIBC_SUPPORT_AI_ADDRCONFIG=y
-UCLIBC_HAS_BSD_RES_CLOSE=y
-
-#
-# String and Stdio Support
-#
-UCLIBC_HAS_STRING_GENERIC_OPT=y
-UCLIBC_HAS_STRING_ARCH_OPT=y
-UCLIBC_HAS_CTYPE_TABLES=y
-UCLIBC_HAS_CTYPE_SIGNED=y
-# UCLIBC_HAS_CTYPE_UNSAFE is not set
-UCLIBC_HAS_CTYPE_CHECKED=y
-# UCLIBC_HAS_CTYPE_ENFORCED is not set
-UCLIBC_HAS_WCHAR=y
-# UCLIBC_HAS_LOCALE is not set
-UCLIBC_HAS_HEXADECIMAL_FLOATS=y
-UCLIBC_HAS_GLIBC_CUSTOM_PRINTF=y
-UCLIBC_PRINTF_SCANF_POSITIONAL_ARGS=9
-UCLIBC_HAS_SCANF_GLIBC_A_FLAG=y
-# UCLIBC_HAS_STDIO_BUFSIZ_NONE is not set
-# UCLIBC_HAS_STDIO_BUFSIZ_256 is not set
-# UCLIBC_HAS_STDIO_BUFSIZ_512 is not set
-# UCLIBC_HAS_STDIO_BUFSIZ_1024 is not set
-# UCLIBC_HAS_STDIO_BUFSIZ_2048 is not set
-UCLIBC_HAS_STDIO_BUFSIZ_4096=y
-# UCLIBC_HAS_STDIO_BUFSIZ_8192 is not set
-UCLIBC_HAS_STDIO_BUILTIN_BUFFER_NONE=y
-# UCLIBC_HAS_STDIO_BUILTIN_BUFFER_4 is not set
-# UCLIBC_HAS_STDIO_BUILTIN_BUFFER_8 is not set
-# UCLIBC_HAS_STDIO_SHUTDOWN_ON_ABORT is not set
-UCLIBC_HAS_STDIO_GETC_MACRO=y
-UCLIBC_HAS_STDIO_PUTC_MACRO=y
-UCLIBC_HAS_STDIO_AUTO_RW_TRANSITION=y
-# UCLIBC_HAS_FOPEN_LARGEFILE_MODE is not set
-UCLIBC_HAS_FOPEN_EXCLUSIVE_MODE=y
-UCLIBC_HAS_GLIBC_CUSTOM_STREAMS=y
-UCLIBC_HAS_PRINTF_M_SPEC=y
-UCLIBC_HAS_ERRNO_MESSAGES=y
-# UCLIBC_HAS_SYS_ERRLIST is not set
-UCLIBC_HAS_SIGNUM_MESSAGES=y
-# UCLIBC_HAS_SYS_SIGLIST is not set
-UCLIBC_HAS_GNU_GETOPT=y
-UCLIBC_HAS_GNU_GETSUBOPT=y
-
-#
-# Big and Tall
-#
-UCLIBC_HAS_REGEX=y
-UCLIBC_HAS_REGEX_OLD=y
-UCLIBC_HAS_FNMATCH=y
-UCLIBC_HAS_FNMATCH_OLD=y
-UCLIBC_HAS_WORDEXP=y
-UCLIBC_HAS_FTW=y
-UCLIBC_HAS_GLOB=y
-UCLIBC_HAS_GNU_GLOB=y
-
-#
-# Library Installation Options
-#
-SHARED_LIB_LOADER_PREFIX="/lib"
-RUNTIME_PREFIX="/"
-DEVEL_PREFIX="/usr/"
-
-#
-# Security options
-#
-# UCLIBC_BUILD_PIE is not set
-UCLIBC_HAS_ARC4RANDOM=y
-# HAVE_NO_SSP is not set
-# UCLIBC_HAS_SSP is not set
-UCLIBC_BUILD_RELRO=y
-# UCLIBC_BUILD_NOW is not set
-UCLIBC_BUILD_NOEXECSTACK=y
-
-#
-# uClibc development/debugging options
-#
-CROSS_COMPILER_PREFIX=""
-UCLIBC_EXTRA_CFLAGS=""
-# DODEBUG is not set
-# DODEBUG_PT is not set
-DOSTRIP=y
-# DOASSERTS is not set
-# SUPPORT_LD_DEBUG is not set
-# SUPPORT_LD_DEBUG_EARLY is not set
-# UCLIBC_MALLOC_DEBUGGING is not set
-WARNINGS="-Wall"
-# EXTRA_WARNINGS is not set
-# DOMULTI is not set
-# UCLIBC_MJN3_ONLY is not set

+ 3 - 3
target/bulk.lst

@@ -7,9 +7,9 @@ rb4xx		glibc		nfsroot
 rb532		uclibc		nfsroot
 rb532		eglibc		nfsroot
 rb532		glibc		nfsroot
-alix1c		uclibc		nfsroot
-alix1c		eglibc		nfsroot
-alix1c		glibc		nfsroot
+alix		uclibc		nfsroot
+alix		eglibc		nfsroot
+alix		glibc		nfsroot
 wrap		uclibc		nfsroot
 wrap		eglibc		nfsroot
 wrap		glibc		nfsroot

+ 6 - 6
target/bulkdef.lst

@@ -19,12 +19,12 @@ rb532		glibc		yaffs
 rb532		uclibc		ext2-block
 rb532		eglibc		ext2-block
 rb532		glibc		ext2-block
-alix1c		uclibc		nfsroot
-alix1c		eglibc		nfsroot
-alix1c		glibc		nfsroot
-alix1c		uclibc		ext2-block
-alix1c		eglibc		ext2-block
-alix1c		glibc		ext2-block
+alix		uclibc		nfsroot
+alix		eglibc		nfsroot
+alix		glibc		nfsroot
+alix		uclibc		ext2-block
+alix		eglibc		ext2-block
+alix		glibc		ext2-block
 wrap		uclibc		nfsroot
 wrap		eglibc		nfsroot
 wrap		glibc		nfsroot

+ 1 - 0
target/linux/Config.in

@@ -2,6 +2,7 @@ source target/linux/config/Config.in.block
 source target/linux/config/Config.in.fs
 source target/linux/config/Config.in.netdevice
 source target/linux/config/Config.in.usb
+source target/linux/config/Config.in.graphics
 source target/linux/config/Config.in.input
 source target/linux/config/Config.in.pcmcia
 source target/linux/config/Config.in.network

+ 26 - 0
target/linux/config/Config.in.graphics

@@ -0,0 +1,26 @@
+config ADK_KERNEL_FB
+ 	boolean
+ 	default n
+ 
+config ADK_KERNEL_FRAMEBUFFER_CONSOLE
+	boolean
+	default n
+
+config ADK_KERNEL_FB_GEODE
+	boolean
+	default n
+ 
+menu "Graphic devices support"
+
+config ADK_KERNEL_FB_GEODE_LX
+	prompt "geode-fblx...................... Framebuffer support for ALIX boards with VGA"
+	tristate
+	select ADK_KERNEL_FB
+	select ADK_KERNEL_FRAMEBUFFER_CONSOLE
+	select ADK_KERNEL_FB_GEODE
+	default y if ADK_HARDWARE_ALIX1C
+ 	default n
+ 	help
+	 Framebuffer support for ALIX boards.
+	
+endmenu

+ 55 - 8
target/linux/config/Config.in.misc

@@ -4,20 +4,67 @@ config ADK_LINUX_INITRAMFS_BUILTIN
 	boolean
 	default n
 
-config ADK_KERNEL_RFKILL
+config ADK_KERNEL_MISC_DEVICES
 	boolean
 	default n
 
-config ADK_KERNEL_WATCHDOG
+config ADK_KERNEL_CS5535_MFGPT
 	boolean
-	default y if ADK_TARGET_WITH_WATCHDOG
 	default n
 
-config ADK_KERNEL_I2C_CHARDEV
+config ADK_KERNEL_CS5535_CLOCK_EVENT_SRC
 	boolean
 	default n
 
+config ADK_KERNEL_RFKILL
+ 	boolean
+ 	default n
+ 
+config ADK_KERNEL_WATCHDOG
+	boolean
+	default n
+ 
+config ADK_KERNEL_I2C_CHARDEV
+ 	boolean
+	default n
+
+config ADK_KERNEL_RTC_CLASS
+ 	boolean
+	default n
+
+config ADK_KERNEL_RTC_HCTOSYS
+ 	boolean
+	default n
+
+config ADK_KERNEL_RTC_INTF_DEV
+ 	boolean
+	default n
+
 menu "Miscellaneous devices support"
+
+config ADK_KERNEL_GEODE_WDT
+	prompt "geode-wdt......................... Geode Hardware Watchdog"
+	tristate
+	select ADK_KERNEL_WATCHDOG
+	select ADK_KERNEL_MISC_DEVICES
+	select ADK_KERNEL_CS5535_MFGPT
+	select ADK_KERNEL_CS5535_CLOCK_EVENT_SRC
+	default y if ADK_HARDWARE_ALIX2D2
+	default y if ADK_HARDWARE_ALIX2D13
+	default n
+	help
+	 Geode watchdog.
+
+config ADK_KERNEL_RTC_DRV_CMOS
+	prompt "rtc-cmos.......................... RTC support for PC CMOS"
+	tristate
+	select ADK_KERNEL_RTC_CLASS
+	select ADK_KERNEL_RTC_HCTOSYS
+	select ADK_KERNEL_RTC_INTF_DEV
+	default y if ADK_TARGET_WITH_RTC
+ 	default n
+ 	help
+	 RTC support for ALIX boards.
 	
 config ADK_KPACKAGE_KMOD_I2C
 	prompt "kmod-i2c.......................... I2C support"
@@ -31,7 +78,7 @@ config ADK_KPACKAGE_KMOD_SCx200_ACB
 	prompt "kmod-i2c-geode.................... I2C driver for Geode"
 	tristate
 	depends on ADK_KPACKAGE_KMOD_I2C
-	depends on ADK_LINUX_X86_ALIX1C || ADK_LINUX_X86_ALIX2D || ADK_LINUX_X86_ALIX2D13
+	depends on ADK_LINUX_X86_ALIX
 	default n
 	help
 	  I2C driver for Geode boards.
@@ -96,7 +143,7 @@ config ADK_KPACKAGE_KMOD_EEPROM_93CX6
 	tristate
 	depends on ADK_KPACKAGE_KMOD_MAC80211
 	depends on !ADK_LINUX_CRIS_FOXBOARD && !ADK_LINUX_MIPS64_LEMOTE
-	default n
-	help
-
+ 	default n
+ 	help
+ 
 endmenu

+ 1 - 1
target/linux/config/Config.in.multimedia

@@ -99,7 +99,7 @@ config ADK_KPACKAGE_KMOD_SND_CS5535AUDIO
 	prompt "kmod-sound-alsa-cs5535......... ALSA AMD CS5535 driver"
 	depends on ADK_KPACKAGE_KMOD_SND
 	select ADK_KPACKAGE_KMOD_SND_AC97_CODEC
-	depends on ADK_LINUX_X86_ALIX1C || ADK_LINUX_MIPS64_LEMOTE || ADK_NATIVE
+	depends on ADK_LINUX_X86_ALIX || ADK_LINUX_MIPS64_LEMOTE || ADK_NATIVE
 	tristate
 	default n
 	help

+ 9 - 3
target/linux/config/Config.in.usb

@@ -28,7 +28,9 @@ config ADK_KERNEL_USB_UHCI_HCD
 config ADK_KPACKAGE_KMOD_USB
 	prompt "kmod-usb......................... USB support"
 	tristate
-	default y if ADK_LINUX_ALIX
+	default y if ADK_HARDWARE_ALIX1C
+	default y if ADK_HARDWARE_ALIX2D2
+	default y if ADK_HARDWARE_ALIX2D13
 	default n
 	depends on !(ADK_LINUX_CRIS_FOXBOARD || ADK_LINUX_ARM_FOXG20 || ADK_KERNEL_USB)
 	select ADK_KERNEL_NLS
@@ -80,7 +82,9 @@ config ADK_KPACKAGE_KMOD_USB_UHCI_HCD
 config ADK_KPACKAGE_KMOD_USB_OHCI_HCD
 	prompt   "kmod-usb-ohci................... Support for OHCI controllers"
 	tristate
-	default y if ADK_LINUX_ALIX
+	default y if ADK_HARDWARE_ALIX1C
+	default y if ADK_HARDWARE_ALIX2D2
+	default y if ADK_HARDWARE_ALIX2D13
 	default n
 	depends on !ADK_LINUX_CRIS_FOXBOARD
 	depends on ADK_KPACKAGE_KMOD_USB
@@ -126,7 +130,9 @@ config ADK_KPACKAGE_KMOD_USB_EHCI_HCD
 	prompt   "kmod-usb-ehci................... Support for USB 2.0 controllers"
 	tristate
 	depends on !(ADK_LINUX_CRIS_FOXBOARD || ADK_KERNEL_USB_EHCI_HCD)
-	default y if ADK_LINUX_ALIX
+	default y if ADK_HARDWARE_ALIX1C
+	default y if ADK_HARDWARE_ALIX2D2
+	default y if ADK_HARDWARE_ALIX2D13
 	default n
 	depends on ADK_KPACKAGE_KMOD_USB
 	select ADK_PACKAGE_KMOD_USB_CONTROLLER

+ 1 - 4
target/target.lst

@@ -1,8 +1,5 @@
 native	ADK_LINUX_NATIVE
-alix1c	ADK_LINUX_X86_ALIX1C
-alix2d	ADK_LINUX_X86_ALIX2D
-alix2d13	ADK_LINUX_X86_ALIX2D13
-alix	ADK_LINUX_X86_ALIX1C ADK_LINUX_X86_ALIX2D ADK_LINUX_X86_ALIX2D13
+alix	ADK_LINUX_X86_ALIX
 wrap	ADK_LINUX_X86_WRAP
 ibmx40	ADK_LINUX_X86_IBMX40
 foxboard	ADK_LINUX_CRIS_FOXBOARD

+ 0 - 47
target/wag54g/Makefile

@@ -1,47 +0,0 @@
-# This file is part of the OpenADK project. OpenADK is copyrighted
-# material, please see the LICENCE file in the top-level directory.
-
-include $(TOPDIR)/rules.mk
-include $(TOPDIR)/mk/kernel.mk
-include $(TOPDIR)/mk/modules.mk
-include $(TOPDIR)/mk/kernel-build.mk
-include $(TOPDIR)/mk/image.mk
-
-$(TOOLS_BUILD_DIR):
-	mkdir -p $(TOOLS_BUILD_DIR)
-
-tools-compile: $(TOOLS_BUILD_DIR)
-	$(MAKE) -C tools/addpattern
-	$(MAKE) -C tools/srec2bin
-	$(MAKE) -C ../tools/squashfs prepare compile install
-
-kernel-install: tools-compile
-	PATH='${TARGET_PATH}' \
-	$(TARGET_CROSS)objcopy -S -O srec $(LINUX_DIR)/vmlinux \
-		$(LINUX_DIR)/vmlinux.srec
-	PATH='${TARGET_PATH}' \
-	srec2bin $(LINUX_DIR)/vmlinux.srec $(LINUX_DIR)/vmlinux.bin
-	(dd if=/dev/zero bs=16 count=1; cat $(LINUX_DIR)/vmlinux.bin) > \
-		$(LINUX_DIR)/vmlinux.tmp
-	PATH='${TARGET_PATH}' \
-	addpattern -p WA21 -i $(LINUX_DIR)/vmlinux.tmp \
-		-o $(BIN_DIR)/${ADK_TARGET}-${FS}-kernel
-
-ifeq ($(FS),squashfs)
-imageinstall: kernel-install $(BIN_DIR)/$(ROOTFSSQUASHFS)
-	${CP} ${BUILD_DIR}/${ROOTFSSQUASHFS} $(BIN_DIR)/$(ROOTFSSQUASHFS)
-	@echo The image file is $(ROOTFSSQUASHFS)
-	@echo 'You can flash the image via tftp:'
-	@echo 'tftp 192.168.1.1'
-	@echo 'tftp> binary'
-	@echo "tftp> put $(ROOTFSSQUASHFS) upgrade_code.bin"
-endif
-ifeq ($(FS),nfsroot)
-imageinstall: kernel-install $(BIN_DIR)/$(ROOTFSTARBALL)
-	@echo 'The kernel file is: ${BIN_DIR}/${ADK_TARGET}-${FS}-kernel'
-	@echo 'The nfs root tarball is: ${BIN_DIR}/${ROOTFSTARBALL}'
-	@echo 'You can flash the kernel via tftp:'
-	@echo 'tftp 192.168.1.1'
-	@echo 'tftp> binary'
-	@echo 'tftp> put ${ADK_TARGET}-${FS}-kernel upgrade_code.bin'
-endif

+ 0 - 3
target/wag54g/files/etc/inittab

@@ -1,3 +0,0 @@
-::sysinit:/etc/init.d/rcS
-::shutdown:/etc/init.d/rcK
-ttyS0::respawn:/sbin/getty -i -L ttyS0 38400 vt100

+ 0 - 10
target/wag54g/files/etc/mdev.conf

@@ -1,10 +0,0 @@
-tun 0:0 660 >net/tun
-device-mapper 0:0 660 @mkdir /dev/mapper
-null 0:0 777
-zero 0:0 666
-u?random 0:0 644
-console 0:0 0600
-ptmx 0:0 666
-tty 0:0 666
-ttyS* 0:0 640
-.* 0:0 644 @/lib/mdev/init

+ 0 - 899
target/wag54g/kernel.config

@@ -1,899 +0,0 @@
-#
-# Automatically generated make config: don't edit
-# Linux kernel version: 2.6.30.5
-# Thu Aug 27 22:00:41 2009
-#
-CONFIG_MIPS=y
-
-#
-# Machine selection
-#
-CONFIG_AR7=y
-# CONFIG_MACH_ALCHEMY is not set
-# CONFIG_BASLER_EXCITE is not set
-# CONFIG_BCM47XX is not set
-# CONFIG_MIPS_COBALT is not set
-# CONFIG_MACH_DECSTATION is not set
-# CONFIG_MACH_JAZZ is not set
-# CONFIG_LASAT is not set
-# CONFIG_LEMOTE_FULONG is not set
-# CONFIG_MIPS_MALTA is not set
-# CONFIG_MIPS_SIM is not set
-# CONFIG_NEC_MARKEINS is not set
-# CONFIG_MACH_VR41XX is not set
-# CONFIG_NXP_STB220 is not set
-# CONFIG_NXP_STB225 is not set
-# CONFIG_PNX8550_JBS is not set
-# CONFIG_PNX8550_STB810 is not set
-# CONFIG_PMC_MSP is not set
-# CONFIG_PMC_YOSEMITE is not set
-# CONFIG_SGI_IP22 is not set
-# CONFIG_SGI_IP27 is not set
-# CONFIG_SGI_IP28 is not set
-# CONFIG_SGI_IP32 is not set
-# CONFIG_SIBYTE_CRHINE is not set
-# CONFIG_SIBYTE_CARMEL is not set
-# CONFIG_SIBYTE_CRHONE is not set
-# CONFIG_SIBYTE_RHONE is not set
-# CONFIG_SIBYTE_SWARM is not set
-# CONFIG_SIBYTE_LITTLESUR is not set
-# CONFIG_SIBYTE_SENTOSA is not set
-# CONFIG_SIBYTE_BIGSUR is not set
-# CONFIG_SNI_RM is not set
-# CONFIG_MACH_TX39XX is not set
-# CONFIG_MACH_TX49XX is not set
-# CONFIG_MIKROTIK_RB532 is not set
-# CONFIG_WR_PPMC is not set
-# CONFIG_CAVIUM_OCTEON_SIMULATOR is not set
-# CONFIG_CAVIUM_OCTEON_REFERENCE_BOARD is not set
-CONFIG_RWSEM_GENERIC_SPINLOCK=y
-# CONFIG_ARCH_HAS_ILOG2_U32 is not set
-# CONFIG_ARCH_HAS_ILOG2_U64 is not set
-CONFIG_ARCH_SUPPORTS_OPROFILE=y
-CONFIG_GENERIC_FIND_NEXT_BIT=y
-CONFIG_GENERIC_HWEIGHT=y
-CONFIG_GENERIC_CALIBRATE_DELAY=y
-CONFIG_GENERIC_CLOCKEVENTS=y
-CONFIG_GENERIC_TIME=y
-CONFIG_GENERIC_CMOS_UPDATE=y
-CONFIG_SCHED_OMIT_FRAME_POINTER=y
-CONFIG_GENERIC_HARDIRQS_NO__DO_IRQ=y
-CONFIG_CEVT_R4K_LIB=y
-CONFIG_CEVT_R4K=y
-CONFIG_CSRC_R4K_LIB=y
-CONFIG_CSRC_R4K=y
-CONFIG_DMA_NONCOHERENT=y
-CONFIG_DMA_NEED_PCI_MAP_STATE=y
-CONFIG_EARLY_PRINTK=y
-CONFIG_SYS_HAS_EARLY_PRINTK=y
-# CONFIG_HOTPLUG_CPU is not set
-# CONFIG_NO_IOPORT is not set
-CONFIG_GENERIC_GPIO=y
-# CONFIG_CPU_BIG_ENDIAN is not set
-CONFIG_CPU_LITTLE_ENDIAN=y
-CONFIG_SYS_SUPPORTS_BIG_ENDIAN=y
-CONFIG_SYS_SUPPORTS_LITTLE_ENDIAN=y
-CONFIG_IRQ_CPU=y
-CONFIG_SWAP_IO_SPACE=y
-CONFIG_BOOT_ELF32=y
-CONFIG_MIPS_L1_CACHE_SHIFT=5
-
-#
-# CPU selection
-#
-# CONFIG_CPU_LOONGSON2 is not set
-CONFIG_CPU_MIPS32_R1=y
-# CONFIG_CPU_MIPS32_R2 is not set
-# CONFIG_CPU_MIPS64_R1 is not set
-# CONFIG_CPU_MIPS64_R2 is not set
-# CONFIG_CPU_R3000 is not set
-# CONFIG_CPU_TX39XX is not set
-# CONFIG_CPU_VR41XX is not set
-# CONFIG_CPU_R4300 is not set
-# CONFIG_CPU_R4X00 is not set
-# CONFIG_CPU_TX49XX is not set
-# CONFIG_CPU_R5000 is not set
-# CONFIG_CPU_R5432 is not set
-# CONFIG_CPU_R5500 is not set
-# CONFIG_CPU_R6000 is not set
-# CONFIG_CPU_NEVADA is not set
-# CONFIG_CPU_R8000 is not set
-# CONFIG_CPU_R10000 is not set
-# CONFIG_CPU_RM7000 is not set
-# CONFIG_CPU_RM9000 is not set
-# CONFIG_CPU_SB1 is not set
-# CONFIG_CPU_CAVIUM_OCTEON is not set
-CONFIG_SYS_HAS_CPU_MIPS32_R1=y
-CONFIG_CPU_MIPS32=y
-CONFIG_CPU_MIPSR1=y
-CONFIG_SYS_SUPPORTS_32BIT_KERNEL=y
-CONFIG_CPU_SUPPORTS_32BIT_KERNEL=y
-CONFIG_HARDWARE_WATCHPOINTS=y
-
-#
-# Kernel type
-#
-CONFIG_32BIT=y
-# CONFIG_64BIT is not set
-CONFIG_PAGE_SIZE_4KB=y
-# CONFIG_PAGE_SIZE_8KB is not set
-# CONFIG_PAGE_SIZE_16KB is not set
-# CONFIG_PAGE_SIZE_32KB is not set
-# CONFIG_PAGE_SIZE_64KB is not set
-CONFIG_CPU_HAS_PREFETCH=y
-CONFIG_MIPS_MT_DISABLED=y
-# CONFIG_MIPS_MT_SMP is not set
-# CONFIG_MIPS_MT_SMTC is not set
-CONFIG_CPU_HAS_LLSC=y
-CONFIG_CPU_HAS_SYNC=y
-CONFIG_GENERIC_HARDIRQS=y
-CONFIG_GENERIC_IRQ_PROBE=y
-CONFIG_CPU_SUPPORTS_HIGHMEM=y
-CONFIG_ARCH_FLATMEM_ENABLE=y
-CONFIG_ARCH_POPULATES_NODE_MAP=y
-CONFIG_SELECT_MEMORY_MODEL=y
-CONFIG_FLATMEM_MANUAL=y
-# CONFIG_DISCONTIGMEM_MANUAL is not set
-# CONFIG_SPARSEMEM_MANUAL is not set
-CONFIG_FLATMEM=y
-CONFIG_FLAT_NODE_MEM_MAP=y
-CONFIG_PAGEFLAGS_EXTENDED=y
-CONFIG_SPLIT_PTLOCK_CPUS=4
-# CONFIG_PHYS_ADDR_T_64BIT is not set
-CONFIG_ZONE_DMA_FLAG=0
-CONFIG_VIRT_TO_BUS=y
-# CONFIG_UNEVICTABLE_LRU is not set
-CONFIG_HAVE_MLOCK=y
-CONFIG_DEFAULT_MMAP_MIN_ADDR=4096
-CONFIG_TICK_ONESHOT=y
-# CONFIG_NO_HZ is not set
-CONFIG_HIGH_RES_TIMERS=y
-CONFIG_GENERIC_CLOCKEVENTS_BUILD=y
-# CONFIG_HZ_48 is not set
-CONFIG_HZ_100=y
-# CONFIG_HZ_128 is not set
-# CONFIG_HZ_250 is not set
-# CONFIG_HZ_256 is not set
-# CONFIG_HZ_1000 is not set
-# CONFIG_HZ_1024 is not set
-CONFIG_SYS_SUPPORTS_ARBIT_HZ=y
-CONFIG_HZ=100
-CONFIG_PREEMPT_NONE=y
-# CONFIG_PREEMPT_VOLUNTARY is not set
-# CONFIG_PREEMPT is not set
-# CONFIG_KEXEC is not set
-# CONFIG_SECCOMP is not set
-CONFIG_LOCKDEP_SUPPORT=y
-CONFIG_STACKTRACE_SUPPORT=y
-CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
-
-#
-# General setup
-#
-CONFIG_EXPERIMENTAL=y
-CONFIG_BROKEN_ON_SMP=y
-CONFIG_INIT_ENV_ARG_LIMIT=32
-CONFIG_LOCALVERSION=""
-# CONFIG_LOCALVERSION_AUTO is not set
-# CONFIG_SWAP is not set
-CONFIG_SYSVIPC=y
-CONFIG_SYSVIPC_SYSCTL=y
-CONFIG_POSIX_MQUEUE=y
-CONFIG_POSIX_MQUEUE_SYSCTL=y
-# CONFIG_BSD_PROCESS_ACCT is not set
-# CONFIG_TASKSTATS is not set
-# CONFIG_AUDIT is not set
-
-#
-# RCU Subsystem
-#
-CONFIG_CLASSIC_RCU=y
-# CONFIG_TREE_RCU is not set
-# CONFIG_PREEMPT_RCU is not set
-# CONFIG_TREE_RCU_TRACE is not set
-# CONFIG_PREEMPT_RCU_TRACE is not set
-# CONFIG_IKCONFIG is not set
-CONFIG_LOG_BUF_SHIFT=14
-# CONFIG_GROUP_SCHED is not set
-# CONFIG_CGROUPS is not set
-# CONFIG_SYSFS_DEPRECATED_V2 is not set
-# CONFIG_RELAY is not set
-# CONFIG_NAMESPACES is not set
-# CONFIG_BLK_DEV_INITRD is not set
-CONFIG_CC_OPTIMIZE_FOR_SIZE=y
-CONFIG_SYSCTL=y
-CONFIG_ANON_INODES=y
-CONFIG_EMBEDDED=y
-CONFIG_SYSCTL_SYSCALL=y
-CONFIG_KALLSYMS=y
-# CONFIG_KALLSYMS_EXTRA_PASS is not set
-# CONFIG_STRIP_ASM_SYMS is not set
-CONFIG_HOTPLUG=y
-CONFIG_PRINTK=y
-CONFIG_BUG=y
-# CONFIG_ELF_CORE is not set
-# CONFIG_PCSPKR_PLATFORM is not set
-CONFIG_BASE_FULL=y
-# CONFIG_FUTEX is not set
-CONFIG_EPOLL=y
-CONFIG_SIGNALFD=y
-CONFIG_TIMERFD=y
-CONFIG_EVENTFD=y
-CONFIG_SHMEM=y
-# CONFIG_AIO is not set
-# CONFIG_VM_EVENT_COUNTERS is not set
-# CONFIG_COMPAT_BRK is not set
-CONFIG_SLAB=y
-# CONFIG_SLUB is not set
-# CONFIG_SLOB is not set
-# CONFIG_PROFILING is not set
-# CONFIG_MARKERS is not set
-CONFIG_HAVE_OPROFILE=y
-# CONFIG_SLOW_WORK is not set
-# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set
-CONFIG_SLABINFO=y
-CONFIG_BASE_SMALL=0
-CONFIG_MODULES=y
-# CONFIG_MODULE_FORCE_LOAD is not set
-CONFIG_MODULE_UNLOAD=y
-# CONFIG_MODULE_FORCE_UNLOAD is not set
-# CONFIG_MODVERSIONS is not set
-# CONFIG_MODULE_SRCVERSION_ALL is not set
-CONFIG_BLOCK=y
-# CONFIG_LBD is not set
-# CONFIG_BLK_DEV_BSG is not set
-# CONFIG_BLK_DEV_INTEGRITY is not set
-
-#
-# IO Schedulers
-#
-CONFIG_IOSCHED_NOOP=y
-CONFIG_IOSCHED_AS=y
-CONFIG_IOSCHED_DEADLINE=y
-CONFIG_IOSCHED_CFQ=y
-# CONFIG_DEFAULT_AS is not set
-# CONFIG_DEFAULT_DEADLINE is not set
-CONFIG_DEFAULT_CFQ=y
-# CONFIG_DEFAULT_NOOP is not set
-CONFIG_DEFAULT_IOSCHED="cfq"
-# CONFIG_FREEZER is not set
-
-#
-# Bus options (PCI, PCMCIA, EISA, ISA, TC)
-#
-# CONFIG_ARCH_SUPPORTS_MSI is not set
-CONFIG_MMU=y
-# CONFIG_PCCARD is not set
-
-#
-# Executable file formats
-#
-CONFIG_BINFMT_ELF=y
-# CONFIG_HAVE_AOUT is not set
-# CONFIG_BINFMT_MISC is not set
-CONFIG_TRAD_SIGNALS=y
-
-#
-# Power management options
-#
-CONFIG_ARCH_SUSPEND_POSSIBLE=y
-# CONFIG_PM is not set
-CONFIG_NET=y
-
-#
-# Networking options
-#
-CONFIG_PACKET=y
-CONFIG_PACKET_MMAP=y
-CONFIG_UNIX=y
-# CONFIG_NET_KEY is not set
-CONFIG_INET=y
-CONFIG_IP_MULTICAST=y
-CONFIG_IP_ADVANCED_ROUTER=y
-CONFIG_ASK_IP_FIB_HASH=y
-# CONFIG_IP_FIB_TRIE is not set
-CONFIG_IP_FIB_HASH=y
-# CONFIG_IP_MULTIPLE_TABLES is not set
-# CONFIG_IP_ROUTE_MULTIPATH is not set
-# CONFIG_IP_ROUTE_VERBOSE is not set
-# CONFIG_IP_PNP is not set
-# CONFIG_NET_IPIP is not set
-# CONFIG_NET_IPGRE is not set
-# CONFIG_IP_MROUTE is not set
-# CONFIG_ARPD is not set
-CONFIG_SYN_COOKIES=y
-# CONFIG_INET_AH is not set
-# CONFIG_INET_ESP is not set
-# CONFIG_INET_IPCOMP is not set
-# CONFIG_INET_XFRM_TUNNEL is not set
-# CONFIG_INET_TUNNEL is not set
-# CONFIG_INET_XFRM_MODE_TRANSPORT is not set
-# CONFIG_INET_XFRM_MODE_TUNNEL is not set
-# CONFIG_INET_XFRM_MODE_BEET is not set
-# CONFIG_INET_LRO is not set
-CONFIG_INET_DIAG=y
-CONFIG_INET_TCP_DIAG=y
-# CONFIG_TCP_CONG_ADVANCED is not set
-CONFIG_TCP_CONG_CUBIC=y
-CONFIG_DEFAULT_TCP_CONG="cubic"
-# CONFIG_TCP_MD5SIG is not set
-# CONFIG_IPV6 is not set
-# CONFIG_NETWORK_SECMARK is not set
-# CONFIG_NETFILTER is not set
-# CONFIG_IP_DCCP is not set
-# CONFIG_IP_SCTP is not set
-# CONFIG_TIPC is not set
-# CONFIG_ATM is not set
-# CONFIG_BRIDGE is not set
-# CONFIG_NET_DSA is not set
-# CONFIG_VLAN_8021Q is not set
-# CONFIG_DECNET is not set
-# CONFIG_LLC2 is not set
-# CONFIG_IPX is not set
-# CONFIG_ATALK is not set
-# CONFIG_X25 is not set
-# CONFIG_LAPB is not set
-# CONFIG_ECONET is not set
-# CONFIG_WAN_ROUTER is not set
-# CONFIG_PHONET is not set
-# CONFIG_NET_SCHED is not set
-# CONFIG_DCB is not set
-
-#
-# Network testing
-#
-# CONFIG_NET_PKTGEN is not set
-# CONFIG_HAMRADIO is not set
-# CONFIG_CAN is not set
-# CONFIG_IRDA is not set
-# CONFIG_BT is not set
-# CONFIG_AF_RXRPC is not set
-CONFIG_WIRELESS=y
-# CONFIG_CFG80211 is not set
-CONFIG_WIRELESS_OLD_REGULATORY=y
-# CONFIG_WIRELESS_EXT is not set
-# CONFIG_LIB80211 is not set
-# CONFIG_MAC80211 is not set
-# CONFIG_WIMAX is not set
-# CONFIG_RFKILL is not set
-# CONFIG_NET_9P is not set
-
-#
-# Device Drivers
-#
-
-#
-# Generic Driver Options
-#
-CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
-CONFIG_STANDALONE=y
-# CONFIG_PREVENT_FIRMWARE_BUILD is not set
-# CONFIG_FW_LOADER is not set
-# CONFIG_SYS_HYPERVISOR is not set
-# CONFIG_CONNECTOR is not set
-CONFIG_MTD=y
-# CONFIG_MTD_DEBUG is not set
-# CONFIG_MTD_CONCAT is not set
-CONFIG_MTD_PARTITIONS=y
-# CONFIG_MTD_TESTS is not set
-CONFIG_MTD_ROOTFS_ROOT_DEV=y
-# CONFIG_MTD_REDBOOT_PARTS is not set
-# CONFIG_MTD_CMDLINE_PARTS is not set
-CONFIG_MTD_AR7_PARTS=y
-
-#
-# User Modules And Translation Layers
-#
-CONFIG_MTD_CHAR=y
-CONFIG_MTD_BLKDEVS=y
-CONFIG_MTD_BLOCK=y
-# CONFIG_FTL is not set
-# CONFIG_NFTL is not set
-# CONFIG_INFTL is not set
-# CONFIG_RFD_FTL is not set
-# CONFIG_SSFDC is not set
-# CONFIG_MTD_OOPS is not set
-
-#
-# RAM/ROM/Flash chip drivers
-#
-CONFIG_MTD_CFI=y
-# CONFIG_MTD_JEDECPROBE is not set
-CONFIG_MTD_GEN_PROBE=y
-# CONFIG_MTD_CFI_ADV_OPTIONS is not set
-CONFIG_MTD_MAP_BANK_WIDTH_1=y
-CONFIG_MTD_MAP_BANK_WIDTH_2=y
-CONFIG_MTD_MAP_BANK_WIDTH_4=y
-# CONFIG_MTD_MAP_BANK_WIDTH_8 is not set
-# CONFIG_MTD_MAP_BANK_WIDTH_16 is not set
-# CONFIG_MTD_MAP_BANK_WIDTH_32 is not set
-CONFIG_MTD_CFI_I1=y
-CONFIG_MTD_CFI_I2=y
-# CONFIG_MTD_CFI_I4 is not set
-# CONFIG_MTD_CFI_I8 is not set
-# CONFIG_MTD_CFI_INTELEXT is not set
-CONFIG_MTD_CFI_AMDSTD=y
-# CONFIG_MTD_CFI_STAA is not set
-CONFIG_MTD_CFI_UTIL=y
-# CONFIG_MTD_RAM is not set
-# CONFIG_MTD_ROM is not set
-# CONFIG_MTD_ABSENT is not set
-
-#
-# Mapping drivers for chip access
-#
-CONFIG_MTD_COMPLEX_MAPPINGS=y
-CONFIG_MTD_PHYSMAP=y
-# CONFIG_MTD_PHYSMAP_COMPAT is not set
-# CONFIG_MTD_PLATRAM is not set
-
-#
-# Self-contained MTD device drivers
-#
-# CONFIG_MTD_SLRAM is not set
-# CONFIG_MTD_PHRAM is not set
-# CONFIG_MTD_MTDRAM is not set
-# CONFIG_MTD_BLOCK2MTD is not set
-
-#
-# Disk-On-Chip Device Drivers
-#
-# CONFIG_MTD_DOC2000 is not set
-# CONFIG_MTD_DOC2001 is not set
-# CONFIG_MTD_DOC2001PLUS is not set
-# CONFIG_MTD_NAND is not set
-# CONFIG_MTD_ONENAND is not set
-
-#
-# LPDDR flash memory drivers
-#
-# CONFIG_MTD_LPDDR is not set
-
-#
-# UBI - Unsorted block images
-#
-# CONFIG_MTD_UBI is not set
-# CONFIG_PARPORT is not set
-CONFIG_BLK_DEV=y
-# CONFIG_BLK_DEV_COW_COMMON is not set
-# CONFIG_BLK_DEV_LOOP is not set
-# CONFIG_BLK_DEV_NBD is not set
-# CONFIG_BLK_DEV_RAM is not set
-# CONFIG_CDROM_PKTCDVD is not set
-# CONFIG_ATA_OVER_ETH is not set
-# CONFIG_BLK_DEV_HD is not set
-# CONFIG_MISC_DEVICES is not set
-CONFIG_HAVE_IDE=y
-# CONFIG_IDE is not set
-
-#
-# SCSI device support
-#
-# CONFIG_RAID_ATTRS is not set
-# CONFIG_SCSI is not set
-# CONFIG_SCSI_DMA is not set
-# CONFIG_SCSI_NETLINK is not set
-# CONFIG_ATA is not set
-# CONFIG_MD is not set
-CONFIG_NETDEVICES=y
-CONFIG_COMPAT_NET_DEV_OPS=y
-# CONFIG_DUMMY is not set
-# CONFIG_BONDING is not set
-# CONFIG_MACVLAN is not set
-# CONFIG_EQUALIZER is not set
-# CONFIG_TUN is not set
-# CONFIG_VETH is not set
-CONFIG_PHYLIB=y
-# CONFIG_SWCONFIG is not set
-
-#
-# MII PHY device drivers
-#
-# CONFIG_MARVELL_PHY is not set
-# CONFIG_DAVICOM_PHY is not set
-# CONFIG_QSEMI_PHY is not set
-# CONFIG_LXT_PHY is not set
-# CONFIG_CICADA_PHY is not set
-# CONFIG_VITESSE_PHY is not set
-# CONFIG_SMSC_PHY is not set
-# CONFIG_BROADCOM_PHY is not set
-# CONFIG_ICPLUS_PHY is not set
-# CONFIG_REALTEK_PHY is not set
-# CONFIG_NATIONAL_PHY is not set
-# CONFIG_STE10XP is not set
-# CONFIG_LSI_ET1011C_PHY is not set
-CONFIG_FIXED_PHY=y
-# CONFIG_MDIO_BITBANG is not set
-CONFIG_NET_ETHERNET=y
-CONFIG_MII=y
-# CONFIG_AX88796 is not set
-# CONFIG_SMC91X is not set
-# CONFIG_DM9000 is not set
-# CONFIG_ETHOC is not set
-# CONFIG_DNET is not set
-# CONFIG_IBM_NEW_EMAC_ZMII is not set
-# CONFIG_IBM_NEW_EMAC_RGMII is not set
-# CONFIG_IBM_NEW_EMAC_TAH is not set
-# CONFIG_IBM_NEW_EMAC_EMAC4 is not set
-# CONFIG_IBM_NEW_EMAC_NO_FLOW_CTRL is not set
-# CONFIG_IBM_NEW_EMAC_MAL_CLR_ICINTSTAT is not set
-# CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR is not set
-# CONFIG_B44 is not set
-CONFIG_CPMAC=y
-# CONFIG_NETDEV_1000 is not set
-# CONFIG_NETDEV_10000 is not set
-
-#
-# Wireless LAN
-#
-# CONFIG_WLAN_PRE80211 is not set
-# CONFIG_WLAN_80211 is not set
-
-#
-# Enable WiMAX (Networking options) to see the WiMAX drivers
-#
-# CONFIG_WAN is not set
-# CONFIG_PPP is not set
-# CONFIG_SLIP is not set
-# CONFIG_NETCONSOLE is not set
-# CONFIG_NETPOLL is not set
-# CONFIG_NET_POLL_CONTROLLER is not set
-# CONFIG_ISDN is not set
-# CONFIG_PHONE is not set
-
-#
-# Input device support
-#
-# CONFIG_INPUT is not set
-
-#
-# Hardware I/O ports
-#
-# CONFIG_SERIO is not set
-# CONFIG_GAMEPORT is not set
-
-#
-# Character devices
-#
-# CONFIG_VT is not set
-# CONFIG_DEVKMEM is not set
-# CONFIG_SERIAL_NONSTANDARD is not set
-
-#
-# Serial drivers
-#
-CONFIG_SERIAL_8250=y
-CONFIG_SERIAL_8250_CONSOLE=y
-CONFIG_SERIAL_8250_NR_UARTS=4
-CONFIG_SERIAL_8250_RUNTIME_UARTS=4
-# CONFIG_SERIAL_8250_EXTENDED is not set
-
-#
-# Non-8250 serial port support
-#
-CONFIG_SERIAL_CORE=y
-CONFIG_SERIAL_CORE_CONSOLE=y
-CONFIG_UNIX98_PTYS=y
-# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set
-# CONFIG_LEGACY_PTYS is not set
-# CONFIG_IPMI_HANDLER is not set
-# CONFIG_HW_RANDOM is not set
-# CONFIG_R3964 is not set
-CONFIG_AR7_GPIO=y
-# CONFIG_RAW_DRIVER is not set
-# CONFIG_TCG_TPM is not set
-# CONFIG_I2C is not set
-# CONFIG_SPI is not set
-# CONFIG_W1 is not set
-# CONFIG_POWER_SUPPLY is not set
-# CONFIG_HWMON is not set
-# CONFIG_THERMAL is not set
-# CONFIG_THERMAL_HWMON is not set
-CONFIG_WATCHDOG=y
-# CONFIG_WATCHDOG_NOWAYOUT is not set
-
-#
-# Watchdog Device Drivers
-#
-# CONFIG_SOFT_WATCHDOG is not set
-CONFIG_AR7_WDT=y
-CONFIG_SSB_POSSIBLE=y
-
-#
-# Sonics Silicon Backplane
-#
-# CONFIG_SSB is not set
-
-#
-# Multifunction device drivers
-#
-# CONFIG_MFD_CORE is not set
-# CONFIG_MFD_SM501 is not set
-# CONFIG_HTC_PASIC3 is not set
-# CONFIG_MFD_TMIO is not set
-# CONFIG_REGULATOR is not set
-
-#
-# Multimedia devices
-#
-
-#
-# Multimedia core support
-#
-# CONFIG_VIDEO_DEV is not set
-# CONFIG_DVB_CORE is not set
-# CONFIG_VIDEO_MEDIA is not set
-
-#
-# Multimedia drivers
-#
-# CONFIG_DAB is not set
-
-#
-# Graphics support
-#
-# CONFIG_VGASTATE is not set
-# CONFIG_VIDEO_OUTPUT_CONTROL is not set
-# CONFIG_FB is not set
-# CONFIG_BACKLIGHT_LCD_SUPPORT is not set
-
-#
-# Display device support
-#
-# CONFIG_DISPLAY_SUPPORT is not set
-# CONFIG_SOUND is not set
-# CONFIG_USB_SUPPORT is not set
-# CONFIG_MMC is not set
-# CONFIG_MEMSTICK is not set
-# CONFIG_NEW_LEDS is not set
-# CONFIG_ACCESSIBILITY is not set
-CONFIG_RTC_LIB=y
-# CONFIG_RTC_CLASS is not set
-# CONFIG_DMADEVICES is not set
-# CONFIG_AUXDISPLAY is not set
-# CONFIG_UIO is not set
-
-#
-# TI VLYNQ
-#
-CONFIG_VLYNQ=y
-# CONFIG_STAGING is not set
-
-#
-# File systems
-#
-# CONFIG_EXT2_FS is not set
-# CONFIG_EXT3_FS is not set
-# CONFIG_EXT4_FS is not set
-# CONFIG_REISERFS_FS is not set
-# CONFIG_JFS_FS is not set
-# CONFIG_FS_POSIX_ACL is not set
-# CONFIG_XFS_FS is not set
-# CONFIG_OCFS2_FS is not set
-# CONFIG_BTRFS_FS is not set
-CONFIG_FILE_LOCKING=y
-# CONFIG_DNOTIFY is not set
-# CONFIG_INOTIFY is not set
-# CONFIG_QUOTA is not set
-# CONFIG_AUTOFS_FS is not set
-# CONFIG_AUTOFS4_FS is not set
-# CONFIG_FUSE_FS is not set
-
-#
-# Caches
-#
-# CONFIG_FSCACHE is not set
-
-#
-# CD-ROM/DVD Filesystems
-#
-# CONFIG_ISO9660_FS is not set
-# CONFIG_UDF_FS is not set
-
-#
-# DOS/FAT/NT Filesystems
-#
-# CONFIG_MSDOS_FS is not set
-# CONFIG_VFAT_FS is not set
-# CONFIG_NTFS_FS is not set
-
-#
-# Pseudo filesystems
-#
-CONFIG_PROC_FS=y
-# CONFIG_PROC_KCORE is not set
-CONFIG_PROC_SYSCTL=y
-# CONFIG_PROC_PAGE_MONITOR is not set
-CONFIG_SYSFS=y
-CONFIG_TMPFS=y
-# CONFIG_TMPFS_POSIX_ACL is not set
-# CONFIG_HUGETLB_PAGE is not set
-# CONFIG_CONFIGFS_FS is not set
-CONFIG_MISC_FILESYSTEMS=y
-# CONFIG_ADFS_FS is not set
-# CONFIG_AFFS_FS is not set
-# CONFIG_HFS_FS is not set
-# CONFIG_HFSPLUS_FS is not set
-# CONFIG_BEFS_FS is not set
-# CONFIG_BFS_FS is not set
-# CONFIG_EFS_FS is not set
-# CONFIG_YAFFS_FS is not set
-# CONFIG_JFFS2_FS is not set
-# CONFIG_CRAMFS is not set
-# CONFIG_SQUASHFS is not set
-# CONFIG_VXFS_FS is not set
-# CONFIG_MINIX_FS is not set
-# CONFIG_OMFS_FS is not set
-# CONFIG_HPFS_FS is not set
-# CONFIG_QNX4FS_FS is not set
-# CONFIG_ROMFS_FS is not set
-# CONFIG_SYSV_FS is not set
-# CONFIG_UFS_FS is not set
-# CONFIG_AUFS_FS is not set
-# CONFIG_NILFS2_FS is not set
-CONFIG_NETWORK_FILESYSTEMS=y
-# CONFIG_NFS_FS is not set
-# CONFIG_NFSD is not set
-# CONFIG_SMB_FS is not set
-# CONFIG_CIFS is not set
-# CONFIG_NCP_FS is not set
-# CONFIG_CODA_FS is not set
-# CONFIG_AFS_FS is not set
-
-#
-# Partition Types
-#
-# CONFIG_PARTITION_ADVANCED is not set
-CONFIG_MSDOS_PARTITION=y
-# CONFIG_NLS is not set
-# CONFIG_DLM is not set
-
-#
-# Kernel hacking
-#
-CONFIG_TRACE_IRQFLAGS_SUPPORT=y
-CONFIG_PRINTK_TIME=y
-# CONFIG_ENABLE_WARN_DEPRECATED is not set
-# CONFIG_ENABLE_MUST_CHECK is not set
-CONFIG_FRAME_WARN=1024
-CONFIG_MAGIC_SYSRQ=y
-# CONFIG_UNUSED_SYMBOLS is not set
-# CONFIG_DEBUG_FS is not set
-# CONFIG_HEADERS_CHECK is not set
-# CONFIG_DEBUG_KERNEL is not set
-# CONFIG_DEBUG_MEMORY_INIT is not set
-# CONFIG_RCU_CPU_STALL_DETECTOR is not set
-# CONFIG_SYSCTL_SYSCALL_CHECK is not set
-CONFIG_TRACING_SUPPORT=y
-
-#
-# Tracers
-#
-# CONFIG_IRQSOFF_TRACER is not set
-# CONFIG_SCHED_TRACER is not set
-# CONFIG_CONTEXT_SWITCH_TRACER is not set
-# CONFIG_EVENT_TRACER is not set
-# CONFIG_BOOT_TRACER is not set
-# CONFIG_TRACE_BRANCH_PROFILING is not set
-# CONFIG_KMEMTRACE is not set
-# CONFIG_WORKQUEUE_TRACER is not set
-# CONFIG_BLK_DEV_IO_TRACE is not set
-# CONFIG_SAMPLES is not set
-CONFIG_HAVE_ARCH_KGDB=y
-CONFIG_CMDLINE="console=ttyS0,38400"
-
-#
-# Security options
-#
-# CONFIG_KEYS is not set
-# CONFIG_SECURITY is not set
-# CONFIG_SECURITYFS is not set
-# CONFIG_SECURITY_FILE_CAPABILITIES is not set
-CONFIG_CRYPTO=y
-
-#
-# Crypto core or helper
-#
-# CONFIG_CRYPTO_FIPS is not set
-# CONFIG_CRYPTO_MANAGER is not set
-# CONFIG_CRYPTO_MANAGER2 is not set
-# CONFIG_CRYPTO_GF128MUL is not set
-# CONFIG_CRYPTO_NULL is not set
-# CONFIG_CRYPTO_CRYPTD is not set
-# CONFIG_CRYPTO_AUTHENC is not set
-# CONFIG_CRYPTO_TEST is not set
-
-#
-# Authenticated Encryption with Associated Data
-#
-# CONFIG_CRYPTO_CCM is not set
-# CONFIG_CRYPTO_GCM is not set
-# CONFIG_CRYPTO_SEQIV is not set
-
-#
-# Block modes
-#
-# CONFIG_CRYPTO_CBC is not set
-# CONFIG_CRYPTO_CTR is not set
-# CONFIG_CRYPTO_CTS is not set
-# CONFIG_CRYPTO_ECB is not set
-# CONFIG_CRYPTO_LRW is not set
-# CONFIG_CRYPTO_PCBC is not set
-# CONFIG_CRYPTO_XTS is not set
-
-#
-# Hash modes
-#
-# CONFIG_CRYPTO_HMAC is not set
-# CONFIG_CRYPTO_XCBC is not set
-
-#
-# Digest
-#
-# CONFIG_CRYPTO_CRC32C is not set
-# CONFIG_CRYPTO_MD4 is not set
-# CONFIG_CRYPTO_MD5 is not set
-# CONFIG_CRYPTO_MICHAEL_MIC is not set
-# CONFIG_CRYPTO_RMD128 is not set
-# CONFIG_CRYPTO_RMD160 is not set
-# CONFIG_CRYPTO_RMD256 is not set
-# CONFIG_CRYPTO_RMD320 is not set
-# CONFIG_CRYPTO_SHA1 is not set
-# CONFIG_CRYPTO_SHA256 is not set
-# CONFIG_CRYPTO_SHA512 is not set
-# CONFIG_CRYPTO_TGR192 is not set
-# CONFIG_CRYPTO_WP512 is not set
-
-#
-# Ciphers
-#
-# CONFIG_CRYPTO_AES is not set
-# CONFIG_CRYPTO_ANUBIS is not set
-# CONFIG_CRYPTO_ARC4 is not set
-# CONFIG_CRYPTO_BLOWFISH is not set
-# CONFIG_CRYPTO_CAMELLIA is not set
-# CONFIG_CRYPTO_CAST5 is not set
-# CONFIG_CRYPTO_CAST6 is not set
-# CONFIG_CRYPTO_DES is not set
-# CONFIG_CRYPTO_FCRYPT is not set
-# CONFIG_CRYPTO_KHAZAD is not set
-# CONFIG_CRYPTO_SALSA20 is not set
-# CONFIG_CRYPTO_SEED is not set
-# CONFIG_CRYPTO_SERPENT is not set
-# CONFIG_CRYPTO_TEA is not set
-# CONFIG_CRYPTO_TWOFISH is not set
-
-#
-# Compression
-#
-# CONFIG_CRYPTO_DEFLATE is not set
-# CONFIG_CRYPTO_ZLIB is not set
-# CONFIG_CRYPTO_LZO is not set
-
-#
-# Random Number Generation
-#
-# CONFIG_CRYPTO_ANSI_CPRNG is not set
-# CONFIG_CRYPTO_HW is not set
-
-#
-# OCF Configuration
-#
-# CONFIG_OCF_OCF is not set
-# CONFIG_BINARY_PRINTF is not set
-
-#
-# Library routines
-#
-CONFIG_GENERIC_FIND_LAST_BIT=y
-# CONFIG_CRC_CCITT is not set
-# CONFIG_CRC16 is not set
-# CONFIG_CRC_T10DIF is not set
-# CONFIG_CRC_ITU_T is not set
-# CONFIG_CRC32 is not set
-# CONFIG_CRC7 is not set
-# CONFIG_LIBCRC32C is not set
-CONFIG_HAS_IOMEM=y
-CONFIG_HAS_IOPORT=y
-CONFIG_HAS_DMA=y
-CONFIG_NLATTR=y

+ 0 - 4501
target/wag54g/patches/ar7.patch

@@ -1,4501 +0,0 @@
-diff -Nur linux-2.6.30.5.orig/arch/mips/ar7/clock.c linux-2.6.30.5/arch/mips/ar7/clock.c
---- linux-2.6.30.5.orig/arch/mips/ar7/clock.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.30.5/arch/mips/ar7/clock.c	2009-08-26 20:05:03.000000000 +0200
-@@ -0,0 +1,483 @@
-+/*
-+ * Copyright (C) 2007 Felix Fietkau <nbd@openwrt.org>
-+ * Copyright (C) 2007 Eugene Konev <ejka@openwrt.org>
-+ *
-+ * This program is free software; you can redistribute it and/or modify
-+ * it under the terms of the GNU General Public License as published by
-+ * the Free Software Foundation; either version 2 of the License, or
-+ * (at your option) any later version.
-+ *
-+ * This program is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-+ * GNU General Public License for more details.
-+ *
-+ * You should have received a copy of the GNU General Public License
-+ * along with this program; if not, write to the Free Software
-+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-+ */
-+
-+#include <linux/init.h>
-+#include <linux/types.h>
-+#include <linux/module.h>
-+#include <linux/delay.h>
-+#include <asm/addrspace.h>
-+#include <asm/io.h>
-+#include <asm/ar7/ar7.h>
-+
-+#define BOOT_PLL_SOURCE_MASK	0x3
-+#define CPU_PLL_SOURCE_SHIFT	16
-+#define BUS_PLL_SOURCE_SHIFT	14
-+#define USB_PLL_SOURCE_SHIFT	18
-+#define DSP_PLL_SOURCE_SHIFT	22
-+#define BOOT_PLL_SOURCE_AFE	0
-+#define BOOT_PLL_SOURCE_BUS	0
-+#define BOOT_PLL_SOURCE_REF	1
-+#define BOOT_PLL_SOURCE_XTAL	2
-+#define BOOT_PLL_SOURCE_CPU	3
-+#define BOOT_PLL_BYPASS		0x00000020
-+#define BOOT_PLL_ASYNC_MODE	0x02000000
-+#define BOOT_PLL_2TO1_MODE	0x00008000
-+
-+#define TNETD7200_CLOCK_ID_CPU	0
-+#define TNETD7200_CLOCK_ID_DSP	1
-+#define TNETD7200_CLOCK_ID_USB	2
-+
-+#define TNETD7200_DEF_CPU_CLK	211000000
-+#define TNETD7200_DEF_DSP_CLK	125000000
-+#define TNETD7200_DEF_USB_CLK	48000000
-+
-+struct tnetd7300_clock {
-+	u32 ctrl;
-+#define PREDIV_MASK	0x001f0000
-+#define PREDIV_SHIFT	16
-+#define POSTDIV_MASK	0x0000001f
-+	u32 unused1[3];
-+	u32 pll;
-+#define MUL_MASK	0x0000f000
-+#define MUL_SHIFT	12
-+#define PLL_MODE_MASK	0x00000001
-+#define PLL_NDIV	0x00000800
-+#define PLL_DIV		0x00000002
-+#define PLL_STATUS	0x00000001
-+	u32 unused2[3];
-+};
-+
-+struct tnetd7300_clocks {
-+	struct tnetd7300_clock bus;
-+	struct tnetd7300_clock cpu;
-+	struct tnetd7300_clock usb;
-+	struct tnetd7300_clock dsp;
-+};
-+
-+struct tnetd7200_clock {
-+	u32 ctrl;
-+	u32 unused1[3];
-+#define DIVISOR_ENABLE_MASK 0x00008000
-+	u32 mul;
-+	u32 prediv;
-+	u32 postdiv;
-+	u32 postdiv2;
-+	u32 unused2[6];
-+	u32 cmd;
-+	u32 status;
-+	u32 cmden;
-+	u32 padding[15];
-+};
-+
-+struct tnetd7200_clocks {
-+	struct tnetd7200_clock cpu;
-+	struct tnetd7200_clock dsp;
-+	struct tnetd7200_clock usb;
-+};
-+
-+int ar7_cpu_clock = 150000000;
-+EXPORT_SYMBOL(ar7_cpu_clock);
-+int ar7_bus_clock = 125000000;
-+EXPORT_SYMBOL(ar7_bus_clock);
-+int ar7_dsp_clock;
-+EXPORT_SYMBOL(ar7_dsp_clock);
-+
-+static int gcd(int a, int b)
-+{
-+	int c;
-+
-+	if (a < b) {
-+		c = a;
-+		a = b;
-+		b = c;
-+	}
-+	while ((c = (a % b))) {
-+		a = b;
-+		b = c;
-+	}
-+	return b;
-+}
-+
-+static void approximate(int base, int target, int *prediv,
-+			int *postdiv, int *mul)
-+{
-+	int i, j, k, freq, res = target;
-+	for (i = 1; i <= 16; i++)
-+		for (j = 1; j <= 32; j++)
-+			for (k = 1; k <= 32; k++) {
-+				freq = abs(base / j * i / k - target);
-+				if (freq < res) {
-+					res = freq;
-+					*mul = i;
-+					*prediv = j;
-+					*postdiv = k;
-+				}
-+			}
-+}
-+
-+static void calculate(int base, int target, int *prediv, int *postdiv,
-+	int *mul)
-+{
-+	int tmp_gcd, tmp_base, tmp_freq;
-+
-+	for (*prediv = 1; *prediv <= 32; (*prediv)++) {
-+		tmp_base = base / *prediv;
-+		tmp_gcd = gcd(target, tmp_base);
-+		*mul = target / tmp_gcd;
-+		*postdiv = tmp_base / tmp_gcd;
-+		if ((*mul < 1) || (*mul >= 16))
-+			continue;
-+		if ((*postdiv > 0) & (*postdiv <= 32))
-+			break;
-+	}
-+
-+	if (base / (*prediv) * (*mul) / (*postdiv) != target) {
-+		approximate(base, target, prediv, postdiv, mul);
-+		tmp_freq = base / (*prediv) * (*mul) / (*postdiv);
-+		printk(KERN_WARNING
-+		       "Adjusted requested frequency %d to %d\n",
-+		       target, tmp_freq);
-+	}
-+
-+	printk(KERN_DEBUG "Clocks: prediv: %d, postdiv: %d, mul: %d\n",
-+	       *prediv, *postdiv, *mul);
-+}
-+
-+static int tnetd7300_dsp_clock(void)
-+{
-+	u32 didr1, didr2;
-+	u8 rev = ar7_chip_rev();
-+	didr1 = readl((void *)KSEG1ADDR(AR7_REGS_GPIO + 0x18));
-+	didr2 = readl((void *)KSEG1ADDR(AR7_REGS_GPIO + 0x1c));
-+	if (didr2 & (1 << 23))
-+		return 0;
-+	if ((rev >= 0x23) && (rev != 0x57))
-+		return 250000000;
-+	if ((((didr2 & 0x1fff) << 10) | ((didr1 & 0xffc00000) >> 22))
-+	    > 4208000)
-+		return 250000000;
-+	return 0;
-+}
-+
-+static int tnetd7300_get_clock(u32 shift, struct tnetd7300_clock *clock,
-+	u32 *bootcr, u32 bus_clock)
-+{
-+	int product;
-+	int base_clock = AR7_REF_CLOCK;
-+	u32 ctrl = readl(&clock->ctrl);
-+	u32 pll = readl(&clock->pll);
-+	int prediv = ((ctrl & PREDIV_MASK) >> PREDIV_SHIFT) + 1;
-+	int postdiv = (ctrl & POSTDIV_MASK) + 1;
-+	int divisor = prediv * postdiv;
-+	int mul = ((pll & MUL_MASK) >> MUL_SHIFT) + 1;
-+
-+	switch ((*bootcr & (BOOT_PLL_SOURCE_MASK << shift)) >> shift) {
-+	case BOOT_PLL_SOURCE_BUS:
-+		base_clock = bus_clock;
-+		break;
-+	case BOOT_PLL_SOURCE_REF:
-+		base_clock = AR7_REF_CLOCK;
-+		break;
-+	case BOOT_PLL_SOURCE_XTAL:
-+		base_clock = AR7_XTAL_CLOCK;
-+		break;
-+	case BOOT_PLL_SOURCE_CPU:
-+		base_clock = ar7_cpu_clock;
-+		break;
-+	}
-+
-+	if (*bootcr & BOOT_PLL_BYPASS)
-+		return base_clock / divisor;
-+
-+	if ((pll & PLL_MODE_MASK) == 0)
-+		return (base_clock >> (mul / 16 + 1)) / divisor;
-+
-+	if ((pll & (PLL_NDIV | PLL_DIV)) == (PLL_NDIV | PLL_DIV)) {
-+		product = (mul & 1) ?
-+			(base_clock * mul) >> 1 :
-+			(base_clock * (mul - 1)) >> 2;
-+		return product / divisor;
-+	}
-+
-+	if (mul == 16)
-+		return base_clock / divisor;
-+
-+	return base_clock * mul / divisor;
-+}
-+
-+static void tnetd7300_set_clock(u32 shift, struct tnetd7300_clock *clock,
-+	u32 *bootcr, u32 frequency)
-+{
-+	int prediv, postdiv, mul;
-+	int base_clock = ar7_bus_clock;
-+
-+	switch ((*bootcr & (BOOT_PLL_SOURCE_MASK << shift)) >> shift) {
-+	case BOOT_PLL_SOURCE_BUS:
-+		base_clock = ar7_bus_clock;
-+		break;
-+	case BOOT_PLL_SOURCE_REF:
-+		base_clock = AR7_REF_CLOCK;
-+		break;
-+	case BOOT_PLL_SOURCE_XTAL:
-+		base_clock = AR7_XTAL_CLOCK;
-+		break;
-+	case BOOT_PLL_SOURCE_CPU:
-+		base_clock = ar7_cpu_clock;
-+		break;
-+	}
-+
-+	calculate(base_clock, frequency, &prediv, &postdiv, &mul);
-+
-+	writel(((prediv - 1) << PREDIV_SHIFT) | (postdiv - 1), &clock->ctrl);
-+	mdelay(1);
-+	writel(4, &clock->pll);
-+	while (readl(&clock->pll) & PLL_STATUS);
-+	writel(((mul - 1) << MUL_SHIFT) | (0xff << 3) | 0x0e, &clock->pll);
-+	mdelay(75);
-+}
-+
-+static void __init tnetd7300_init_clocks(void)
-+{
-+	u32 *bootcr = (u32 *)ioremap_nocache(AR7_REGS_DCL, 4);
-+	struct tnetd7300_clocks *clocks =
-+					(struct tnetd7300_clocks *)
-+					ioremap_nocache(AR7_REGS_POWER + 0x20,
-+					sizeof(struct tnetd7300_clocks));
-+
-+	ar7_bus_clock = tnetd7300_get_clock(BUS_PLL_SOURCE_SHIFT,
-+		&clocks->bus, bootcr, AR7_AFE_CLOCK);
-+
-+	if (*bootcr & BOOT_PLL_ASYNC_MODE)
-+		ar7_cpu_clock = tnetd7300_get_clock(CPU_PLL_SOURCE_SHIFT,
-+			&clocks->cpu, bootcr, AR7_AFE_CLOCK);
-+	else
-+		ar7_cpu_clock = ar7_bus_clock;
-+/*
-+	tnetd7300_set_clock(USB_PLL_SOURCE_SHIFT, &clocks->usb,
-+		bootcr, 48000000);
-+*/
-+	if (ar7_dsp_clock == 250000000)
-+		tnetd7300_set_clock(DSP_PLL_SOURCE_SHIFT, &clocks->dsp,
-+			bootcr, ar7_dsp_clock);
-+
-+	iounmap(clocks);
-+	iounmap(bootcr);
-+}
-+
-+static int tnetd7200_get_clock(int base, struct tnetd7200_clock *clock,
-+	u32 *bootcr, u32 bus_clock)
-+{
-+	int divisor = ((readl(&clock->prediv) & 0x1f) + 1) *
-+		((readl(&clock->postdiv) & 0x1f) + 1);
-+
-+	if (*bootcr & BOOT_PLL_BYPASS)
-+		return base / divisor;
-+
-+	return base * ((readl(&clock->mul) & 0xf) + 1) / divisor;
-+}
-+
-+
-+static void tnetd7200_set_clock(int base, struct tnetd7200_clock *clock,
-+	int prediv, int postdiv, int postdiv2, int mul, u32 frequency)
-+{
-+	printk(KERN_INFO
-+		"Clocks: base = %d, frequency = %u, prediv = %d, "
-+		"postdiv = %d, postdiv2 = %d, mul = %d\n",
-+		base, frequency, prediv, postdiv, postdiv2, mul);
-+
-+	writel(0, &clock->ctrl);
-+	writel(DIVISOR_ENABLE_MASK | ((prediv - 1) & 0x1F), &clock->prediv);
-+	writel((mul - 1) & 0xF, &clock->mul);
-+
-+	for (mul = 0; mul < 2000; mul++) /* nop */;
-+
-+	while (readl(&clock->status) & 0x1) /* nop */;
-+
-+	writel(DIVISOR_ENABLE_MASK | ((postdiv - 1) & 0x1F), &clock->postdiv);
-+
-+	writel(readl(&clock->cmden) | 1, &clock->cmden);
-+	writel(readl(&clock->cmd) | 1, &clock->cmd);
-+
-+	while (readl(&clock->status) & 0x1) /* nop */;
-+
-+	writel(DIVISOR_ENABLE_MASK | ((postdiv2 - 1) & 0x1F), &clock->postdiv2);
-+
-+	writel(readl(&clock->cmden) | 1, &clock->cmden);
-+	writel(readl(&clock->cmd) | 1, &clock->cmd);
-+
-+	while (readl(&clock->status) & 0x1) /* nop */;
-+
-+	writel(readl(&clock->ctrl) | 1, &clock->ctrl);
-+}
-+
-+static int tnetd7200_get_clock_base(int clock_id, u32 *bootcr)
-+{
-+	if (*bootcr & BOOT_PLL_ASYNC_MODE)
-+		/* Async */
-+		switch (clock_id) {
-+		case TNETD7200_CLOCK_ID_DSP:
-+			return AR7_REF_CLOCK;
-+		default:
-+			return AR7_AFE_CLOCK;
-+		}
-+	else
-+		/* Sync */
-+		if (*bootcr & BOOT_PLL_2TO1_MODE)
-+			/* 2:1 */
-+			switch (clock_id) {
-+			case TNETD7200_CLOCK_ID_DSP:
-+				return AR7_REF_CLOCK;
-+			default:
-+				return AR7_AFE_CLOCK;
-+			}
-+		else
-+			/* 1:1 */
-+			return AR7_REF_CLOCK;
-+}
-+
-+
-+static void __init tnetd7200_init_clocks(void)
-+{
-+	u32 *bootcr = (u32 *)ioremap_nocache(AR7_REGS_DCL, 4);
-+	struct tnetd7200_clocks *clocks =
-+					(struct tnetd7200_clocks *)
-+					ioremap_nocache(AR7_REGS_POWER + 0x80,
-+					sizeof(struct tnetd7200_clocks));
-+	int cpu_base, cpu_mul, cpu_prediv, cpu_postdiv;
-+	int dsp_base, dsp_mul, dsp_prediv, dsp_postdiv;
-+	int usb_base, usb_mul, usb_prediv, usb_postdiv;
-+
-+/*
-+	Log from Fritz!Box 7170 Annex B:
-+
-+	CPU revision is: 00018448
-+	Clocks: Async mode
-+	Clocks: Setting DSP clock
-+	Clocks: prediv: 1, postdiv: 1, mul: 5
-+	Clocks: base = 25000000, frequency = 125000000, prediv = 1,
-+			postdiv = 2, postdiv2 = 1, mul = 10
-+	Clocks: Setting CPU clock
-+	Adjusted requested frequency 211000000 to 211968000
-+	Clocks: prediv: 1, postdiv: 1, mul: 6
-+	Clocks: base = 35328000, frequency = 211968000, prediv = 1,
-+			postdiv = 1, postdiv2 = -1, mul = 6
-+	Clocks: Setting USB clock
-+	Adjusted requested frequency 48000000 to 48076920
-+	Clocks: prediv: 13, postdiv: 1, mul: 5
-+	Clocks: base = 125000000, frequency = 48000000, prediv = 13,
-+			postdiv = 1, postdiv2 = -1, mul = 5
-+
-+	DSL didn't work if you didn't set the postdiv 2:1 postdiv2 combination,
-+	driver hung on startup.
-+	Haven't tested this on a synchronous board,
-+	neither do i know what to do with ar7_dsp_clock
-+*/
-+
-+	cpu_base = tnetd7200_get_clock_base(TNETD7200_CLOCK_ID_CPU, bootcr);
-+	dsp_base = tnetd7200_get_clock_base(TNETD7200_CLOCK_ID_DSP, bootcr);
-+
-+	if (*bootcr & BOOT_PLL_ASYNC_MODE) {
-+		printk(KERN_INFO "Clocks: Async mode\n");
-+
-+		printk(KERN_INFO "Clocks: Setting DSP clock\n");
-+		calculate(dsp_base, TNETD7200_DEF_DSP_CLK,
-+			&dsp_prediv, &dsp_postdiv, &dsp_mul);
-+		ar7_bus_clock =
-+			((dsp_base / dsp_prediv) * dsp_mul) / dsp_postdiv;
-+		tnetd7200_set_clock(dsp_base, &clocks->dsp,
-+			dsp_prediv, dsp_postdiv * 2, dsp_postdiv, dsp_mul * 2,
-+			ar7_bus_clock);
-+
-+		printk(KERN_INFO "Clocks: Setting CPU clock\n");
-+		calculate(cpu_base, TNETD7200_DEF_CPU_CLK, &cpu_prediv,
-+			&cpu_postdiv, &cpu_mul);
-+		ar7_cpu_clock =
-+			((cpu_base / cpu_prediv) * cpu_mul) / cpu_postdiv;
-+		tnetd7200_set_clock(cpu_base, &clocks->cpu,
-+			cpu_prediv, cpu_postdiv, -1, cpu_mul,
-+			ar7_cpu_clock);
-+
-+	} else
-+		if (*bootcr & BOOT_PLL_2TO1_MODE) {
-+			printk(KERN_INFO "Clocks: Sync 2:1 mode\n");
-+
-+			printk(KERN_INFO "Clocks: Setting CPU clock\n");
-+			calculate(cpu_base, TNETD7200_DEF_CPU_CLK, &cpu_prediv,
-+				&cpu_postdiv, &cpu_mul);
-+			ar7_cpu_clock = ((cpu_base / cpu_prediv) * cpu_mul)
-+								/ cpu_postdiv;
-+			tnetd7200_set_clock(cpu_base, &clocks->cpu,
-+				cpu_prediv, cpu_postdiv, -1, cpu_mul,
-+				ar7_cpu_clock);
-+
-+			printk(KERN_INFO "Clocks: Setting DSP clock\n");
-+			calculate(dsp_base, TNETD7200_DEF_DSP_CLK, &dsp_prediv,
-+				&dsp_postdiv, &dsp_mul);
-+			ar7_bus_clock = ar7_cpu_clock / 2;
-+			tnetd7200_set_clock(dsp_base, &clocks->dsp,
-+				dsp_prediv, dsp_postdiv * 2, dsp_postdiv,
-+				dsp_mul * 2, ar7_bus_clock);
-+		} else {
-+			printk(KERN_INFO "Clocks: Sync 1:1 mode\n");
-+
-+			printk(KERN_INFO "Clocks: Setting DSP clock\n");
-+			calculate(dsp_base, TNETD7200_DEF_DSP_CLK, &dsp_prediv,
-+				&dsp_postdiv, &dsp_mul);
-+			ar7_bus_clock = ((dsp_base / dsp_prediv) * dsp_mul)
-+								/ dsp_postdiv;
-+			tnetd7200_set_clock(dsp_base, &clocks->dsp,
-+				dsp_prediv, dsp_postdiv * 2, dsp_postdiv,
-+				dsp_mul * 2, ar7_bus_clock);
-+
-+			ar7_cpu_clock = ar7_bus_clock;
-+		}
-+
-+	printk(KERN_INFO "Clocks: Setting USB clock\n");
-+	usb_base = ar7_bus_clock;
-+	calculate(usb_base, TNETD7200_DEF_USB_CLK, &usb_prediv,
-+		&usb_postdiv, &usb_mul);
-+	tnetd7200_set_clock(usb_base, &clocks->usb,
-+		usb_prediv, usb_postdiv, -1, usb_mul,
-+		TNETD7200_DEF_USB_CLK);
-+
-+	#warning FIXME
-+	ar7_dsp_clock = ar7_cpu_clock;
-+
-+	iounmap(clocks);
-+	iounmap(bootcr);
-+}
-+
-+void __init ar7_init_clocks(void)
-+{
-+	switch (ar7_chip_id()) {
-+	case AR7_CHIP_7100:
-+#warning FIXME: Check if the new 7200 clock init works for 7100
-+		tnetd7200_init_clocks();
-+		break;
-+	case AR7_CHIP_7200:
-+		tnetd7200_init_clocks();
-+		break;
-+	case AR7_CHIP_7300:
-+		ar7_dsp_clock = tnetd7300_dsp_clock();
-+		tnetd7300_init_clocks();
-+		break;
-+	default:
-+		break;
-+	}
-+}
-diff -Nur linux-2.6.30.5.orig/arch/mips/ar7/gpio.c linux-2.6.30.5/arch/mips/ar7/gpio.c
---- linux-2.6.30.5.orig/arch/mips/ar7/gpio.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.30.5/arch/mips/ar7/gpio.c	2009-08-26 20:05:03.000000000 +0200
-@@ -0,0 +1,49 @@
-+/*
-+ * Copyright (C) 2007 Felix Fietkau <nbd@openwrt.org>
-+ * Copyright (C) 2007 Eugene Konev <ejka@openwrt.org>
-+ *
-+ * This program is free software; you can redistribute it and/or modify
-+ * it under the terms of the GNU General Public License as published by
-+ * the Free Software Foundation; either version 2 of the License, or
-+ * (at your option) any later version.
-+ *
-+ * This program is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-+ * GNU General Public License for more details.
-+ *
-+ * You should have received a copy of the GNU General Public License
-+ * along with this program; if not, write to the Free Software
-+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-+ */
-+
-+#include <linux/module.h>
-+
-+#include <asm/ar7/gpio.h>
-+
-+static const char *ar7_gpio_list[AR7_GPIO_MAX];
-+
-+int gpio_request(unsigned gpio, const char *label)
-+{
-+	if (gpio >= AR7_GPIO_MAX)
-+		return -EINVAL;
-+
-+	if (ar7_gpio_list[gpio])
-+		return -EBUSY;
-+
-+	if (label) {
-+		ar7_gpio_list[gpio] = label;
-+	} else {
-+		ar7_gpio_list[gpio] = "busy";
-+	}
-+
-+	return 0;
-+}
-+EXPORT_SYMBOL(gpio_request);
-+
-+void gpio_free(unsigned gpio)
-+{
-+	BUG_ON(!ar7_gpio_list[gpio]);
-+	ar7_gpio_list[gpio] = NULL;
-+}
-+EXPORT_SYMBOL(gpio_free);
-diff -Nur linux-2.6.30.5.orig/arch/mips/ar7/irq.c linux-2.6.30.5/arch/mips/ar7/irq.c
---- linux-2.6.30.5.orig/arch/mips/ar7/irq.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.30.5/arch/mips/ar7/irq.c	2009-08-26 20:05:03.000000000 +0200
-@@ -0,0 +1,183 @@
-+/*
-+ * Copyright (C) 2006,2007 Felix Fietkau <nbd@openwrt.org>
-+ * Copyright (C) 2006,2007 Eugene Konev <ejka@openwrt.org>
-+ *
-+ * This program is free software; you can redistribute it and/or modify
-+ * it under the terms of the GNU General Public License as published by
-+ * the Free Software Foundation; either version 2 of the License, or
-+ * (at your option) any later version.
-+ *
-+ * This program is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-+ * GNU General Public License for more details.
-+ *
-+ * You should have received a copy of the GNU General Public License
-+ * along with this program; if not, write to the Free Software
-+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-+ */
-+
-+#include <linux/interrupt.h>
-+#include <linux/io.h>
-+
-+#include <asm/irq_cpu.h>
-+#include <asm/mipsregs.h>
-+#include <asm/ar7/ar7.h>
-+
-+#define EXCEPT_OFFSET	0x80
-+#define PACE_OFFSET	0xA0
-+#define CHNLS_OFFSET	0x200
-+
-+#define REG_OFFSET(irq, reg)	((irq) / 32 * 0x4 + reg * 0x10)
-+#define SEC_REG_OFFSET(reg)	(EXCEPT_OFFSET + reg * 0x8)
-+#define SEC_SR_OFFSET		(SEC_REG_OFFSET(0))	/* 0x80 */
-+#define CR_OFFSET(irq)		(REG_OFFSET(irq, 1))	/* 0x10 */
-+#define SEC_CR_OFFSET		(SEC_REG_OFFSET(1))	/* 0x88 */
-+#define ESR_OFFSET(irq)		(REG_OFFSET(irq, 2))	/* 0x20 */
-+#define SEC_ESR_OFFSET		(SEC_REG_OFFSET(2))	/* 0x90 */
-+#define ECR_OFFSET(irq)		(REG_OFFSET(irq, 3))	/* 0x30 */
-+#define SEC_ECR_OFFSET		(SEC_REG_OFFSET(3))	/* 0x98 */
-+#define PIR_OFFSET		(0x40)
-+#define MSR_OFFSET		(0x44)
-+#define PM_OFFSET(irq)		(REG_OFFSET(irq, 5))	/* 0x50 */
-+#define TM_OFFSET(irq)		(REG_OFFSET(irq, 6))	/* 0x60 */
-+
-+#define REG(addr) ((u32 *)(KSEG1ADDR(AR7_REGS_IRQ) + addr))
-+
-+#define CHNL_OFFSET(chnl) (CHNLS_OFFSET + (chnl * 4))
-+
-+static void ar7_unmask_irq(unsigned int irq_nr);
-+static void ar7_mask_irq(unsigned int irq_nr);
-+static void ar7_ack_irq(unsigned int irq_nr);
-+static void ar7_unmask_sec_irq(unsigned int irq_nr);
-+static void ar7_mask_sec_irq(unsigned int irq_nr);
-+static void ar7_ack_sec_irq(unsigned int irq_nr);
-+static void ar7_cascade(void);
-+static void ar7_irq_init(int base);
-+static int ar7_irq_base;
-+
-+static struct irq_chip ar7_irq_type = {
-+	.name = "AR7",
-+	.unmask = ar7_unmask_irq,
-+	.mask = ar7_mask_irq,
-+	.ack = ar7_ack_irq
-+};
-+
-+static struct irq_chip ar7_sec_irq_type = {
-+	.name = "AR7",
-+	.unmask = ar7_unmask_sec_irq,
-+	.mask = ar7_mask_sec_irq,
-+	.ack = ar7_ack_sec_irq,
-+};
-+
-+static struct irqaction ar7_cascade_action = {
-+	.handler = no_action,
-+	.name = "AR7 cascade interrupt"
-+};
-+
-+static void ar7_unmask_irq(unsigned int irq)
-+{
-+	writel(1 << ((irq - ar7_irq_base) % 32),
-+	       REG(ESR_OFFSET(irq - ar7_irq_base)));
-+}
-+
-+static void ar7_mask_irq(unsigned int irq)
-+{
-+	writel(1 << ((irq - ar7_irq_base) % 32),
-+	       REG(ECR_OFFSET(irq - ar7_irq_base)));
-+}
-+
-+static void ar7_ack_irq(unsigned int irq)
-+{
-+	writel(1 << ((irq - ar7_irq_base) % 32),
-+	       REG(CR_OFFSET(irq - ar7_irq_base)));
-+}
-+
-+static void ar7_unmask_sec_irq(unsigned int irq)
-+{
-+	writel(1 << (irq - ar7_irq_base - 40), REG(SEC_ESR_OFFSET));
-+}
-+
-+static void ar7_mask_sec_irq(unsigned int irq)
-+{
-+	writel(1 << (irq - ar7_irq_base - 40), REG(SEC_ECR_OFFSET));
-+}
-+
-+static void ar7_ack_sec_irq(unsigned int irq)
-+{
-+	writel(1 << (irq - ar7_irq_base - 40), REG(SEC_CR_OFFSET));
-+}
-+
-+void __init arch_init_irq(void) {
-+	mips_cpu_irq_init();
-+	ar7_irq_init(8);
-+}
-+
-+static void __init ar7_irq_init(int base)
-+{
-+	int i;
-+	/*
-+	 * Disable interrupts and clear pending
-+	 */
-+	writel(0xffffffff, REG(ECR_OFFSET(0)));
-+	writel(0xff, REG(ECR_OFFSET(32)));
-+	writel(0xffffffff, REG(SEC_ECR_OFFSET));
-+	writel(0xffffffff, REG(CR_OFFSET(0)));
-+	writel(0xff, REG(CR_OFFSET(32)));
-+	writel(0xffffffff, REG(SEC_CR_OFFSET));
-+
-+	ar7_irq_base = base;
-+
-+	for (i = 0; i < 40; i++) {
-+		writel(i, REG(CHNL_OFFSET(i)));
-+		/* Primary IRQ's */
-+		set_irq_chip_and_handler(base + i, &ar7_irq_type,
-+					 handle_level_irq);
-+		/* Secondary IRQ's */
-+		if (i < 32)
-+			set_irq_chip_and_handler(base + i + 40,
-+						 &ar7_sec_irq_type,
-+						 handle_level_irq);
-+	}
-+
-+	setup_irq(2, &ar7_cascade_action);
-+	setup_irq(ar7_irq_base, &ar7_cascade_action);
-+	set_c0_status(IE_IRQ0);
-+}
-+
-+static void ar7_cascade(void)
-+{
-+	u32 status;
-+	int i, irq;
-+
-+	/* Primary IRQ's */
-+	irq = readl(REG(PIR_OFFSET)) & 0x3f;
-+	if (irq) {
-+		do_IRQ(ar7_irq_base + irq);
-+		return;
-+	}
-+
-+	/* Secondary IRQ's are cascaded through primary '0' */
-+	writel(1, REG(CR_OFFSET(irq)));
-+	status = readl(REG(SEC_SR_OFFSET));
-+	for (i = 0; i < 32; i++) {
-+		if (status & 1) {
-+			do_IRQ(ar7_irq_base + i + 40);
-+			return;
-+		}
-+		status >>= 1;
-+	}
-+
-+	spurious_interrupt();
-+}
-+
-+asmlinkage void plat_irq_dispatch(void)
-+{
-+	unsigned int pending = read_c0_status() & read_c0_cause() & ST0_IM;
-+	if (pending & STATUSF_IP7)		/* cpu timer */
-+		do_IRQ(7);
-+	else if (pending & STATUSF_IP2)		/* int0 hardware line */
-+		ar7_cascade();
-+	else
-+		spurious_interrupt();
-+}
-diff -Nur linux-2.6.30.5.orig/arch/mips/ar7/Makefile linux-2.6.30.5/arch/mips/ar7/Makefile
---- linux-2.6.30.5.orig/arch/mips/ar7/Makefile	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.30.5/arch/mips/ar7/Makefile	2009-08-26 20:05:03.000000000 +0200
-@@ -0,0 +1,10 @@
-+
-+obj-y := \
-+	prom.o \
-+	setup.o \
-+	memory.o \
-+	irq.o \
-+	time.o \
-+	platform.o \
-+	gpio.o \
-+	clock.o
-diff -Nur linux-2.6.30.5.orig/arch/mips/ar7/memory.c linux-2.6.30.5/arch/mips/ar7/memory.c
---- linux-2.6.30.5.orig/arch/mips/ar7/memory.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.30.5/arch/mips/ar7/memory.c	2009-08-26 20:05:03.000000000 +0200
-@@ -0,0 +1,74 @@
-+/*
-+ * Based on arch/mips/mm/init.c
-+ * Copyright (C) 1994 - 2000 Ralf Baechle
-+ * Copyright (C) 1999, 2000 Silicon Graphics, Inc.
-+ * Kevin D. Kissell, kevink@mips.com and Carsten Langgaard, carstenl@mips.com
-+ * Copyright (C) 2000 MIPS Technologies, Inc.  All rights reserved.
-+ *
-+ * This program is free software; you can redistribute it and/or modify
-+ * it under the terms of the GNU General Public License as published by
-+ * the Free Software Foundation; either version 2 of the License, or
-+ * (at your option) any later version.
-+ *
-+ * This program is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-+ * GNU General Public License for more details.
-+ *
-+ * You should have received a copy of the GNU General Public License
-+ * along with this program; if not, write to the Free Software
-+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-+ */
-+#include <linux/bootmem.h>
-+#include <linux/init.h>
-+#include <linux/mm.h>
-+#include <linux/module.h>
-+#include <linux/pfn.h>
-+#include <linux/proc_fs.h>
-+#include <linux/string.h>
-+#include <linux/swap.h>
-+
-+#include <asm/bootinfo.h>
-+#include <asm/page.h>
-+#include <asm/sections.h>
-+
-+#include <asm/mips-boards/prom.h>
-+
-+static int __init memsize(void)
-+{
-+	u32 size = (64 << 20);
-+	u32 *addr = (u32 *)KSEG1ADDR(0x14000000 + size - 4);
-+	u32 *kernel_end = (u32 *)KSEG1ADDR(CPHYSADDR((u32)&_end));
-+	u32 *tmpaddr = addr;
-+
-+	while (tmpaddr > kernel_end) {
-+		*tmpaddr = (u32)tmpaddr;
-+		size >>= 1;
-+		tmpaddr -= size >> 2;
-+	}
-+
-+	do {
-+		tmpaddr += size >> 2;
-+		if (*tmpaddr != (u32)tmpaddr)
-+			break;
-+		size <<= 1;
-+	} while (size < (64 << 20));
-+
-+	writel(tmpaddr, &addr);
-+
-+	return size;
-+}
-+
-+void __init prom_meminit(void)
-+{
-+	unsigned long pages;
-+
-+	pages = memsize() >> PAGE_SHIFT;
-+	add_memory_region(PHYS_OFFSET, pages << PAGE_SHIFT,
-+			  BOOT_MEM_RAM);
-+}
-+
-+void __init prom_free_prom_memory(void)
-+{
-+	return;
-+}
-diff -Nur linux-2.6.30.5.orig/arch/mips/ar7/platform.c linux-2.6.30.5/arch/mips/ar7/platform.c
---- linux-2.6.30.5.orig/arch/mips/ar7/platform.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.30.5/arch/mips/ar7/platform.c	2009-08-26 20:06:50.000000000 +0200
-@@ -0,0 +1,550 @@
-+/*
-+ * Copyright (C) 2006,2007 Felix Fietkau <nbd@openwrt.org>
-+ * Copyright (C) 2006,2007 Eugene Konev <ejka@openwrt.org>
-+ *
-+ * This program is free software; you can redistribute it and/or modify
-+ * it under the terms of the GNU General Public License as published by
-+ * the Free Software Foundation; either version 2 of the License, or
-+ * (at your option) any later version.
-+ *
-+ * This program is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-+ * GNU General Public License for more details.
-+ *
-+ * You should have received a copy of the GNU General Public License
-+ * along with this program; if not, write to the Free Software
-+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-+ */
-+
-+#include <linux/autoconf.h>
-+#include <linux/init.h>
-+#include <linux/types.h>
-+#include <linux/module.h>
-+#include <linux/delay.h>
-+#include <linux/dma-mapping.h>
-+#include <linux/platform_device.h>
-+#include <linux/mtd/physmap.h>
-+#include <linux/serial.h>
-+#include <linux/serial_8250.h>
-+#include <linux/ioport.h>
-+#include <linux/io.h>
-+#include <linux/version.h>
-+#include <linux/vlynq.h>
-+#include <linux/leds.h>
-+#include <linux/string.h>
-+#include <linux/phy.h>
-+#include <linux/phy_fixed.h>
-+
-+#include <asm/addrspace.h>
-+#include <asm/ar7/ar7.h>
-+#include <asm/ar7/gpio.h>
-+#include <asm/ar7/prom.h>
-+
-+struct plat_vlynq_data {
-+	struct plat_vlynq_ops ops;
-+	int gpio_bit;
-+	int reset_bit;
-+};
-+
-+
-+static int vlynq_on(struct vlynq_device *dev)
-+{
-+	int result;
-+	struct plat_vlynq_data *pdata = dev->dev.platform_data;
-+
-+	if ((result = gpio_request(pdata->gpio_bit, "vlynq")))
-+		goto out;
-+
-+	ar7_device_reset(pdata->reset_bit);
-+
-+	if ((result = ar7_gpio_disable(pdata->gpio_bit)))
-+		goto out_enabled;
-+
-+	if ((result = ar7_gpio_enable(pdata->gpio_bit)))
-+		goto out_enabled;
-+
-+	if ((result = gpio_direction_output(pdata->gpio_bit, 0)))
-+		goto out_gpio_enabled;
-+
-+	mdelay(50);
-+
-+	gpio_set_value(pdata->gpio_bit, 1);
-+	mdelay(50);
-+
-+	return 0;
-+
-+out_gpio_enabled:
-+	ar7_gpio_disable(pdata->gpio_bit);
-+out_enabled:
-+	ar7_device_disable(pdata->reset_bit);
-+	gpio_free(pdata->gpio_bit);
-+out:
-+	return result;
-+}
-+
-+static void vlynq_off(struct vlynq_device *dev)
-+{
-+	struct plat_vlynq_data *pdata = dev->dev.platform_data;
-+	ar7_gpio_disable(pdata->gpio_bit);
-+	gpio_free(pdata->gpio_bit);
-+	ar7_device_disable(pdata->reset_bit);
-+}
-+
-+static struct resource physmap_flash_resource = {
-+	.name = "mem",
-+	.flags = IORESOURCE_MEM,
-+	.start = 0x10000000,
-+	.end = 0x107fffff,
-+};
-+
-+static struct resource cpmac_low_res[] = {
-+	{
-+		.name = "regs",
-+		.flags = IORESOURCE_MEM,
-+		.start = AR7_REGS_MAC0,
-+		.end = AR7_REGS_MAC0 + 0x7ff,
-+	},
-+	{
-+		.name = "irq",
-+		.flags = IORESOURCE_IRQ,
-+		.start = 27,
-+		.end = 27,
-+	},
-+};
-+
-+static struct resource cpmac_high_res[] = {
-+	{
-+		.name = "regs",
-+		.flags = IORESOURCE_MEM,
-+		.start = AR7_REGS_MAC1,
-+		.end = AR7_REGS_MAC1 + 0x7ff,
-+	},
-+	{
-+		.name = "irq",
-+		.flags = IORESOURCE_IRQ,
-+		.start = 41,
-+		.end = 41,
-+	},
-+};
-+
-+static struct resource vlynq_low_res[] = {
-+	{
-+		.name = "regs",
-+		.flags = IORESOURCE_MEM,
-+		.start = AR7_REGS_VLYNQ0,
-+		.end = AR7_REGS_VLYNQ0 + 0xff,
-+	},
-+	{
-+		.name = "irq",
-+		.flags = IORESOURCE_IRQ,
-+		.start = 29,
-+		.end = 29,
-+	},
-+	{
-+		.name = "mem",
-+		.flags = IORESOURCE_MEM,
-+		.start = 0x04000000,
-+		.end = 0x04ffffff,
-+	},
-+	{
-+		.name = "devirq",
-+		.flags = IORESOURCE_IRQ,
-+		.start = 80,
-+		.end = 111,
-+	},
-+};
-+
-+static struct resource vlynq_high_res[] = {
-+	{
-+		.name = "regs",
-+		.flags = IORESOURCE_MEM,
-+		.start = AR7_REGS_VLYNQ1,
-+		.end = AR7_REGS_VLYNQ1 + 0xff,
-+	},
-+	{
-+		.name = "irq",
-+		.flags = IORESOURCE_IRQ,
-+		.start = 33,
-+		.end = 33,
-+	},
-+	{
-+		.name = "mem",
-+		.flags = IORESOURCE_MEM,
-+		.start = 0x0c000000,
-+		.end = 0x0cffffff,
-+	},
-+	{
-+		.name = "devirq",
-+		.flags = IORESOURCE_IRQ,
-+		.start = 112,
-+		.end = 143,
-+	},
-+};
-+
-+static struct resource usb_res[] = {
-+	{
-+		.name = "regs",
-+		.flags = IORESOURCE_MEM,
-+		.start = AR7_REGS_USB,
-+		.end = AR7_REGS_USB + 0xff,
-+	},
-+	{
-+		.name = "irq",
-+		.flags = IORESOURCE_IRQ,
-+		.start = 32,
-+		.end = 32,
-+	},
-+	{
-+		.name = "mem",
-+		.flags = IORESOURCE_MEM,
-+		.start = 0x03400000,
-+		.end = 0x034001fff,
-+	},
-+};
-+
-+static struct physmap_flash_data physmap_flash_data = {
-+	.width = 2,
-+};
-+
-+/* lets assume this is suitable for both high and low cpmacs links */
-+static struct fixed_phy_status fixed_phy_status __initdata = {
-+	.link = 1,
-+	.speed = 100,
-+	.duplex = 1,
-+};
-+
-+static struct plat_cpmac_data cpmac_low_data = {
-+	.reset_bit = 17,
-+	.power_bit = 20,
-+	.phy_mask = 0x80000000,
-+};
-+
-+static struct plat_cpmac_data cpmac_high_data = {
-+	.reset_bit = 21,
-+	.power_bit = 22,
-+	.phy_mask = 0x7fffffff,
-+};
-+
-+static struct plat_vlynq_data vlynq_low_data = {
-+	.ops.on = vlynq_on,
-+	.ops.off = vlynq_off,
-+	.reset_bit = 20,
-+	.gpio_bit = 18,
-+};
-+
-+static struct plat_vlynq_data vlynq_high_data = {
-+	.ops.on = vlynq_on,
-+	.ops.off = vlynq_off,
-+	.reset_bit = 16,
-+	.gpio_bit = 19,
-+};
-+
-+static struct platform_device physmap_flash = {
-+	.id = 0,
-+	.name = "physmap-flash",
-+	.dev.platform_data = &physmap_flash_data,
-+	.resource = &physmap_flash_resource,
-+	.num_resources = 1,
-+};
-+
-+static u64 cpmac_dma_mask = DMA_32BIT_MASK;
-+static struct platform_device cpmac_low = {
-+	.id = 0,
-+	.name = "cpmac",
-+	.dev = {
-+		.dma_mask = &cpmac_dma_mask,
-+		.coherent_dma_mask = DMA_32BIT_MASK,
-+		.platform_data = &cpmac_low_data,
-+	},
-+	.resource = cpmac_low_res,
-+	.num_resources = ARRAY_SIZE(cpmac_low_res),
-+};
-+
-+static struct platform_device cpmac_high = {
-+	.id = 1,
-+	.name = "cpmac",
-+	.dev = {
-+		.dma_mask = &cpmac_dma_mask,
-+		.coherent_dma_mask = DMA_32BIT_MASK,
-+		.platform_data = &cpmac_high_data,
-+	},
-+	.resource = cpmac_high_res,
-+	.num_resources = ARRAY_SIZE(cpmac_high_res),
-+};
-+
-+static struct platform_device vlynq_low = {
-+	.id = 0,
-+	.name = "vlynq",
-+	.dev.platform_data = &vlynq_low_data,
-+	.resource = vlynq_low_res,
-+	.num_resources = ARRAY_SIZE(vlynq_low_res),
-+};
-+
-+static struct platform_device vlynq_high = {
-+	.id = 1,
-+	.name = "vlynq",
-+	.dev.platform_data = &vlynq_high_data,
-+	.resource = vlynq_high_res,
-+	.num_resources = ARRAY_SIZE(vlynq_high_res),
-+};
-+
-+
-+/* This is proper way to define uart ports, but they are then detected
-+ * as xscale and, obviously, don't work...
-+ */
-+#if !defined(CONFIG_SERIAL_8250)
-+
-+static struct plat_serial8250_port uart0_data = {
-+	.mapbase = AR7_REGS_UART0,
-+	.irq = AR7_IRQ_UART0,
-+	.regshift = 2,
-+	.iotype = UPIO_MEM,
-+	.flags = UPF_BOOT_AUTOCONF | UPF_IOREMAP,
-+};
-+
-+static struct plat_serial8250_port uart1_data = {
-+	.mapbase = UR8_REGS_UART1,
-+	.irq = AR7_IRQ_UART1,
-+	.regshift = 2,
-+	.iotype = UPIO_MEM,
-+	.flags = UPF_BOOT_AUTOCONF | UPF_IOREMAP,
-+};
-+
-+static struct plat_serial8250_port uart_data[] = {
-+	uart0_data,
-+	uart1_data,
-+	{ .flags = 0 }
-+};
-+
-+static struct plat_serial8250_port uart_data_single[] = {
-+	uart0_data,
-+	{ .flags = 0 }
-+};
-+
-+static struct platform_device uart = {
-+	.id = 0,
-+	.name = "serial8250",
-+	.dev.platform_data = uart_data_single
-+};
-+#endif
-+
-+static struct gpio_led default_leds[] = {
-+	{ .name = "status", .gpio = 8, .active_low = 1, },
-+};
-+
-+static struct gpio_led dsl502t_leds[] = {
-+	{ .name = "status", .gpio = 9, .active_low = 1, },
-+	{ .name = "ethernet", .gpio = 7, .active_low = 1, },
-+	{ .name = "usb", .gpio = 12, .active_low = 1, },
-+};
-+
-+static struct gpio_led dg834g_leds[] = {
-+	{ .name = "ppp", .gpio = 6, .active_low = 1, },
-+	{ .name = "status", .gpio = 7, .active_low = 1, },
-+	{ .name = "adsl", .gpio = 8, .active_low = 1, },
-+	{ .name = "wifi", .gpio = 12, .active_low = 1, },
-+	{ .name = "power", .gpio = 14, .active_low = 1, .default_trigger = "default-on", },
-+};
-+
-+static struct gpio_led fb_sl_leds[] = {
-+	{ .name = "1", .gpio = 7, },
-+	{ .name = "2", .gpio = 13, .active_low = 1, },
-+	{ .name = "3", .gpio = 10, .active_low = 1, },
-+	{ .name = "4", .gpio = 12, .active_low = 1, },
-+	{ .name = "5", .gpio = 9, .active_low = 1, },
-+};
-+
-+static struct gpio_led fb_fon_leds[] = {
-+	{ .name = "1", .gpio = 8, },
-+	{ .name = "2", .gpio = 3, .active_low = 1, },
-+	{ .name = "3", .gpio = 5, },
-+	{ .name = "4", .gpio = 4, .active_low = 1, },
-+	{ .name = "5", .gpio = 11, .active_low = 1, },
-+};
-+
-+static struct gpio_led_platform_data ar7_led_data;
-+
-+static struct platform_device ar7_gpio_leds = {
-+	.name = "leds-gpio",
-+	.id = -1,
-+	.dev = {
-+		.platform_data = &ar7_led_data,
-+	}
-+};
-+
-+static struct platform_device ar7_udc = {
-+	.id = -1,
-+	.name = "ar7_udc",
-+	.resource = usb_res,
-+	.num_resources = ARRAY_SIZE(usb_res),
-+};
-+
-+static inline unsigned char char2hex(char h)
-+{
-+	switch (h) {
-+	case '0': case '1': case '2': case '3': case '4':
-+	case '5': case '6': case '7': case '8': case '9':
-+		return h - '0';
-+	case 'A': case 'B': case 'C': case 'D': case 'E': case 'F':
-+		return h - 'A' + 10;
-+	case 'a': case 'b': case 'c': case 'd': case 'e': case 'f':
-+		return h - 'a' + 10;
-+	default:
-+		return 0;
-+	}
-+}
-+
-+static void cpmac_get_mac(int instance, unsigned char *dev_addr)
-+{
-+	int i;
-+	char name[5], default_mac[] = "00:00:00:12:34:56", *mac;
-+
-+	mac = NULL;
-+	sprintf(name, "mac%c", 'a' + instance);
-+	mac = prom_getenv(name);
-+	if (!mac) {
-+		sprintf(name, "mac%c", 'a');
-+		mac = prom_getenv(name);
-+	}
-+	if (!mac)
-+		mac = default_mac;
-+	for (i = 0; i < 6; i++)
-+		dev_addr[i] = (char2hex(mac[i * 3]) << 4) +
-+			char2hex(mac[i * 3 + 1]);
-+}
-+
-+static void __init detect_leds(void)
-+{
-+	char *prId, *usb_prod;
-+
-+	/* Default LEDs	*/
-+	ar7_led_data.num_leds = ARRAY_SIZE(default_leds);
-+	ar7_led_data.leds = default_leds;
-+
-+	/* FIXME: the whole thing is unreliable */
-+	prId = prom_getenv("ProductID");
-+	usb_prod = prom_getenv("usb_prod");
-+	
-+	/* If we can't get the product id from PROM, use the default LEDs */
-+	if (!prId)
-+		return;
-+
-+	if (strstr(prId, "Fritz_Box_FON")) {
-+		ar7_led_data.num_leds = ARRAY_SIZE(fb_fon_leds);
-+		ar7_led_data.leds = fb_fon_leds;
-+	} else if (strstr(prId, "Fritz_Box_")) {
-+		ar7_led_data.num_leds = ARRAY_SIZE(fb_sl_leds);
-+		ar7_led_data.leds = fb_sl_leds;
-+	} else if ((!strcmp(prId, "AR7RD") || !strcmp(prId, "AR7DB")) && usb_prod != NULL && strstr(usb_prod, "DSL-502T")) {
-+		ar7_led_data.num_leds = ARRAY_SIZE(dsl502t_leds);
-+		ar7_led_data.leds = dsl502t_leds;
-+	} else if (strstr(prId, "DG834")) {
-+		ar7_led_data.num_leds = ARRAY_SIZE(dg834g_leds);
-+		ar7_led_data.leds = dg834g_leds;
-+	}
-+}
-+
-+static int __init ar7_register_devices(void)
-+{
-+	int res;
-+
-+#ifdef CONFIG_SERIAL_8250
-+
-+	static struct uart_port uart_port[2];
-+
-+	memset(uart_port, 0, sizeof(struct uart_port) * 2);
-+
-+	uart_port[0].type = PORT_AR7;
-+	uart_port[0].line = 0;
-+	uart_port[0].irq = AR7_IRQ_UART0;
-+	uart_port[0].uartclk = ar7_bus_freq() / 2;
-+	uart_port[0].iotype = UPIO_MEM;
-+	uart_port[0].mapbase = AR7_REGS_UART0;
-+	uart_port[0].membase = ioremap(uart_port[0].mapbase, 256);
-+	uart_port[0].regshift = 2;
-+	res = early_serial_setup(&uart_port[0]);
-+	if (res)
-+		return res;
-+
-+
-+	/* Only TNETD73xx have a second serial port */
-+	if (ar7_has_second_uart()) {
-+		uart_port[1].type = PORT_AR7;
-+		uart_port[1].line = 1;
-+		uart_port[1].irq = AR7_IRQ_UART1;
-+		uart_port[1].uartclk = ar7_bus_freq() / 2;
-+		uart_port[1].iotype = UPIO_MEM;
-+		uart_port[1].mapbase = UR8_REGS_UART1;
-+		uart_port[1].membase = ioremap(uart_port[1].mapbase, 256);
-+		uart_port[1].regshift = 2;
-+		res = early_serial_setup(&uart_port[1]);
-+		if (res)
-+			return res;
-+	}
-+
-+#else /* !CONFIG_SERIAL_8250 */
-+
-+	uart_data[0].uartclk = ar7_bus_freq() / 2;
-+	uart_data[1].uartclk = uart_data[0].uartclk;
-+
-+	/* Only TNETD73xx have a second serial port */
-+	if (ar7_has_second_uart())
-+		uart.dev.platform_data = uart_data;
-+
-+	res = platform_device_register(&uart);
-+	if (res)
-+		return res;
-+
-+#endif /* CONFIG_SERIAL_8250 */
-+
-+	res = platform_device_register(&physmap_flash);
-+	if (res)
-+		return res;
-+
-+	ar7_device_disable(vlynq_low_data.reset_bit);
-+	res = platform_device_register(&vlynq_low);
-+	if (res)
-+		return res;
-+
-+	if (ar7_has_high_vlynq()) {
-+		ar7_device_disable(vlynq_high_data.reset_bit);
-+		res = platform_device_register(&vlynq_high);
-+		if (res)
-+			return res;
-+	}
-+
-+	if (ar7_has_high_cpmac()) {
-+		res = fixed_phy_add(PHY_POLL, cpmac_high.id, &fixed_phy_status);
-+		if (res && res != -ENODEV)
-+			return res;
-+
-+		cpmac_get_mac(1, cpmac_high_data.dev_addr);
-+		res = platform_device_register(&cpmac_high);
-+		if (res)
-+			return res;
-+	} else {
-+		cpmac_low_data.phy_mask = 0xffffffff;
-+	}
-+
-+	res = fixed_phy_add(PHY_POLL, cpmac_low.id, &fixed_phy_status);
-+	if (res && res != -ENODEV)
-+		return res;
-+
-+	cpmac_get_mac(0, cpmac_low_data.dev_addr);
-+	res = platform_device_register(&cpmac_low);
-+	if (res)
-+		return res;
-+
-+	detect_leds();
-+	res = platform_device_register(&ar7_gpio_leds);
-+	if (res)
-+		return res;
-+
-+	res = platform_device_register(&ar7_udc);
-+
-+	return res;
-+}
-+
-+
-+arch_initcall(ar7_register_devices);
-diff -Nur linux-2.6.30.5.orig/arch/mips/ar7/prom.c linux-2.6.30.5/arch/mips/ar7/prom.c
---- linux-2.6.30.5.orig/arch/mips/ar7/prom.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.30.5/arch/mips/ar7/prom.c	2009-08-26 20:05:03.000000000 +0200
-@@ -0,0 +1,321 @@
-+/*
-+ * Carsten Langgaard, carstenl@mips.com
-+ * Copyright (C) 1999,2000 MIPS Technologies, Inc.  All rights reserved.
-+ *
-+ *  This program is free software; you can distribute it and/or modify it
-+ *  under the terms of the GNU General Public License (Version 2) as
-+ *  published by the Free Software Foundation.
-+ *
-+ *  This program is distributed in the hope it will be useful, but WITHOUT
-+ *  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
-+ *  FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
-+ *  for more details.
-+ *
-+ *  You should have received a copy of the GNU General Public License along
-+ *  with this program; if not, write to the Free Software Foundation, Inc.,
-+ *  59 Temple Place - Suite 330, Boston MA 02111-1307, USA.
-+ *
-+ * Putting things on the screen/serial line using YAMONs facilities.
-+ */
-+#include <linux/init.h>
-+#include <linux/kernel.h>
-+#include <linux/serial_reg.h>
-+#include <linux/spinlock.h>
-+#include <linux/module.h>
-+#include <linux/string.h>
-+#include <linux/io.h>
-+#include <asm/bootinfo.h>
-+
-+#include <asm/ar7/ar7.h>
-+#include <asm/ar7/prom.h>
-+
-+#define MAX_ENTRY 80
-+
-+struct env_var {
-+	char *name;
-+	char *value;
-+};
-+
-+static struct env_var adam2_env[MAX_ENTRY] = { { 0, }, };
-+
-+char *prom_getenv(const char *name)
-+{
-+	int i;
-+	for (i = 0; (i < MAX_ENTRY) && adam2_env[i].name; i++)
-+		if (!strcmp(name, adam2_env[i].name))
-+			return adam2_env[i].value;
-+
-+	return NULL;
-+}
-+EXPORT_SYMBOL(prom_getenv);
-+
-+char * __init prom_getcmdline(void)
-+{
-+	return &(arcs_cmdline[0]);
-+}
-+
-+static void  __init ar7_init_cmdline(int argc, char *argv[])
-+{
-+	char *cp;
-+	int actr;
-+
-+	actr = 1; /* Always ignore argv[0] */
-+
-+	cp = &(arcs_cmdline[0]);
-+	while (actr < argc) {
-+		strcpy(cp, argv[actr]);
-+		cp += strlen(argv[actr]);
-+		*cp++ = ' ';
-+		actr++;
-+	}
-+	if (cp != &(arcs_cmdline[0])) {
-+		/* get rid of trailing space */
-+		--cp;
-+		*cp = '\0';
-+	}
-+}
-+
-+struct psbl_rec {
-+	u32 psbl_size;
-+	u32 env_base;
-+	u32 env_size;
-+	u32 ffs_base;
-+	u32 ffs_size;
-+};
-+
-+static __initdata char psp_env_version[] = "TIENV0.8";
-+
-+struct psp_env_chunk {
-+	u8 num;
-+	u8 ctrl;
-+	u16 csum;
-+	u8 len;
-+	char data[11];
-+} __attribute__ ((packed));
-+
-+struct psp_var_map_entry {
-+	u8 num;
-+	char *value;
-+};
-+
-+static struct psp_var_map_entry psp_var_map[] = {
-+	{ 1, "cpufrequency" },
-+	{ 2, "memsize" },
-+	{ 3, "flashsize" },
-+	{ 4, "modetty0" },
-+	{ 5, "modetty1" },
-+	{ 8, "maca" },
-+	{ 9, "macb" },
-+	{ 28, "sysfrequency" },
-+	{ 38, "mipsfrequency" },
-+};
-+
-+/*
-+
-+Well-known variable (num is looked up in table above for matching variable name)
-+Example: cpufrequency=211968000
-++----+----+----+----+----+----+----+----+----+----+----+----+----+----+----+---
-+| 01 |CTRL|CHECKSUM | 01 | _2 | _1 | _1 | _9 | _6 | _8 | _0 | _0 | _0 | \0 | FF
-++----+----+----+----+----+----+----+----+----+----+----+----+----+----+----+---
-+
-+Name=Value pair in a single chunk
-+Example: NAME=VALUE
-++----+----+----+----+----+----+----+----+----+----+----+----+----+----+----+---
-+| 00 |CTRL|CHECKSUM | 01 | _N | _A | _M | _E | _0 | _V | _A | _L | _U | _E | \0
-++----+----+----+----+----+----+----+----+----+----+----+----+----+----+----+---
-+
-+Name=Value pair in 2 chunks (len is the number of chunks)
-+Example: bootloaderVersion=1.3.7.15
-++----+----+----+----+----+----+----+----+----+----+----+----+----+----+----+---
-+| 00 |CTRL|CHECKSUM | 02 | _b | _o | _o | _t | _l | _o | _a | _d | _e | _r | _V
-++----+----+----+----+----+----+----+----+----+----+----+----+----+----+----+---
-+| _e | _r | _s | _i | _o | _n | \0 | _1 | _. | _3 | _. | _7 | _. | _1 | _5 | \0
-++----+----+----+----+----+----+----+----+----+----+----+----+----+----+----+---
-+
-+Data is padded with 0xFF
-+
-+*/
-+
-+#define PSP_ENV_SIZE  4096
-+
-+static char psp_env_data[PSP_ENV_SIZE] = { 0, };
-+
-+static char * __init lookup_psp_var_map(u8 num)
-+{
-+	int i;
-+
-+	for (i = 0; i < sizeof(psp_var_map); i++)
-+		if (psp_var_map[i].num == num)
-+			return psp_var_map[i].value;
-+
-+	return NULL;
-+}
-+
-+static void __init add_adam2_var(char *name, char *value)
-+{
-+	int i;
-+	for (i = 0; i < MAX_ENTRY; i++) {
-+		if (!adam2_env[i].name) {
-+			adam2_env[i].name = name;
-+			adam2_env[i].value = value;
-+			return;
-+		} else if (!strcmp(adam2_env[i].name, name)) {
-+			adam2_env[i].value = value;
-+			return;
-+		}
-+	}
-+}
-+
-+static int __init parse_psp_env(void *psp_env_base)
-+{
-+	int i, n;
-+	char *name, *value;
-+	struct psp_env_chunk *chunks = (struct psp_env_chunk *)psp_env_data;
-+
-+	memcpy_fromio(chunks, psp_env_base, PSP_ENV_SIZE);
-+
-+	i = 1;
-+	n = PSP_ENV_SIZE / sizeof(struct psp_env_chunk);
-+	while (i < n) {
-+		if ((chunks[i].num == 0xff) || ((i + chunks[i].len) > n))
-+			break;
-+		value = chunks[i].data;
-+		if (chunks[i].num) {
-+			name = lookup_psp_var_map(chunks[i].num);
-+		} else {
-+			name = value;
-+			value += strlen(name) + 1;
-+		}
-+		if (name)
-+			add_adam2_var(name, value);
-+		i += chunks[i].len;
-+	}
-+	return 0;
-+}
-+
-+static void __init ar7_init_env(struct env_var *env)
-+{
-+	int i;
-+	struct psbl_rec *psbl = (struct psbl_rec *)(KSEG1ADDR(0x14000300));
-+	void *psp_env = (void *)KSEG1ADDR(psbl->env_base);
-+
-+	if (strcmp(psp_env, psp_env_version) == 0) {
-+		parse_psp_env(psp_env);
-+	} else {
-+		for (i = 0; i < MAX_ENTRY; i++, env++)
-+			if (env->name)
-+				add_adam2_var(env->name, env->value);
-+	}
-+}
-+
-+static void __init console_config(void)
-+{
-+#ifdef CONFIG_SERIAL_8250_CONSOLE
-+	char console_string[40];
-+	int baud = 0;
-+	char parity = '\0', bits = '\0', flow = '\0';
-+	char *s, *p;
-+
-+	if (strstr(prom_getcmdline(), "console="))
-+		return;
-+
-+#ifdef CONFIG_KGDB
-+	if (!strstr(prom_getcmdline(), "nokgdb")) {
-+		strcat(prom_getcmdline(), " console=kgdb");
-+		kgdb_enabled = 1;
-+		return;
-+	}
-+#endif
-+
-+	if ((s = prom_getenv("modetty0"))) {
-+		baud = simple_strtoul(s, &p, 10);
-+		s = p;
-+		if (*s == ',') s++;
-+		if (*s) parity = *s++;
-+		if (*s == ',') s++;
-+		if (*s) bits = *s++;
-+		if (*s == ',') s++;
-+		if (*s == 'h') flow = 'r';
-+	}
-+
-+	if (baud == 0)
-+		baud = 38400;
-+	if (parity != 'n' && parity != 'o' && parity != 'e')
-+		parity = 'n';
-+	if (bits != '7' && bits != '8')
-+		bits = '8';
-+
-+	if (flow == 'r')
-+		sprintf(console_string, " console=ttyS0,%d%c%c%c", baud,
-+			parity, bits, flow);
-+        else
-+		sprintf(console_string, " console=ttyS0,%d%c%c", baud, parity,
-+			bits);
-+	strcat(prom_getcmdline(), console_string);
-+#endif
-+}
-+
-+void __init prom_init(void)
-+{
-+	ar7_init_cmdline(fw_arg0, (char **)fw_arg1);
-+	ar7_init_env((struct env_var *)fw_arg2);
-+	console_config();
-+}
-+
-+#define PORT(offset) (KSEG1ADDR(AR7_REGS_UART0 + (offset * 4)))
-+static inline unsigned int serial_in(int offset)
-+{
-+	return readb((void *)PORT(offset));
-+}
-+
-+static inline void serial_out(int offset, int value)
-+{
-+	writeb(value, (void *)PORT(offset));
-+}
-+
-+char prom_getchar(void)
-+{
-+	while (!(serial_in(UART_LSR) & UART_LSR_DR));
-+	return serial_in(UART_RX);
-+}
-+
-+int prom_putchar(char c)
-+{
-+	while ((serial_in(UART_LSR) & UART_LSR_TEMT) == 0);
-+	serial_out(UART_TX, c);
-+	return 1;
-+}
-+
-+/* from adm5120/prom.c */
-+void prom_printf(const char *fmt, ...)
-+{
-+	va_list args;
-+	int l;
-+	char *p, *buf_end;
-+	char buf[1024];
-+
-+	va_start(args, fmt);
-+	l = vsprintf(buf, fmt, args); /* hopefully i < sizeof(buf) */
-+	va_end(args);
-+
-+	buf_end = buf + l;
-+
-+	for (p = buf; p < buf_end; p++) {
-+		/* Crude cr/nl handling is better than none */
-+		if (*p == '\n')
-+			prom_putchar('\r');
-+		prom_putchar(*p);
-+	}
-+}
-+
-+#ifdef CONFIG_KGDB
-+int putDebugChar(char c)
-+{
-+	return prom_putchar(c);
-+}
-+
-+char getDebugChar(void)
-+{
-+       return prom_getchar();
-+}
-+#endif
-diff -Nur linux-2.6.30.5.orig/arch/mips/ar7/setup.c linux-2.6.30.5/arch/mips/ar7/setup.c
---- linux-2.6.30.5.orig/arch/mips/ar7/setup.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.30.5/arch/mips/ar7/setup.c	2009-08-26 20:05:03.000000000 +0200
-@@ -0,0 +1,105 @@
-+/*
-+ * Carsten Langgaard, carstenl@mips.com
-+ * Copyright (C) 2000 MIPS Technologies, Inc.  All rights reserved.
-+ *
-+ *  This program is free software; you can distribute it and/or modify it
-+ *  under the terms of the GNU General Public License (Version 2) as
-+ *  published by the Free Software Foundation.
-+ *
-+ *  This program is distributed in the hope it will be useful, but WITHOUT
-+ *  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
-+ *  FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
-+ *  for more details.
-+ *
-+ *  You should have received a copy of the GNU General Public License along
-+ *  with this program; if not, write to the Free Software Foundation, Inc.,
-+ *  59 Temple Place - Suite 330, Boston MA 02111-1307, USA.
-+ */
-+#include <linux/version.h>
-+#include <linux/init.h>
-+#include <linux/ioport.h>
-+#include <linux/pm.h>
-+
-+#include <asm/reboot.h>
-+#include <asm/time.h>
-+#include <asm/ar7/ar7.h>
-+#include <asm/ar7/prom.h>
-+
-+static void ar7_machine_restart(char *command);
-+static void ar7_machine_halt(void);
-+static void ar7_machine_power_off(void);
-+
-+static void ar7_machine_restart(char *command)
-+{
-+	u32 *softres_reg = (u32 *)ioremap(AR7_REGS_RESET +
-+					  AR7_RESET_SOFTWARE, 1);
-+	writel(1, softres_reg);
-+}
-+
-+static void ar7_machine_halt(void)
-+{
-+	while (1);
-+}
-+
-+static void ar7_machine_power_off(void)
-+{
-+	u32 *power_reg = (u32 *)ioremap(AR7_REGS_POWER, 1);
-+	u32 power_state = readl(power_reg) | (3 << 30);
-+	writel(power_state, power_reg);
-+	ar7_machine_halt();
-+}
-+
-+const char *get_system_type(void)
-+{
-+	u16 chip_id = ar7_chip_id();
-+	switch (chip_id) {
-+	case AR7_CHIP_7300:
-+		return "TI AR7 (TNETD7300)";
-+	case AR7_CHIP_7100:
-+		return "TI AR7 (TNETD7100)";
-+	case AR7_CHIP_7200:
-+		return "TI AR7 (TNETD7200)";
-+	default:
-+		return "TI AR7 (Unknown)";
-+	}
-+}
-+
-+static int __init ar7_init_console(void)
-+{
-+	return 0;
-+}
-+
-+/*
-+ * Initializes basic routines and structures pointers, memory size (as
-+ * given by the bios and saves the command line.
-+ */
-+
-+extern void ar7_init_clocks(void);
-+
-+void __init plat_mem_setup(void)
-+{
-+	unsigned long io_base;
-+
-+	_machine_restart = ar7_machine_restart;
-+	_machine_halt = ar7_machine_halt;
-+	pm_power_off = ar7_machine_power_off;
-+	panic_timeout = 3;
-+
-+	io_base = (unsigned long)ioremap(AR7_REGS_BASE, 0x10000);
-+	if (!io_base) panic("Can't remap IO base!\n");
-+	set_io_port_base(io_base);
-+
-+	prom_meminit();
-+	ar7_init_clocks();
-+
-+	ioport_resource.start = 0;
-+	ioport_resource.end   = ~0;
-+	iomem_resource.start  = 0;
-+	iomem_resource.end    = ~0;
-+
-+	printk(KERN_INFO "%s, ID: 0x%04x, Revision: 0x%02x\n",
-+					get_system_type(),
-+		ar7_chip_id(), ar7_chip_rev());
-+}
-+
-+console_initcall(ar7_init_console);
-diff -Nur linux-2.6.30.5.orig/arch/mips/ar7/time.c linux-2.6.30.5/arch/mips/ar7/time.c
---- linux-2.6.30.5.orig/arch/mips/ar7/time.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.30.5/arch/mips/ar7/time.c	2009-08-26 20:05:03.000000000 +0200
-@@ -0,0 +1,28 @@
-+/*
-+ * Carsten Langgaard, carstenl@mips.com
-+ * Copyright (C) 1999,2000 MIPS Technologies, Inc.  All rights reserved.
-+ *
-+ *  This program is free software; you can distribute it and/or modify it
-+ *  under the terms of the GNU General Public License (Version 2) as
-+ *  published by the Free Software Foundation.
-+ *
-+ *  This program is distributed in the hope it will be useful, but WITHOUT
-+ *  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
-+ *  FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
-+ *  for more details.
-+ *
-+ *  You should have received a copy of the GNU General Public License along
-+ *  with this program; if not, write to the Free Software Foundation, Inc.,
-+ *  59 Temple Place - Suite 330, Boston MA 02111-1307, USA.
-+ *
-+ * Setting up the clock on the MIPS boards.
-+ */
-+
-+#include <linux/version.h>
-+#include <asm/time.h>
-+#include <asm/ar7/ar7.h>
-+
-+void __init plat_time_init(void)
-+{
-+	mips_hpt_frequency = ar7_cpu_freq() / 2;
-+}
-diff -Nur linux-2.6.30.5.orig/arch/mips/include/asm/ar7/ar7.h linux-2.6.30.5/arch/mips/include/asm/ar7/ar7.h
---- linux-2.6.30.5.orig/arch/mips/include/asm/ar7/ar7.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.30.5/arch/mips/include/asm/ar7/ar7.h	2009-08-26 20:05:03.000000000 +0200
-@@ -0,0 +1,170 @@
-+/*
-+ * Copyright (C) 2006,2007 Felix Fietkau <nbd@openwrt.org>
-+ * Copyright (C) 2006,2007 Eugene Konev <ejka@openwrt.org>
-+ *
-+ * This program is free software; you can redistribute it and/or modify
-+ * it under the terms of the GNU General Public License as published by
-+ * the Free Software Foundation; either version 2 of the License, or
-+ * (at your option) any later version.
-+ *
-+ * This program is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-+ * GNU General Public License for more details.
-+ *
-+ * You should have received a copy of the GNU General Public License
-+ * along with this program; if not, write to the Free Software
-+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-+ */
-+
-+#ifndef __AR7_H__
-+#define __AR7_H__
-+
-+#include <linux/delay.h>
-+#include <asm/addrspace.h>
-+#include <linux/io.h>
-+
-+#define AR7_REGS_BASE	0x08610000
-+
-+#define AR7_REGS_MAC0	(AR7_REGS_BASE + 0x0000)
-+#define AR7_REGS_GPIO	(AR7_REGS_BASE + 0x0900)
-+/* 0x08610A00 - 0x08610BFF (512 bytes, 128 bytes / clock) */
-+#define AR7_REGS_POWER	(AR7_REGS_BASE + 0x0a00)
-+#define AR7_REGS_UART0	(AR7_REGS_BASE + 0x0e00)
-+#define AR7_REGS_USB	(AR7_REGS_BASE + 0x1200)
-+#define AR7_REGS_RESET	(AR7_REGS_BASE + 0x1600)
-+#define AR7_REGS_VLYNQ0	(AR7_REGS_BASE + 0x1800)
-+#define AR7_REGS_DCL	(AR7_REGS_BASE + 0x1a00)
-+#define AR7_REGS_VLYNQ1	(AR7_REGS_BASE + 0x1c00)
-+#define AR7_REGS_MDIO	(AR7_REGS_BASE + 0x1e00)
-+#define AR7_REGS_IRQ	(AR7_REGS_BASE + 0x2400)
-+#define AR7_REGS_MAC1	(AR7_REGS_BASE + 0x2800)
-+
-+#define AR7_REGS_WDT	(AR7_REGS_BASE + 0x1f00)
-+#define UR8_REGS_WDT	(AR7_REGS_BASE + 0x0b00)
-+#define UR8_REGS_UART1	(AR7_REGS_BASE + 0x0f00)
-+
-+#define AR7_RESET_PEREPHERIAL	0x0
-+#define AR7_RESET_SOFTWARE	0x4
-+#define AR7_RESET_STATUS	0x8
-+
-+#define AR7_RESET_BIT_CPMAC_LO	17
-+#define AR7_RESET_BIT_CPMAC_HI	21
-+#define AR7_RESET_BIT_MDIO	22
-+#define AR7_RESET_BIT_EPHY	26
-+
-+/* GPIO control registers */
-+#define AR7_GPIO_INPUT	0x0
-+#define AR7_GPIO_OUTPUT	0x4
-+#define AR7_GPIO_DIR	0x8
-+#define AR7_GPIO_ENABLE	0xc
-+
-+#define AR7_CHIP_7100	0x18
-+#define AR7_CHIP_7200	0x2b
-+#define AR7_CHIP_7300	0x05
-+
-+/* Interrupts */
-+#define AR7_IRQ_UART0	15
-+#define AR7_IRQ_UART1	16
-+
-+/* Clocks */
-+#define AR7_AFE_CLOCK	35328000
-+#define AR7_REF_CLOCK	25000000
-+#define AR7_XTAL_CLOCK	24000000
-+
-+struct plat_cpmac_data {
-+	int reset_bit;
-+	int power_bit;
-+	u32 phy_mask;
-+	char dev_addr[6];
-+};
-+
-+struct plat_dsl_data {
-+	int reset_bit_dsl;
-+	int reset_bit_sar;
-+};
-+
-+extern int ar7_cpu_clock, ar7_bus_clock, ar7_dsp_clock;
-+
-+static inline u16 ar7_chip_id(void)
-+{
-+	return readl((void *)KSEG1ADDR(AR7_REGS_GPIO + 0x14)) & 0xffff;
-+}
-+
-+static inline u8 ar7_chip_rev(void)
-+{
-+	return (readl((void *)KSEG1ADDR(AR7_REGS_GPIO + 0x14)) >> 16) & 0xff;
-+}
-+
-+static inline int ar7_cpu_freq(void)
-+{
-+	return ar7_cpu_clock;
-+}
-+
-+static inline int ar7_bus_freq(void)
-+{
-+	return ar7_bus_clock;
-+}
-+
-+static inline int ar7_vbus_freq(void)
-+{
-+	return ar7_bus_clock / 2;
-+}
-+#define ar7_cpmac_freq ar7_vbus_freq
-+
-+static inline int ar7_dsp_freq(void)
-+{
-+	return ar7_dsp_clock;
-+}
-+
-+static inline int ar7_has_high_cpmac(void)
-+{
-+	u16 chip_id = ar7_chip_id();
-+	switch (chip_id) {
-+	case AR7_CHIP_7100:
-+	case AR7_CHIP_7200:
-+		return 0;
-+	default:
-+		return 1;
-+	}
-+}
-+#define ar7_has_high_vlynq ar7_has_high_cpmac
-+#define ar7_has_second_uart ar7_has_high_cpmac
-+
-+static inline void ar7_device_enable(u32 bit)
-+{
-+	void *reset_reg =
-+		(void *)KSEG1ADDR(AR7_REGS_RESET + AR7_RESET_PEREPHERIAL);
-+	writel(readl(reset_reg) | (1 << bit), reset_reg);
-+	mdelay(20);
-+}
-+
-+static inline void ar7_device_disable(u32 bit)
-+{
-+	void *reset_reg =
-+		(void *)KSEG1ADDR(AR7_REGS_RESET + AR7_RESET_PEREPHERIAL);
-+	writel(readl(reset_reg) & ~(1 << bit), reset_reg);
-+	mdelay(20);
-+}
-+
-+static inline void ar7_device_reset(u32 bit)
-+{
-+	ar7_device_disable(bit);
-+	ar7_device_enable(bit);
-+}
-+
-+static inline void ar7_device_on(u32 bit)
-+{
-+	void *power_reg = (void *)KSEG1ADDR(AR7_REGS_POWER);
-+	writel(readl(power_reg) | (1 << bit), power_reg);
-+	mdelay(20);
-+}
-+
-+static inline void ar7_device_off(u32 bit)
-+{
-+	void *power_reg = (void *)KSEG1ADDR(AR7_REGS_POWER);
-+	writel(readl(power_reg) & ~(1 << bit), power_reg);
-+	mdelay(20);
-+}
-+
-+#endif /* __AR7_H__ */
-diff -Nur linux-2.6.30.5.orig/arch/mips/include/asm/ar7/gpio.h linux-2.6.30.5/arch/mips/include/asm/ar7/gpio.h
---- linux-2.6.30.5.orig/arch/mips/include/asm/ar7/gpio.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.30.5/arch/mips/include/asm/ar7/gpio.h	2009-08-26 20:05:03.000000000 +0200
-@@ -0,0 +1,109 @@
-+/*
-+ * Copyright (C) 2007 Florian Fainelli <florian@openwrt.org>
-+ *
-+ * This program is free software; you can redistribute it and/or modify
-+ * it under the terms of the GNU General Public License as published by
-+ * the Free Software Foundation; either version 2 of the License, or
-+ * (at your option) any later version.
-+ *
-+ * This program is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-+ * GNU General Public License for more details.
-+ *
-+ * You should have received a copy of the GNU General Public License
-+ * along with this program; if not, write to the Free Software
-+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-+ */
-+
-+#ifndef __AR7_GPIO_H__
-+#define __AR7_GPIO_H__
-+#include <asm/ar7/ar7.h>
-+
-+#define AR7_GPIO_MAX 32
-+
-+extern int gpio_request(unsigned gpio, const char *label);
-+extern void gpio_free(unsigned gpio);
-+
-+/* Common GPIO layer */
-+static inline int gpio_get_value(unsigned gpio)
-+{
-+	void __iomem *gpio_in =
-+		(void __iomem *)KSEG1ADDR(AR7_REGS_GPIO + AR7_GPIO_INPUT);
-+
-+	return readl(gpio_in) & (1 << gpio);
-+}
-+
-+static inline void gpio_set_value(unsigned gpio, int value)
-+{
-+	void __iomem *gpio_out =
-+		(void __iomem *)KSEG1ADDR(AR7_REGS_GPIO + AR7_GPIO_OUTPUT);
-+	unsigned tmp;
-+
-+	tmp = readl(gpio_out) & ~(1 << gpio);
-+	if (value)
-+		tmp |= 1 << gpio;
-+	writel(tmp, gpio_out);
-+}
-+
-+static inline int gpio_direction_input(unsigned gpio)
-+{
-+	void __iomem *gpio_dir =
-+		(void __iomem *)KSEG1ADDR(AR7_REGS_GPIO + AR7_GPIO_DIR);
-+
-+	if (gpio >= AR7_GPIO_MAX)
-+		return -EINVAL;
-+
-+	writel(readl(gpio_dir) | (1 << gpio), gpio_dir);
-+
-+	return 0;
-+}
-+
-+static inline int gpio_direction_output(unsigned gpio, int value)
-+{
-+	void __iomem *gpio_dir =
-+		(void __iomem *)KSEG1ADDR(AR7_REGS_GPIO + AR7_GPIO_DIR);
-+
-+	if (gpio >= AR7_GPIO_MAX)
-+		return -EINVAL;
-+
-+	gpio_set_value(gpio, value);
-+	writel(readl(gpio_dir) & ~(1 << gpio), gpio_dir);
-+
-+	return 0;
-+}
-+
-+static inline int gpio_to_irq(unsigned gpio)
-+{
-+	return -EINVAL;
-+}
-+
-+static inline int irq_to_gpio(unsigned irq)
-+{
-+	return -EINVAL;
-+}
-+
-+/* Board specific GPIO functions */
-+static inline int ar7_gpio_enable(unsigned gpio)
-+{
-+	void __iomem *gpio_en =
-+		(void __iomem *)KSEG1ADDR(AR7_REGS_GPIO + AR7_GPIO_ENABLE);
-+
-+	writel(readl(gpio_en) | (1 << gpio), gpio_en);
-+
-+	return 0;
-+}
-+
-+static inline int ar7_gpio_disable(unsigned gpio)
-+{
-+	void __iomem *gpio_en =
-+		(void __iomem *)KSEG1ADDR(AR7_REGS_GPIO + AR7_GPIO_ENABLE);
-+
-+	writel(readl(gpio_en) & ~(1 << gpio), gpio_en);
-+
-+	return 0;
-+}
-+
-+#include <asm-generic/gpio.h>
-+
-+#endif
-diff -Nur linux-2.6.30.5.orig/arch/mips/include/asm/ar7/irq.h linux-2.6.30.5/arch/mips/include/asm/ar7/irq.h
---- linux-2.6.30.5.orig/arch/mips/include/asm/ar7/irq.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.30.5/arch/mips/include/asm/ar7/irq.h	2009-08-26 20:05:03.000000000 +0200
-@@ -0,0 +1,16 @@
-+/*
-+ * This file is subject to the terms and conditions of the GNU General Public
-+ * License.  See the file "COPYING" in the main directory of this archive
-+ * for more details.
-+ *
-+ * Shamelessly copied from asm-mips/mach-emma2rh/
-+ * Copyright (C) 2003 by Ralf Baechle
-+ */
-+#ifndef __ASM_AR7_IRQ_H
-+#define __ASM_AR7_IRQ_H
-+
-+#define NR_IRQS	256
-+
-+#include_next <irq.h>
-+
-+#endif /* __ASM_AR7_IRQ_H */
-diff -Nur linux-2.6.30.5.orig/arch/mips/include/asm/ar7/prom.h linux-2.6.30.5/arch/mips/include/asm/ar7/prom.h
---- linux-2.6.30.5.orig/arch/mips/include/asm/ar7/prom.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.30.5/arch/mips/include/asm/ar7/prom.h	2009-08-26 20:05:03.000000000 +0200
-@@ -0,0 +1,26 @@
-+/*
-+ * Copyright (C) 2006, 2007 Florian Fainelli <florian@openwrt.org>
-+ *
-+ * This program is free software; you can redistribute it and/or modify
-+ * it under the terms of the GNU General Public License as published by
-+ * the Free Software Foundation; either version 2 of the License, or
-+ * (at your option) any later version.
-+ *
-+ * This program is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-+ * GNU General Public License for more details.
-+ *
-+ * You should have received a copy of the GNU General Public License
-+ * along with this program; if not, write to the Free Software
-+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-+ */
-+
-+#ifndef __PROM_H__
-+#define __PROM_H__
-+
-+extern char *prom_getenv(const char *name);
-+extern void prom_printf(const char *fmt, ...) __attribute__((format(printf, 1, 2)));
-+extern void prom_meminit(void);
-+
-+#endif /* __PROM_H__ */
-diff -Nur linux-2.6.30.5.orig/arch/mips/include/asm/ar7/spaces.h linux-2.6.30.5/arch/mips/include/asm/ar7/spaces.h
---- linux-2.6.30.5.orig/arch/mips/include/asm/ar7/spaces.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.30.5/arch/mips/include/asm/ar7/spaces.h	2009-08-26 20:05:03.000000000 +0200
-@@ -0,0 +1,32 @@
-+/*
-+ * This file is subject to the terms and conditions of the GNU General Public
-+ * License.  See the file "COPYING" in the main directory of this archive
-+ * for more details.
-+ *
-+ * Copyright (C) 1994 - 1999, 2000, 03, 04 Ralf Baechle
-+ * Copyright (C) 2000, 2002  Maciej W. Rozycki
-+ * Copyright (C) 1990, 1999, 2000 Silicon Graphics, Inc.
-+ */
-+#ifndef _ASM_AR7_SPACES_H
-+#define _ASM_AR7_SPACES_H
-+
-+#define CAC_BASE		0x80000000
-+#define IO_BASE			0xa0000000
-+#define UNCAC_BASE		0xa0000000
-+#define MAP_BASE		0xc0000000
-+
-+/*
-+ * This handles the memory map.
-+ * We handle pages at KSEG0 for kernels with 32 bit address space.
-+ */
-+#define PAGE_OFFSET		0x94000000UL
-+#define PHYS_OFFSET		0x14000000UL
-+
-+/*
-+ * Memory above this physical address will be considered highmem.
-+ */
-+#ifndef HIGHMEM_START
-+#define HIGHMEM_START		0x40000000UL
-+#endif
-+
-+#endif /* __ASM_AR7_SPACES_H */
-diff -Nur linux-2.6.30.5.orig/arch/mips/include/asm/ar7/war.h linux-2.6.30.5/arch/mips/include/asm/ar7/war.h
---- linux-2.6.30.5.orig/arch/mips/include/asm/ar7/war.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.30.5/arch/mips/include/asm/ar7/war.h	2009-08-26 20:05:03.000000000 +0200
-@@ -0,0 +1,25 @@
-+/*
-+ * This file is subject to the terms and conditions of the GNU General Public
-+ * License.  See the file "COPYING" in the main directory of this archive
-+ * for more details.
-+ *
-+ * Copyright (C) 2002, 2004, 2007 by Ralf Baechle <ralf@linux-mips.org>
-+ */
-+#ifndef __ASM_MIPS_MACH_BCM947XX_WAR_H
-+#define __ASM_MIPS_MACH_BCM947XX_WAR_H
-+
-+#define R4600_V1_INDEX_ICACHEOP_WAR	0
-+#define R4600_V1_HIT_CACHEOP_WAR	0
-+#define R4600_V2_HIT_CACHEOP_WAR	0
-+#define R5432_CP0_INTERRUPT_WAR		0
-+#define BCM1250_M3_WAR			0
-+#define SIBYTE_1956_WAR			0
-+#define MIPS4K_ICACHE_REFILL_WAR	0
-+#define MIPS_CACHE_SYNC_WAR		0
-+#define TX49XX_ICACHE_INDEX_INV_WAR	0
-+#define RM9000_CDEX_SMP_WAR		0
-+#define ICACHE_REFILLS_WORKAROUND_WAR	0
-+#define R10000_LLSC_WAR			0
-+#define MIPS34K_MISSED_ITLB_WAR		0
-+
-+#endif /* __ASM_MIPS_MACH_BCM947XX_WAR_H */
-diff -Nur linux-2.6.30.5.orig/arch/mips/include/asm/page.h linux-2.6.30.5/arch/mips/include/asm/page.h
---- linux-2.6.30.5.orig/arch/mips/include/asm/page.h	2009-08-16 23:19:38.000000000 +0200
-+++ linux-2.6.30.5/arch/mips/include/asm/page.h	2009-08-26 20:05:14.000000000 +0200
-@@ -185,8 +185,10 @@
- #define VM_DATA_DEFAULT_FLAGS	(VM_READ | VM_WRITE | VM_EXEC | \
- 				 VM_MAYREAD | VM_MAYWRITE | VM_MAYEXEC)
- 
--#define UNCAC_ADDR(addr)	((addr) - PAGE_OFFSET + UNCAC_BASE)
--#define CAC_ADDR(addr)		((addr) - UNCAC_BASE + PAGE_OFFSET)
-+#define UNCAC_ADDR(addr)	((addr) - PAGE_OFFSET + UNCAC_BASE +	\
-+				 PHYS_OFFSET)
-+#define CAC_ADDR(addr)		((addr) - UNCAC_BASE + PAGE_OFFSET -	\
-+				 PHYS_OFFSET)
- 
- #include <asm-generic/memory_model.h>
- #include <asm-generic/page.h>
-diff -Nur linux-2.6.30.5.orig/arch/mips/Kconfig linux-2.6.30.5/arch/mips/Kconfig
---- linux-2.6.30.5.orig/arch/mips/Kconfig	2009-08-16 23:19:38.000000000 +0200
-+++ linux-2.6.30.5/arch/mips/Kconfig	2009-08-27 21:44:10.000000000 +0200
-@@ -19,6 +19,23 @@
- 	prompt "System type"
- 	default SGI_IP22
- 
-+config AR7
-+	bool "Texas Instruments AR7"
-+	select BOOT_ELF32
-+	select DMA_NONCOHERENT
-+	select CEVT_R4K
-+	select CSRC_R4K
-+	select IRQ_CPU
-+	select SWAP_IO_SPACE
-+	select SYS_HAS_CPU_MIPS32_R1
-+	select SYS_HAS_EARLY_PRINTK
-+	select SYS_SUPPORTS_32BIT_KERNEL
-+	select SYS_SUPPORTS_KGDB
-+	select SYS_SUPPORTS_LITTLE_ENDIAN
-+	select SYS_SUPPORTS_BIG_ENDIAN
-+	select GENERIC_GPIO
-+	select GENERIC_HARDIRQS_NO__DO_IRQ
-+
- config MACH_ALCHEMY
- 	bool "Alchemy processor based machines"
- 
-diff -Nur linux-2.6.30.5.orig/arch/mips/kernel/traps.c linux-2.6.30.5/arch/mips/kernel/traps.c
---- linux-2.6.30.5.orig/arch/mips/kernel/traps.c	2009-08-16 23:19:38.000000000 +0200
-+++ linux-2.6.30.5/arch/mips/kernel/traps.c	2009-08-26 20:05:14.000000000 +0200
-@@ -1256,9 +1256,22 @@
- 
- 	exception_handlers[n] = handler;
- 	if (n == 0 && cpu_has_divec) {
--		*(u32 *)(ebase + 0x200) = 0x08000000 |
--					  (0x03ffffff & (handler >> 2));
--		local_flush_icache_range(ebase + 0x200, ebase + 0x204);
-+		if ((handler ^ (ebase + 4)) & 0xfc000000) {
-+			/* lui k0, 0x0000 */
-+			*(u32 *)(ebase + 0x200) = 0x3c1a0000 | (handler >> 16);
-+			/* ori k0, 0x0000 */
-+			*(u32 *)(ebase + 0x204) =
-+					0x375a0000 | (handler & 0xffff);
-+			/* jr k0 */
-+			*(u32 *)(ebase + 0x208) = 0x03400008;
-+			/* nop */
-+			*(u32 *)(ebase + 0x20C) = 0x00000000;
-+			flush_icache_range(ebase + 0x200, ebase + 0x210);
-+		} else {
-+			*(u32 *)(ebase + 0x200) =
-+				0x08000000 | (0x03ffffff & (handler >> 2));
-+			flush_icache_range(ebase + 0x200, ebase + 0x204);
-+		}
- 	}
- 	return (void *)old_handler;
- }
-diff -Nur linux-2.6.30.5.orig/arch/mips/Makefile linux-2.6.30.5/arch/mips/Makefile
---- linux-2.6.30.5.orig/arch/mips/Makefile	2009-08-16 23:19:38.000000000 +0200
-+++ linux-2.6.30.5/arch/mips/Makefile	2009-08-26 20:05:14.000000000 +0200
-@@ -174,6 +174,13 @@
- #
- 
- #
-+# Texas Instruments AR7
-+#
-+core-$(CONFIG_AR7)		+= arch/mips/ar7/
-+cflags-$(CONFIG_AR7)		+= -Iinclude/asm-mips/ar7
-+load-$(CONFIG_AR7)		+= 0xffffffff94100000
-+
-+#
- # Acer PICA 61, Mips Magnum 4000 and Olivetti M700.
- #
- core-$(CONFIG_MACH_JAZZ)	+= arch/mips/jazz/
-diff -Nur linux-2.6.30.5.orig/drivers/char/ar7_gpio.c linux-2.6.30.5/drivers/char/ar7_gpio.c
---- linux-2.6.30.5.orig/drivers/char/ar7_gpio.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.30.5/drivers/char/ar7_gpio.c	2009-08-26 20:05:03.000000000 +0200
-@@ -0,0 +1,158 @@
-+/*
-+ * Copyright (C) 2007 Nicolas Thill <nico@openwrt.org>
-+ *
-+ * This program is free software; you can redistribute it and/or modify
-+ * it under the terms of the GNU General Public License as published by
-+ * the Free Software Foundation; either version 2 of the License, or
-+ * (at your option) any later version.
-+ *
-+ * This program is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-+ * GNU General Public License for more details.
-+ *
-+ * You should have received a copy of the GNU General Public License
-+ * along with this program; if not, write to the Free Software
-+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-+ */
-+
-+#include <linux/device.h>
-+#include <linux/fs.h>
-+#include <linux/module.h>
-+#include <linux/errno.h>
-+#include <linux/kernel.h>
-+#include <linux/init.h>
-+#include <linux/platform_device.h>
-+#include <linux/uaccess.h>
-+#include <linux/io.h>
-+#include <linux/types.h>
-+#include <linux/cdev.h>
-+#include <gpio.h>
-+
-+#define DRVNAME "ar7_gpio"
-+#define LONGNAME "TI AR7 GPIOs Driver"
-+
-+MODULE_AUTHOR("Nicolas Thill <nico@openwrt.org>");
-+MODULE_DESCRIPTION(LONGNAME);
-+MODULE_LICENSE("GPL");
-+
-+static int ar7_gpio_major;
-+
-+static ssize_t ar7_gpio_write(struct file *file, const char __user *buf,
-+	size_t len, loff_t *ppos)
-+{
-+	int pin = iminor(file->f_dentry->d_inode);
-+	size_t i;
-+
-+	for (i = 0; i < len; ++i) {
-+		char c;
-+		if (get_user(c, buf + i))
-+			return -EFAULT;
-+		switch (c) {
-+		case '0':
-+			gpio_set_value(pin, 0);
-+			break;
-+		case '1':
-+			gpio_set_value(pin, 1);
-+			break;
-+		case 'd':
-+		case 'D':
-+			ar7_gpio_disable(pin);
-+			break;
-+		case 'e':
-+		case 'E':
-+			ar7_gpio_enable(pin);
-+			break;
-+		case 'i':
-+		case 'I':
-+		case '<':
-+			gpio_direction_input(pin);
-+			break;
-+		case 'o':
-+		case 'O':
-+		case '>':
-+			gpio_direction_output(pin, 0);
-+			break;
-+		default:
-+			return -EINVAL;
-+		}
-+	}
-+
-+	return len;
-+}
-+
-+static ssize_t ar7_gpio_read(struct file *file, char __user *buf,
-+	size_t len, loff_t *ppos)
-+{
-+	int pin = iminor(file->f_dentry->d_inode);
-+	int value;
-+
-+	value = gpio_get_value(pin);
-+	if (put_user(value ? '1' : '0', buf))
-+		return -EFAULT;
-+
-+	return 1;
-+}
-+
-+static int ar7_gpio_open(struct inode *inode, struct file *file)
-+{
-+	int m = iminor(inode);
-+
-+	if (m >= AR7_GPIO_MAX)
-+		return -EINVAL;
-+
-+	return nonseekable_open(inode, file);
-+}
-+
-+static int ar7_gpio_release(struct inode *inode, struct file *file)
-+{
-+	return 0;
-+}
-+
-+static const struct file_operations ar7_gpio_fops = {
-+	.owner   = THIS_MODULE,
-+	.write   = ar7_gpio_write,
-+	.read    = ar7_gpio_read,
-+	.open    = ar7_gpio_open,
-+	.release = ar7_gpio_release,
-+	.llseek  = no_llseek,
-+};
-+
-+static struct platform_device *ar7_gpio_device;
-+
-+static int __init ar7_gpio_init(void)
-+{
-+	int rc;
-+
-+	ar7_gpio_device = platform_device_alloc(DRVNAME, -1);
-+	if (!ar7_gpio_device)
-+		return -ENOMEM;
-+
-+	rc = platform_device_add(ar7_gpio_device);
-+	if (rc < 0)
-+		goto out_put;
-+
-+	rc = register_chrdev(ar7_gpio_major, DRVNAME, &ar7_gpio_fops);
-+	if (rc < 0)
-+		goto out_put;
-+
-+	ar7_gpio_major = rc;
-+
-+	rc = 0;
-+
-+	goto out;
-+
-+out_put:
-+	platform_device_put(ar7_gpio_device);
-+out:
-+	return rc;
-+}
-+
-+static void __exit ar7_gpio_exit(void)
-+{
-+	unregister_chrdev(ar7_gpio_major, DRVNAME);
-+	platform_device_unregister(ar7_gpio_device);
-+}
-+
-+module_init(ar7_gpio_init);
-+module_exit(ar7_gpio_exit);
-diff -Nur linux-2.6.30.5.orig/drivers/char/Kconfig linux-2.6.30.5/drivers/char/Kconfig
---- linux-2.6.30.5.orig/drivers/char/Kconfig	2009-08-16 23:19:38.000000000 +0200
-+++ linux-2.6.30.5/drivers/char/Kconfig	2009-08-26 20:05:23.000000000 +0200
-@@ -974,6 +974,15 @@
- 	  To compile this driver as a module, choose M here: the
- 	  module will be called mwave.
- 
-+config AR7_GPIO
-+	tristate "TI AR7 GPIO Support"
-+	depends on AR7
-+	help
-+	  Give userspace access to the GPIO pins on the Texas Instruments AR7 
-+	  processors.
-+
-+	  If compiled as a module, it will be called ar7_gpio.
-+
- config SCx200_GPIO
- 	tristate "NatSemi SCx200 GPIO Support"
- 	depends on SCx200
-diff -Nur linux-2.6.30.5.orig/drivers/char/Makefile linux-2.6.30.5/drivers/char/Makefile
---- linux-2.6.30.5.orig/drivers/char/Makefile	2009-08-16 23:19:38.000000000 +0200
-+++ linux-2.6.30.5/drivers/char/Makefile	2009-08-26 20:05:23.000000000 +0200
-@@ -90,6 +90,7 @@
- obj-$(CONFIG_PPDEV)		+= ppdev.o
- obj-$(CONFIG_NWBUTTON)		+= nwbutton.o
- obj-$(CONFIG_NWFLASH)		+= nwflash.o
-+obj-$(CONFIG_AR7_GPIO)		+= ar7_gpio.o
- obj-$(CONFIG_SCx200_GPIO)	+= scx200_gpio.o
- obj-$(CONFIG_PC8736x_GPIO)	+= pc8736x_gpio.o
- obj-$(CONFIG_NSC_GPIO)		+= nsc_gpio.o
-diff -Nur linux-2.6.30.5.orig/drivers/char/watchdog/ar7_wdt.c linux-2.6.30.5/drivers/char/watchdog/ar7_wdt.c
---- linux-2.6.30.5.orig/drivers/char/watchdog/ar7_wdt.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.30.5/drivers/char/watchdog/ar7_wdt.c	2009-08-26 20:05:03.000000000 +0200
-@@ -0,0 +1,349 @@
-+/*
-+ * drivers/watchdog/ar7_wdt.c
-+ *
-+ * Copyright (C) 2007 Nicolas Thill <nico@openwrt.org>
-+ * Copyright (c) 2005 Enrik Berkhan <Enrik.Berkhan@akk.org>
-+ *
-+ * Some code taken from:
-+ * National Semiconductor SCx200 Watchdog support
-+ * Copyright (c) 2001,2002 Christer Weinigel <wingel@nano-system.com>
-+ *
-+ * This program is free software; you can redistribute it and/or modify
-+ * it under the terms of the GNU General Public License as published by
-+ * the Free Software Foundation; either version 2 of the License, or
-+ * (at your option) any later version.
-+ *
-+ * This program is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-+ * GNU General Public License for more details.
-+ *
-+ * You should have received a copy of the GNU General Public License
-+ * along with this program; if not, write to the Free Software
-+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-+ */
-+
-+#include <linux/module.h>
-+#include <linux/moduleparam.h>
-+#include <linux/errno.h>
-+#include <linux/init.h>
-+#include <linux/miscdevice.h>
-+#include <linux/watchdog.h>
-+#include <linux/notifier.h>
-+#include <linux/reboot.h>
-+#include <linux/fs.h>
-+#include <linux/ioport.h>
-+#include <linux/io.h>
-+#include <linux/uaccess.h>
-+
-+#include <asm/addrspace.h>
-+#include <asm/ar7/ar7.h>
-+
-+#define DRVNAME "ar7_wdt"
-+#define LONGNAME "TI AR7 Watchdog Timer"
-+
-+MODULE_AUTHOR("Nicolas Thill <nico@openwrt.org>");
-+MODULE_DESCRIPTION(LONGNAME);
-+MODULE_LICENSE("GPL");
-+MODULE_ALIAS_MISCDEV(WATCHDOG_MINOR);
-+
-+static int margin = 60;
-+module_param(margin, int, 0);
-+MODULE_PARM_DESC(margin, "Watchdog margin in seconds");
-+
-+static int nowayout = WATCHDOG_NOWAYOUT;
-+module_param(nowayout, int, 0);
-+MODULE_PARM_DESC(nowayout, "Disable watchdog shutdown on close");
-+
-+#define READ_REG(x) readl((void __iomem *)&(x))
-+#define WRITE_REG(x, v) writel((v), (void __iomem *)&(x))
-+
-+struct ar7_wdt {
-+	u32 kick_lock;
-+	u32 kick;
-+	u32 change_lock;
-+	u32 change;
-+	u32 disable_lock;
-+	u32 disable;
-+	u32 prescale_lock;
-+	u32 prescale;
-+};
-+
-+static struct semaphore open_semaphore;
-+static unsigned expect_close;
-+
-+/* XXX currently fixed, allows max margin ~68.72 secs */
-+#define prescale_value 0xffff
-+
-+/* Offset of the WDT registers */
-+static unsigned long ar7_regs_wdt;
-+/* Pointer to the remapped WDT IO space */
-+static struct ar7_wdt *ar7_wdt;
-+static void ar7_wdt_get_regs(void)
-+{
-+	u16 chip_id = ar7_chip_id();
-+	switch (chip_id) {
-+	case AR7_CHIP_7100:
-+	case AR7_CHIP_7200:
-+		ar7_regs_wdt = AR7_REGS_WDT;
-+		break;
-+	default:
-+		ar7_regs_wdt = UR8_REGS_WDT;
-+		break;
-+	}
-+}
-+
-+
-+static void ar7_wdt_kick(u32 value)
-+{
-+	WRITE_REG(ar7_wdt->kick_lock, 0x5555);
-+	if ((READ_REG(ar7_wdt->kick_lock) & 3) == 1) {
-+		WRITE_REG(ar7_wdt->kick_lock, 0xaaaa);
-+		if ((READ_REG(ar7_wdt->kick_lock) & 3) == 3) {
-+			WRITE_REG(ar7_wdt->kick, value);
-+			return;
-+		}
-+	}
-+	printk(KERN_ERR DRVNAME ": failed to unlock WDT kick reg\n");
-+}
-+
-+static void ar7_wdt_prescale(u32 value)
-+{
-+	WRITE_REG(ar7_wdt->prescale_lock, 0x5a5a);
-+	if ((READ_REG(ar7_wdt->prescale_lock) & 3) == 1) {
-+		WRITE_REG(ar7_wdt->prescale_lock, 0xa5a5);
-+		if ((READ_REG(ar7_wdt->prescale_lock) & 3) == 3) {
-+			WRITE_REG(ar7_wdt->prescale, value);
-+			return;
-+		}
-+	}
-+	printk(KERN_ERR DRVNAME ": failed to unlock WDT prescale reg\n");
-+}
-+
-+static void ar7_wdt_change(u32 value)
-+{
-+	WRITE_REG(ar7_wdt->change_lock, 0x6666);
-+	if ((READ_REG(ar7_wdt->change_lock) & 3) == 1) {
-+		WRITE_REG(ar7_wdt->change_lock, 0xbbbb);
-+		if ((READ_REG(ar7_wdt->change_lock) & 3) == 3) {
-+			WRITE_REG(ar7_wdt->change, value);
-+			return;
-+		}
-+	}
-+	printk(KERN_ERR DRVNAME ": failed to unlock WDT change reg\n");
-+}
-+
-+static void ar7_wdt_disable(u32 value)
-+{
-+	WRITE_REG(ar7_wdt->disable_lock, 0x7777);
-+	if ((READ_REG(ar7_wdt->disable_lock) & 3) == 1) {
-+		WRITE_REG(ar7_wdt->disable_lock, 0xcccc);
-+		if ((READ_REG(ar7_wdt->disable_lock) & 3) == 2) {
-+			WRITE_REG(ar7_wdt->disable_lock, 0xdddd);
-+			if ((READ_REG(ar7_wdt->disable_lock) & 3) == 3) {
-+				WRITE_REG(ar7_wdt->disable, value);
-+				return;
-+			}
-+		}
-+	}
-+	printk(KERN_ERR DRVNAME ": failed to unlock WDT disable reg\n");
-+}
-+
-+static void ar7_wdt_update_margin(int new_margin)
-+{
-+	u32 change;
-+
-+	change = new_margin * (ar7_vbus_freq() / prescale_value);
-+	if (change < 1) change = 1;
-+	if (change > 0xffff) change = 0xffff;
-+	ar7_wdt_change(change);
-+	margin = change * prescale_value / ar7_vbus_freq();
-+	printk(KERN_INFO DRVNAME
-+	       ": timer margin %d seconds (prescale %d, change %d, freq %d)\n",
-+	       margin, prescale_value, change, ar7_vbus_freq());
-+}
-+
-+static void ar7_wdt_enable_wdt(void)
-+{
-+	printk(KERN_DEBUG DRVNAME ": enabling watchdog timer\n");
-+	ar7_wdt_disable(1);
-+	ar7_wdt_kick(1);
-+}
-+
-+static void ar7_wdt_disable_wdt(void)
-+{
-+	printk(KERN_DEBUG DRVNAME ": disabling watchdog timer\n");
-+	ar7_wdt_disable(0);
-+}
-+
-+static int ar7_wdt_open(struct inode *inode, struct file *file)
-+{
-+	/* only allow one at a time */
-+	if (down_trylock(&open_semaphore))
-+		return -EBUSY;
-+	ar7_wdt_enable_wdt();
-+	expect_close = 0;
-+
-+	return nonseekable_open(inode, file);
-+}
-+
-+static int ar7_wdt_release(struct inode *inode, struct file *file)
-+{
-+	if (!expect_close)
-+		printk(KERN_WARNING DRVNAME
-+		": watchdog device closed unexpectedly,"
-+		"will not disable the watchdog timer\n");
-+	else if (!nowayout)
-+		ar7_wdt_disable_wdt();
-+
-+	up(&open_semaphore);
-+
-+	return 0;
-+}
-+
-+static int ar7_wdt_notify_sys(struct notifier_block *this,
-+			      unsigned long code, void *unused)
-+{
-+	if (code == SYS_HALT || code == SYS_POWER_OFF)
-+		if (!nowayout)
-+			ar7_wdt_disable_wdt();
-+
-+	return NOTIFY_DONE;
-+}
-+
-+static struct notifier_block ar7_wdt_notifier = {
-+	.notifier_call = ar7_wdt_notify_sys
-+};
-+
-+static ssize_t ar7_wdt_write(struct file *file, const char *data,
-+			     size_t len, loff_t *ppos)
-+{
-+	/* check for a magic close character */
-+	if (len) {
-+		size_t i;
-+
-+		ar7_wdt_kick(1);
-+
-+		expect_close = 0;
-+		for (i = 0; i < len; ++i) {
-+			char c;
-+			if (get_user(c, data+i))
-+				return -EFAULT;
-+			if (c == 'V')
-+				expect_close = 1;
-+		}
-+
-+	}
-+	return len;
-+}
-+
-+static int ar7_wdt_ioctl(struct inode *inode, struct file *file,
-+			 unsigned int cmd, unsigned long arg)
-+{
-+	static struct watchdog_info ident = {
-+		.identity = LONGNAME,
-+		.firmware_version = 1,
-+		.options = (WDIOF_SETTIMEOUT | WDIOF_MAGICCLOSE | WDIOF_KEEPALIVEPING),
-+	};
-+	int new_margin;
-+
-+	switch (cmd) {
-+	default:
-+		return -ENOTTY;
-+	case WDIOC_GETSUPPORT:
-+		if (copy_to_user((struct watchdog_info *)arg, &ident,
-+				sizeof(ident)))
-+			return -EFAULT;
-+		return 0;
-+	case WDIOC_GETSTATUS:
-+	case WDIOC_GETBOOTSTATUS:
-+		if (put_user(0, (int *)arg))
-+			return -EFAULT;
-+		return 0;
-+	case WDIOC_KEEPALIVE:
-+		ar7_wdt_kick(1);
-+		return 0;
-+	case WDIOC_SETTIMEOUT:
-+		if (get_user(new_margin, (int *)arg))
-+			return -EFAULT;
-+		if (new_margin < 1)
-+			return -EINVAL;
-+
-+		ar7_wdt_update_margin(new_margin);
-+		ar7_wdt_kick(1);
-+
-+	case WDIOC_GETTIMEOUT:
-+		if (put_user(margin, (int *)arg))
-+			return -EFAULT;
-+		return 0;
-+	}
-+}
-+
-+static struct file_operations ar7_wdt_fops = {
-+	.owner		= THIS_MODULE,
-+	.write		= ar7_wdt_write,
-+	.ioctl		= ar7_wdt_ioctl,
-+	.open		= ar7_wdt_open,
-+	.release	= ar7_wdt_release,
-+};
-+
-+static struct miscdevice ar7_wdt_miscdev = {
-+	.minor		= WATCHDOG_MINOR,
-+	.name		= "watchdog",
-+	.fops		= &ar7_wdt_fops,
-+};
-+
-+static int __init ar7_wdt_init(void)
-+{
-+	int rc;
-+
-+	ar7_wdt_get_regs();
-+
-+	if (!request_mem_region(ar7_regs_wdt, sizeof(struct ar7_wdt),
-+							LONGNAME)) {
-+		printk(KERN_WARNING DRVNAME ": watchdog I/O region busy\n");
-+		return -EBUSY;
-+	}
-+
-+	ar7_wdt = (struct ar7_wdt *)
-+			ioremap(ar7_regs_wdt, sizeof(struct ar7_wdt));
-+
-+	ar7_wdt_disable_wdt();
-+	ar7_wdt_prescale(prescale_value);
-+	ar7_wdt_update_margin(margin);
-+
-+	sema_init(&open_semaphore, 1);
-+
-+	rc = register_reboot_notifier(&ar7_wdt_notifier);
-+	if (rc) {
-+		printk(KERN_ERR DRVNAME
-+			": unable to register reboot notifier\n");
-+		goto out_alloc;
-+	}
-+
-+	rc = misc_register(&ar7_wdt_miscdev);
-+	if (rc) {
-+		printk(KERN_ERR DRVNAME ": unable to register misc device\n");
-+		goto out_register;
-+	}
-+	goto out;
-+
-+out_register:
-+	unregister_reboot_notifier(&ar7_wdt_notifier);
-+out_alloc:
-+	iounmap(ar7_wdt);
-+	release_mem_region(ar7_regs_wdt, sizeof(struct ar7_wdt));
-+out:
-+	return rc;
-+}
-+
-+static void __exit ar7_wdt_cleanup(void)
-+{
-+	misc_deregister(&ar7_wdt_miscdev);
-+	unregister_reboot_notifier(&ar7_wdt_notifier);
-+	iounmap(ar7_wdt);
-+	release_mem_region(ar7_regs_wdt, sizeof(struct ar7_wdt));
-+}
-+
-+module_init(ar7_wdt_init);
-+module_exit(ar7_wdt_cleanup);
-diff -Nur linux-2.6.30.5.orig/drivers/Kconfig linux-2.6.30.5/drivers/Kconfig
---- linux-2.6.30.5.orig/drivers/Kconfig	2009-08-16 23:19:38.000000000 +0200
-+++ linux-2.6.30.5/drivers/Kconfig	2009-08-26 20:05:30.000000000 +0200
-@@ -104,6 +104,8 @@
- 
- source "drivers/uio/Kconfig"
- 
-+source "drivers/vlynq/Kconfig"
-+
- source "drivers/xen/Kconfig"
- 
- source "drivers/staging/Kconfig"
-diff -Nur linux-2.6.30.5.orig/drivers/Makefile linux-2.6.30.5/drivers/Makefile
---- linux-2.6.30.5.orig/drivers/Makefile	2009-08-16 23:19:38.000000000 +0200
-+++ linux-2.6.30.5/drivers/Makefile	2009-08-26 20:05:30.000000000 +0200
-@@ -103,6 +103,7 @@
- obj-$(CONFIG_HID)		+= hid/
- obj-$(CONFIG_PPC_PS3)		+= ps3/
- obj-$(CONFIG_OF)		+= of/
-+obj-$(CONFIG_VLYNQ)		+= vlynq/
- obj-$(CONFIG_SSB)		+= ssb/
- obj-$(CONFIG_VIRTIO)		+= virtio/
- obj-$(CONFIG_STAGING)		+= staging/
-diff -Nur linux-2.6.30.5.orig/drivers/mtd/maps/physmap.c linux-2.6.30.5/drivers/mtd/maps/physmap.c
---- linux-2.6.30.5.orig/drivers/mtd/maps/physmap.c	2009-08-16 23:19:38.000000000 +0200
-+++ linux-2.6.30.5/drivers/mtd/maps/physmap.c	2009-08-26 20:05:19.000000000 +0200
-@@ -80,7 +80,7 @@
- 					"map_rom",
- 					NULL };
- #ifdef CONFIG_MTD_PARTITIONS
--static const char *part_probe_types[] = { "cmdlinepart", "RedBoot", NULL };
-+static const char *part_probe_types[] = { "cmdlinepart", "RedBoot", "ar7part", NULL };
- #endif
- 
- static int physmap_flash_probe(struct platform_device *dev)
-diff -Nur linux-2.6.30.5.orig/drivers/net/cpmac.c linux-2.6.30.5/drivers/net/cpmac.c
---- linux-2.6.30.5.orig/drivers/net/cpmac.c	2009-08-16 23:19:38.000000000 +0200
-+++ linux-2.6.30.5/drivers/net/cpmac.c	2009-08-26 22:00:29.000000000 +0200
-@@ -615,13 +615,13 @@
- 
- 		dev_kfree_skb_irq(desc->skb);
- 		desc->skb = NULL;
--		if (netif_subqueue_stopped(dev, queue))
-+		if (__netif_subqueue_stopped(dev, queue))
- 			netif_wake_subqueue(dev, queue);
- 	} else {
- 		if (netif_msg_tx_err(priv) && net_ratelimit())
- 			printk(KERN_WARNING
- 			       "%s: end_xmit: spurious interrupt\n", dev->name);
--		if (netif_subqueue_stopped(dev, queue))
-+		if (__netif_subqueue_stopped(dev, queue))
- 			netif_wake_subqueue(dev, queue);
- 	}
- }
-@@ -731,7 +731,6 @@
- 
- static void cpmac_hw_error(struct work_struct *work)
- {
--	int i;
- 	struct cpmac_priv *priv =
- 		container_of(work, struct cpmac_priv, reset_work);
- 
-@@ -818,7 +817,6 @@
- 
- static void cpmac_tx_timeout(struct net_device *dev)
- {
--	int i;
- 	struct cpmac_priv *priv = netdev_priv(dev);
- 
- 	spin_lock(&priv->lock);
-@@ -1097,15 +1095,18 @@
- 
- static int __devinit cpmac_probe(struct platform_device *pdev)
- {
--	int rc, phy_id, i;
--	char *mdio_bus_id = "0";
-+	int rc, phy_id;
-+	char mdio_bus_id[BUS_ID_SIZE];
- 	struct resource *mem;
- 	struct cpmac_priv *priv;
- 	struct net_device *dev;
- 	struct plat_cpmac_data *pdata;
- 
- 	pdata = pdev->dev.platform_data;
-+	strncpy(mdio_bus_id, "0", BUS_ID_SIZE);
-+	phy_id = pdev->id;
- 
-+	/*
- 	for (phy_id = 0; phy_id < PHY_MAX_ADDR; phy_id++) {
- 		if (!(pdata->phy_mask & (1 << phy_id)))
- 			continue;
-@@ -1116,15 +1117,17 @@
- 
- 	if (phy_id == PHY_MAX_ADDR) {
- 		if (external_switch || dumb_switch) {
--			mdio_bus_id = 0; /* fixed phys bus */
-+			strncpy(mdio_bus_id, "0", BUS_ID_SIZE);
- 			phy_id = pdev->id;
- 		} else {
- 			dev_err(&pdev->dev, "no PHY present\n");
- 			return -ENODEV;
- 		}
- 	}
-+	*/
- 
- 	dev = alloc_etherdev_mq(sizeof(*priv), CPMAC_QUEUES);
-+	//~ dev = alloc_etherdev(sizeof(*priv));
- 
- 	if (!dev) {
- 		printk(KERN_ERR "cpmac: Unable to allocate net_device\n");
-@@ -1161,8 +1164,11 @@
- 	priv->msg_enable = netif_msg_init(debug_level, 0xff);
- 	memcpy(dev->dev_addr, pdata->dev_addr, sizeof(dev->dev_addr));
- 
--	priv->phy = phy_connect(dev, dev_name(&cpmac_mii->phy_map[phy_id]->dev),
-+ 	snprintf(priv->phy_name, BUS_ID_SIZE, PHY_ID_FMT, mdio_bus_id, phy_id);
-+	//priv->phy = phy_connect(dev, dev_name(&cpmac_mii->phy_map[phy_id]->dev),
-+ 	priv->phy = phy_connect(dev, priv->phy_name,
- 				&cpmac_adjust_link, 0, PHY_INTERFACE_MODE_MII);
-+
- 	if (IS_ERR(priv->phy)) {
- 		if (netif_msg_drv(priv))
- 			printk(KERN_ERR "%s: Could not attach to PHY\n",
-@@ -1249,7 +1255,7 @@
- 	}
- 
- 	cpmac_mii->phy_mask = ~(mask | 0x80000000);
--	snprintf(cpmac_mii->id, MII_BUS_ID_SIZE, "0");
-+	snprintf(cpmac_mii->id, MII_BUS_ID_SIZE, "1");
- 
- 	res = mdiobus_register(cpmac_mii);
- 	if (res)
-diff -Nur linux-2.6.30.5.orig/drivers/net/Kconfig linux-2.6.30.5/drivers/net/Kconfig
---- linux-2.6.30.5.orig/drivers/net/Kconfig	2009-08-16 23:19:38.000000000 +0200
-+++ linux-2.6.30.5/drivers/net/Kconfig	2009-08-26 20:06:44.000000000 +0200
-@@ -1760,7 +1760,7 @@
- 
- config CPMAC
- 	tristate "TI AR7 CPMAC Ethernet support (EXPERIMENTAL)"
--	depends on NET_ETHERNET && EXPERIMENTAL && AR7 && BROKEN
-+	depends on NET_ETHERNET && EXPERIMENTAL && AR7
- 	select PHYLIB
- 	help
- 	  TI AR7 CPMAC Ethernet support
-diff -Nur linux-2.6.30.5.orig/drivers/serial/8250.c linux-2.6.30.5/drivers/serial/8250.c
---- linux-2.6.30.5.orig/drivers/serial/8250.c	2009-08-16 23:19:38.000000000 +0200
-+++ linux-2.6.30.5/drivers/serial/8250.c	2009-08-26 20:06:59.000000000 +0200
-@@ -287,6 +287,13 @@
- 		.fcr		= UART_FCR_ENABLE_FIFO | UART_FCR_R_TRIG_10,
- 		.flags		= UART_CAP_FIFO,
- 	},
-+	[PORT_AR7] = {
-+		.name		= "TI-AR7",
-+		.fifo_size	= 16,
-+		.tx_loadsz	= 16,
-+		.fcr		= UART_FCR_ENABLE_FIFO | UART_FCR_R_TRIG_00,
-+		.flags		= UART_CAP_FIFO | UART_CAP_AFE,
-+	},
- };
- 
- #if defined (CONFIG_SERIAL_8250_AU1X00)
-@@ -2702,7 +2709,11 @@
- {
- 	struct uart_8250_port *up = (struct uart_8250_port *)port;
- 
-+#ifdef CONFIG_AR7
-+	wait_for_xmitr(up, BOTH_EMPTY);
-+#else
- 	wait_for_xmitr(up, UART_LSR_THRE);
-+#endif
- 	serial_out(up, UART_TX, ch);
- }
- 
-diff -Nur linux-2.6.30.5.orig/drivers/vlynq/Kconfig linux-2.6.30.5/drivers/vlynq/Kconfig
---- linux-2.6.30.5.orig/drivers/vlynq/Kconfig	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.30.5/drivers/vlynq/Kconfig	2009-08-26 20:05:03.000000000 +0200
-@@ -0,0 +1,13 @@
-+menu "TI VLYNQ"
-+
-+config VLYNQ
-+	bool "TI VLYNQ bus support"
-+	depends on AR7 && EXPERIMENTAL
-+	help
-+	  Support for the TI VLYNQ bus
-+
-+	  The module will be called vlynq
-+
-+	  If unsure, say N
-+
-+endmenu
-diff -Nur linux-2.6.30.5.orig/drivers/vlynq/Makefile linux-2.6.30.5/drivers/vlynq/Makefile
---- linux-2.6.30.5.orig/drivers/vlynq/Makefile	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.30.5/drivers/vlynq/Makefile	2009-08-26 20:05:03.000000000 +0200
-@@ -0,0 +1,5 @@
-+#
-+# Makefile for kernel vlynq drivers
-+#
-+
-+obj-$(CONFIG_VLYNQ) += vlynq.o
-diff -Nur linux-2.6.30.5.orig/drivers/vlynq/vlynq.c linux-2.6.30.5/drivers/vlynq/vlynq.c
---- linux-2.6.30.5.orig/drivers/vlynq/vlynq.c	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.30.5/drivers/vlynq/vlynq.c	2009-08-26 20:06:33.000000000 +0200
-@@ -0,0 +1,813 @@
-+/*
-+ * Copyright (C) 2006, 2007 Eugene Konev <ejka@openwrt.org>
-+ *
-+ * This program is free software; you can redistribute it and/or modify
-+ * it under the terms of the GNU General Public License as published by
-+ * the Free Software Foundation; either version 2 of the License, or
-+ * (at your option) any later version.
-+ *
-+ * This program is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-+ * GNU General Public License for more details.
-+ *
-+ * You should have received a copy of the GNU General Public License
-+ * along with this program; if not, write to the Free Software
-+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-+ *
-+ * Parts of the VLYNQ specification can be found here:
-+ * http://www.ti.com/litv/pdf/sprue36a
-+ */
-+
-+#include <linux/init.h>
-+#include <linux/types.h>
-+#include <linux/kernel.h>
-+#include <linux/string.h>
-+#include <linux/device.h>
-+#include <linux/module.h>
-+#include <linux/errno.h>
-+#include <linux/platform_device.h>
-+#include <linux/interrupt.h>
-+#include <linux/delay.h>
-+#include <linux/io.h>
-+
-+#include <linux/vlynq.h>
-+
-+#define VLYNQ_CTRL_PM_ENABLE		0x80000000
-+#define VLYNQ_CTRL_CLOCK_INT		0x00008000
-+#define VLYNQ_CTRL_CLOCK_DIV(x)		(((x) & 7) << 16)
-+#define VLYNQ_CTRL_INT_LOCAL		0x00004000
-+#define VLYNQ_CTRL_INT_ENABLE		0x00002000
-+#define VLYNQ_CTRL_INT_VECTOR(x)	(((x) & 0x1f) << 8)
-+#define VLYNQ_CTRL_INT2CFG		0x00000080
-+#define VLYNQ_CTRL_RESET		0x00000001
-+
-+#define VLYNQ_CTRL_CLOCK_MASK          (0x7 << 16)
-+
-+#define VLYNQ_INT_OFFSET		0x00000014
-+#define VLYNQ_REMOTE_OFFSET		0x00000080
-+
-+#define VLYNQ_STATUS_LINK		0x00000001
-+#define VLYNQ_STATUS_LERROR		0x00000080
-+#define VLYNQ_STATUS_RERROR		0x00000100
-+
-+#define VINT_ENABLE			0x00000100
-+#define VINT_TYPE_EDGE			0x00000080
-+#define VINT_LEVEL_LOW			0x00000040
-+#define VINT_VECTOR(x)			((x) & 0x1f)
-+#define VINT_OFFSET(irq)		(8 * ((irq) % 4))
-+
-+#define VLYNQ_AUTONEGO_V2		0x00010000
-+
-+struct vlynq_regs {
-+	u32 revision;
-+	u32 control;
-+	u32 status;
-+	u32 int_prio;
-+	u32 int_status;
-+	u32 int_pending;
-+	u32 int_ptr;
-+	u32 tx_offset;
-+	struct vlynq_mapping rx_mapping[4];
-+	u32 chip;
-+	u32 autonego;
-+	u32 unused[6];
-+	u32 int_device[8];
-+};
-+
-+#ifdef CONFIG_VLYNQ_DEBUG
-+static void vlynq_dump_regs(struct vlynq_device *dev)
-+{
-+	int i;
-+
-+	printk(KERN_DEBUG "VLYNQ local=%p remote=%p\n",
-+			dev->local, dev->remote);
-+	for (i = 0; i < 32; i++) {
-+		printk(KERN_DEBUG "VLYNQ: local %d: %08x\n",
-+			i + 1, ((u32 *)dev->local)[i]);
-+		printk(KERN_DEBUG "VLYNQ: remote %d: %08x\n",
-+			i + 1, ((u32 *)dev->remote)[i]);
-+	}
-+}
-+
-+static void vlynq_dump_mem(u32 *base, int count)
-+{
-+	int i;
-+
-+	for (i = 0; i < (count + 3) / 4; i++) {
-+		if (i % 4 == 0)
-+			printk(KERN_DEBUG "\nMEM[0x%04x]:", i * 4);
-+		printk(KERN_DEBUG " 0x%08x", *(base + i));
-+	}
-+	printk(KERN_DEBUG "\n");
-+}
-+#endif
-+
-+/* Check the VLYNQ link status with a given device */
-+static int vlynq_linked(struct vlynq_device *dev)
-+{
-+	int i;
-+
-+	for (i = 0; i < 100; i++)
-+		if (readl(&dev->local->status) & VLYNQ_STATUS_LINK)
-+			return 1;
-+		else
-+			cpu_relax();
-+
-+	return 0;
-+}
-+
-+static void vlynq_reset(struct vlynq_device *dev)
-+{
-+	writel(readl(&dev->local->control) | VLYNQ_CTRL_RESET,
-+			&dev->local->control);
-+
-+	/* Wait for the devices to finish resetting */
-+	msleep(5);
-+
-+	/* Remove reset bit */
-+	writel(readl(&dev->local->control) & ~VLYNQ_CTRL_RESET,
-+			&dev->local->control);
-+
-+	/* Give some time for the devices to settle */
-+	msleep(5);
-+}
-+
-+static void vlynq_irq_unmask(unsigned int irq)
-+{
-+	u32 val;
-+	struct vlynq_device *dev = get_irq_chip_data(irq);
-+	int virq;
-+
-+	BUG_ON(!dev);
-+	virq = irq - dev->irq_start;
-+	val = readl(&dev->remote->int_device[virq >> 2]);
-+	val |= (VINT_ENABLE | virq) << VINT_OFFSET(virq);
-+	writel(val, &dev->remote->int_device[virq >> 2]);
-+}
-+
-+static void vlynq_irq_mask(unsigned int irq)
-+{
-+	u32 val;
-+	struct vlynq_device *dev = get_irq_chip_data(irq);
-+	int virq;
-+
-+	BUG_ON(!dev);
-+	virq = irq - dev->irq_start;
-+	val = readl(&dev->remote->int_device[virq >> 2]);
-+	val &= ~(VINT_ENABLE << VINT_OFFSET(virq));
-+	writel(val, &dev->remote->int_device[virq >> 2]);
-+}
-+
-+static int vlynq_irq_type(unsigned int irq, unsigned int flow_type)
-+{
-+	u32 val;
-+	struct vlynq_device *dev = get_irq_chip_data(irq);
-+	int virq;
-+
-+	BUG_ON(!dev);
-+	virq = irq - dev->irq_start;
-+	val = readl(&dev->remote->int_device[virq >> 2]);
-+	switch (flow_type & IRQ_TYPE_SENSE_MASK) {
-+	case IRQ_TYPE_EDGE_RISING:
-+	case IRQ_TYPE_EDGE_FALLING:
-+	case IRQ_TYPE_EDGE_BOTH:
-+		val |= VINT_TYPE_EDGE << VINT_OFFSET(virq);
-+		val &= ~(VINT_LEVEL_LOW << VINT_OFFSET(virq));
-+		break;
-+	case IRQ_TYPE_LEVEL_HIGH:
-+		val &= ~(VINT_TYPE_EDGE << VINT_OFFSET(virq));
-+		val &= ~(VINT_LEVEL_LOW << VINT_OFFSET(virq));
-+		break;
-+	case IRQ_TYPE_LEVEL_LOW:
-+		val &= ~(VINT_TYPE_EDGE << VINT_OFFSET(virq));
-+		val |= VINT_LEVEL_LOW << VINT_OFFSET(virq);
-+		break;
-+	default:
-+		return -EINVAL;
-+	}
-+	writel(val, &dev->remote->int_device[virq >> 2]);
-+	return 0;
-+}
-+
-+static void vlynq_local_ack(unsigned int irq)
-+{
-+	struct vlynq_device *dev = get_irq_chip_data(irq);
-+
-+	u32 status = readl(&dev->local->status);
-+
-+	pr_debug("%s: local status: 0x%08x\n",
-+		       dev_name(&dev->dev), status);
-+	writel(status, &dev->local->status);
-+}
-+
-+static void vlynq_remote_ack(unsigned int irq)
-+{
-+	struct vlynq_device *dev = get_irq_chip_data(irq);
-+
-+	u32 status = readl(&dev->remote->status);
-+
-+	pr_debug("%s: remote status: 0x%08x\n",
-+		       dev_name(&dev->dev), status);
-+	writel(status, &dev->remote->status);
-+}
-+
-+static irqreturn_t vlynq_irq(int irq, void *dev_id)
-+{
-+	struct vlynq_device *dev = dev_id;
-+	u32 status;
-+	int virq = 0;
-+
-+	status = readl(&dev->local->int_status);
-+	writel(status, &dev->local->int_status);
-+
-+	if (unlikely(!status))
-+		spurious_interrupt();
-+
-+	while (status) {
-+		if (status & 1)
-+			do_IRQ(dev->irq_start + virq);
-+		status >>= 1;
-+		virq++;
-+	}
-+
-+	return IRQ_HANDLED;
-+}
-+
-+static struct irq_chip vlynq_irq_chip = {
-+	.name = "vlynq",
-+	.unmask = vlynq_irq_unmask,
-+	.mask = vlynq_irq_mask,
-+	.set_type = vlynq_irq_type,
-+};
-+
-+static struct irq_chip vlynq_local_chip = {
-+	.name = "vlynq local error",
-+	.unmask = vlynq_irq_unmask,
-+	.mask = vlynq_irq_mask,
-+	.ack = vlynq_local_ack,
-+};
-+
-+static struct irq_chip vlynq_remote_chip = {
-+	.name = "vlynq local error",
-+	.unmask = vlynq_irq_unmask,
-+	.mask = vlynq_irq_mask,
-+	.ack = vlynq_remote_ack,
-+};
-+
-+static int vlynq_setup_irq(struct vlynq_device *dev)
-+{
-+	u32 val;
-+	int i, virq;
-+
-+	if (dev->local_irq == dev->remote_irq) {
-+		printk(KERN_ERR
-+		       "%s: local vlynq irq should be different from remote\n",
-+		       dev_name(&dev->dev));
-+		return -EINVAL;
-+	}
-+
-+	/* Clear local and remote error bits */
-+	writel(readl(&dev->local->status), &dev->local->status);
-+	writel(readl(&dev->remote->status), &dev->remote->status);
-+
-+	/* Now setup interrupts */
-+	val = VLYNQ_CTRL_INT_VECTOR(dev->local_irq);
-+	val |= VLYNQ_CTRL_INT_ENABLE | VLYNQ_CTRL_INT_LOCAL |
-+		VLYNQ_CTRL_INT2CFG;
-+	val |= readl(&dev->local->control);
-+	writel(VLYNQ_INT_OFFSET, &dev->local->int_ptr);
-+	writel(val, &dev->local->control);
-+
-+	val = VLYNQ_CTRL_INT_VECTOR(dev->remote_irq);
-+	val |= VLYNQ_CTRL_INT_ENABLE;
-+	val |= readl(&dev->remote->control);
-+	writel(VLYNQ_INT_OFFSET, &dev->remote->int_ptr);
-+	writel(val, &dev->remote->int_ptr);
-+	writel(val, &dev->remote->control);
-+
-+	for (i = dev->irq_start; i <= dev->irq_end; i++) {
-+		virq = i - dev->irq_start;
-+		if (virq == dev->local_irq) {
-+			set_irq_chip_and_handler(i, &vlynq_local_chip,
-+						 handle_level_irq);
-+			set_irq_chip_data(i, dev);
-+		} else if (virq == dev->remote_irq) {
-+			set_irq_chip_and_handler(i, &vlynq_remote_chip,
-+						 handle_level_irq);
-+			set_irq_chip_data(i, dev);
-+		} else {
-+			set_irq_chip_and_handler(i, &vlynq_irq_chip,
-+						 handle_simple_irq);
-+			set_irq_chip_data(i, dev);
-+			writel(0, &dev->remote->int_device[virq >> 2]);
-+		}
-+	}
-+
-+	if (request_irq(dev->irq, vlynq_irq, IRQF_SHARED, "vlynq", dev)) {
-+		printk(KERN_ERR "%s: request_irq failed\n",
-+					dev_name(&dev->dev));
-+		return -EAGAIN;
-+	}
-+
-+	return 0;
-+}
-+
-+static void vlynq_device_release(struct device *dev)
-+{
-+	struct vlynq_device *vdev = to_vlynq_device(dev);
-+	kfree(vdev);
-+}
-+
-+static int vlynq_device_match(struct device *dev,
-+			      struct device_driver *drv)
-+{
-+	struct vlynq_device *vdev = to_vlynq_device(dev);
-+	struct vlynq_driver *vdrv = to_vlynq_driver(drv);
-+	struct vlynq_device_id *ids = vdrv->id_table;
-+
-+	while (ids->id) {
-+		if (ids->id == vdev->dev_id) {
-+			vdev->divisor = ids->divisor;
-+			vlynq_set_drvdata(vdev, ids);
-+			printk(KERN_INFO "Driver found for VLYNQ "
-+				"device: %08x\n", vdev->dev_id);
-+			return 1;
-+		}
-+		printk(KERN_DEBUG "Not using the %08x VLYNQ device's driver"
-+			" for VLYNQ device: %08x\n", ids->id, vdev->dev_id);
-+		ids++;
-+	}
-+	return 0;
-+}
-+
-+static int vlynq_device_probe(struct device *dev)
-+{
-+	struct vlynq_device *vdev = to_vlynq_device(dev);
-+	struct vlynq_driver *drv = to_vlynq_driver(dev->driver);
-+	struct vlynq_device_id *id = vlynq_get_drvdata(vdev);
-+	int result = -ENODEV;
-+
-+	if (drv->probe)
-+		result = drv->probe(vdev, id);
-+	if (result)
-+		put_device(dev);
-+	return result;
-+}
-+
-+static int vlynq_device_remove(struct device *dev)
-+{
-+	struct vlynq_driver *drv = to_vlynq_driver(dev->driver);
-+
-+	if (drv->remove)
-+		drv->remove(to_vlynq_device(dev));
-+
-+	return 0;
-+}
-+
-+int __vlynq_register_driver(struct vlynq_driver *driver, struct module *owner)
-+{
-+	driver->driver.name = driver->name;
-+	driver->driver.bus = &vlynq_bus_type;
-+	return driver_register(&driver->driver);
-+}
-+EXPORT_SYMBOL(__vlynq_register_driver);
-+
-+void vlynq_unregister_driver(struct vlynq_driver *driver)
-+{
-+	driver_unregister(&driver->driver);
-+}
-+EXPORT_SYMBOL(vlynq_unregister_driver);
-+
-+/*
-+ * A VLYNQ remote device can clock the VLYNQ bus master
-+ * using a dedicated clock line. In that case, both the
-+ * remove device and the bus master should have the same
-+ * serial clock dividers configured. Iterate through the
-+ * 8 possible dividers until we actually link with the
-+ * device.
-+ */
-+static int __vlynq_try_remote(struct vlynq_device *dev)
-+{
-+	int i;
-+
-+	vlynq_reset(dev);
-+	for (i = dev->dev_id ? vlynq_rdiv2 : vlynq_rdiv8; dev->dev_id ?
-+			i <= vlynq_rdiv8 : i >= vlynq_rdiv2;
-+		dev->dev_id ? i++ : i--) {
-+
-+		if (!vlynq_linked(dev))
-+			break;
-+
-+		writel((readl(&dev->remote->control) &
-+				~VLYNQ_CTRL_CLOCK_MASK) |
-+				VLYNQ_CTRL_CLOCK_INT |
-+				VLYNQ_CTRL_CLOCK_DIV(i - vlynq_rdiv1),
-+				&dev->remote->control);
-+		writel((readl(&dev->local->control)
-+				& ~(VLYNQ_CTRL_CLOCK_INT |
-+				VLYNQ_CTRL_CLOCK_MASK)) |
-+				VLYNQ_CTRL_CLOCK_DIV(i - vlynq_rdiv1),
-+				&dev->local->control);
-+
-+		if (vlynq_linked(dev)) {
-+			printk(KERN_DEBUG
-+				"%s: using remote clock divisor %d\n",
-+				dev_name(&dev->dev), i - vlynq_rdiv1 + 1);
-+			dev->divisor = i;
-+			return 0;
-+		} else {
-+			vlynq_reset(dev);
-+		}
-+	}
-+
-+	return -ENODEV;
-+}
-+
-+/*
-+ * A VLYNQ remote device can be clocked by the VLYNQ bus
-+ * master using a dedicated clock line. In that case, only
-+ * the bus master configures the serial clock divider.
-+ * Iterate through the 8 possible dividers until we
-+ * actually get a link with the device.
-+ */
-+static int __vlynq_try_local(struct vlynq_device *dev)
-+{
-+	int i;
-+
-+	vlynq_reset(dev);
-+
-+	for (i = dev->dev_id ? vlynq_ldiv2 : vlynq_ldiv8; dev->dev_id ?
-+			i <= vlynq_ldiv8 : i >= vlynq_ldiv2;
-+		dev->dev_id ? i++ : i--) {
-+
-+		writel((readl(&dev->local->control) &
-+				~VLYNQ_CTRL_CLOCK_MASK) |
-+				VLYNQ_CTRL_CLOCK_INT |
-+				VLYNQ_CTRL_CLOCK_DIV(i - vlynq_ldiv1),
-+				&dev->local->control);
-+
-+		if (vlynq_linked(dev)) {
-+			printk(KERN_DEBUG
-+				"%s: using local clock divisor %d\n",
-+				dev_name(&dev->dev), i - vlynq_ldiv1 + 1);
-+			dev->divisor = i;
-+			return 0;
-+		} else {
-+			vlynq_reset(dev);
-+		}
-+	}
-+
-+	return -ENODEV;
-+}
-+
-+/*
-+ * When using external clocking method, serial clock
-+ * is supplied by an external oscillator, therefore we
-+ * should mask the local clock bit in the clock control
-+ * register for both the bus master and the remote device.
-+ */
-+static int __vlynq_try_external(struct vlynq_device *dev)
-+{
-+	vlynq_reset(dev);
-+	if (!vlynq_linked(dev))
-+		return -ENODEV;
-+
-+	writel((readl(&dev->remote->control) &
-+			~VLYNQ_CTRL_CLOCK_INT),
-+			&dev->remote->control);
-+
-+	writel((readl(&dev->local->control) &
-+			~VLYNQ_CTRL_CLOCK_INT),
-+			&dev->local->control);
-+
-+	if (vlynq_linked(dev)) {
-+		printk(KERN_DEBUG "%s: using external clock\n",
-+			dev_name(&dev->dev));
-+			dev->divisor = vlynq_div_external;
-+		return 0;
-+	}
-+
-+	return -ENODEV;
-+}
-+
-+static int __vlynq_enable_device(struct vlynq_device *dev)
-+{
-+	int result;
-+	struct plat_vlynq_ops *ops = dev->dev.platform_data;
-+
-+	result = ops->on(dev);
-+	if (result)
-+		return result;
-+
-+	switch (dev->divisor) {
-+	case vlynq_div_external:
-+	case vlynq_div_auto:
-+		/* When the device is brought from reset it should have clock
-+		 * generation negotiated by hardware.
-+		 * Check which device is generating clocks and perform setup
-+		 * accordingly */
-+		if (vlynq_linked(dev) && readl(&dev->remote->control) &
-+		   VLYNQ_CTRL_CLOCK_INT) {
-+			if (!__vlynq_try_remote(dev) ||
-+				!__vlynq_try_local(dev)  ||
-+				!__vlynq_try_external(dev))
-+				return 0;
-+		} else {
-+			if (!__vlynq_try_external(dev) ||
-+				!__vlynq_try_local(dev)    ||
-+				!__vlynq_try_remote(dev))
-+				return 0;
-+		}
-+		break;
-+	case vlynq_ldiv1:
-+	case vlynq_ldiv2:
-+	case vlynq_ldiv3:
-+	case vlynq_ldiv4:
-+	case vlynq_ldiv5:
-+	case vlynq_ldiv6:
-+	case vlynq_ldiv7:
-+	case vlynq_ldiv8:
-+		writel(VLYNQ_CTRL_CLOCK_INT |
-+			VLYNQ_CTRL_CLOCK_DIV(dev->divisor -
-+			vlynq_ldiv1), &dev->local->control);
-+		writel(0, &dev->remote->control);
-+		if (vlynq_linked(dev)) {
-+			printk(KERN_DEBUG
-+				"%s: using local clock divisor %d\n",
-+				dev_name(&dev->dev),
-+				dev->divisor - vlynq_ldiv1 + 1);
-+			return 0;
-+		}
-+		break;
-+	case vlynq_rdiv1:
-+	case vlynq_rdiv2:
-+	case vlynq_rdiv3:
-+	case vlynq_rdiv4:
-+	case vlynq_rdiv5:
-+	case vlynq_rdiv6:
-+	case vlynq_rdiv7:
-+	case vlynq_rdiv8:
-+		writel(0, &dev->local->control);
-+		writel(VLYNQ_CTRL_CLOCK_INT |
-+			VLYNQ_CTRL_CLOCK_DIV(dev->divisor -
-+			vlynq_rdiv1), &dev->remote->control);
-+		if (vlynq_linked(dev)) {
-+			printk(KERN_DEBUG
-+				"%s: using remote clock divisor %d\n",
-+				dev_name(&dev->dev),
-+				dev->divisor - vlynq_rdiv1 + 1);
-+			return 0;
-+		}
-+		break;
-+	}
-+
-+	ops->off(dev);
-+	return -ENODEV;
-+}
-+
-+int vlynq_enable_device(struct vlynq_device *dev)
-+{
-+	struct plat_vlynq_ops *ops = dev->dev.platform_data;
-+	int result = -ENODEV;
-+
-+	result = __vlynq_enable_device(dev);
-+	if (result)
-+		return result;
-+
-+	result = vlynq_setup_irq(dev);
-+	if (result)
-+		ops->off(dev);
-+
-+	dev->enabled = !result;
-+	return result;
-+}
-+EXPORT_SYMBOL(vlynq_enable_device);
-+
-+
-+void vlynq_disable_device(struct vlynq_device *dev)
-+{
-+	struct plat_vlynq_ops *ops = dev->dev.platform_data;
-+
-+	dev->enabled = 0;
-+	free_irq(dev->irq, dev);
-+	ops->off(dev);
-+}
-+EXPORT_SYMBOL(vlynq_disable_device);
-+
-+int vlynq_set_local_mapping(struct vlynq_device *dev, u32 tx_offset,
-+			    struct vlynq_mapping *mapping)
-+{
-+	int i;
-+
-+	if (!dev->enabled)
-+		return -ENXIO;
-+
-+	writel(tx_offset, &dev->local->tx_offset);
-+	for (i = 0; i < 4; i++) {
-+		writel(mapping[i].offset, &dev->local->rx_mapping[i].offset);
-+		writel(mapping[i].size, &dev->local->rx_mapping[i].size);
-+	}
-+	return 0;
-+}
-+EXPORT_SYMBOL(vlynq_set_local_mapping);
-+
-+int vlynq_set_remote_mapping(struct vlynq_device *dev, u32 tx_offset,
-+			     struct vlynq_mapping *mapping)
-+{
-+	int i;
-+
-+	if (!dev->enabled)
-+		return -ENXIO;
-+
-+	writel(tx_offset, &dev->remote->tx_offset);
-+	for (i = 0; i < 4; i++) {
-+		writel(mapping[i].offset, &dev->remote->rx_mapping[i].offset);
-+		writel(mapping[i].size, &dev->remote->rx_mapping[i].size);
-+	}
-+	return 0;
-+}
-+EXPORT_SYMBOL(vlynq_set_remote_mapping);
-+
-+int vlynq_set_local_irq(struct vlynq_device *dev, int virq)
-+{
-+	int irq = dev->irq_start + virq;
-+	if (dev->enabled)
-+		return -EBUSY;
-+
-+	if ((irq < dev->irq_start) || (irq > dev->irq_end))
-+		return -EINVAL;
-+
-+	if (virq == dev->remote_irq)
-+		return -EINVAL;
-+
-+	dev->local_irq = virq;
-+
-+	return 0;
-+}
-+EXPORT_SYMBOL(vlynq_set_local_irq);
-+
-+int vlynq_set_remote_irq(struct vlynq_device *dev, int virq)
-+{
-+	int irq = dev->irq_start + virq;
-+	if (dev->enabled)
-+		return -EBUSY;
-+
-+	if ((irq < dev->irq_start) || (irq > dev->irq_end))
-+		return -EINVAL;
-+
-+	if (virq == dev->local_irq)
-+		return -EINVAL;
-+
-+	dev->remote_irq = virq;
-+
-+	return 0;
-+}
-+EXPORT_SYMBOL(vlynq_set_remote_irq);
-+
-+static int vlynq_probe(struct platform_device *pdev)
-+{
-+	struct vlynq_device *dev;
-+	struct resource *regs_res, *mem_res, *irq_res;
-+	int len, result;
-+
-+	regs_res = platform_get_resource_byname(pdev, IORESOURCE_MEM, "regs");
-+	if (!regs_res)
-+		return -ENODEV;
-+
-+	mem_res = platform_get_resource_byname(pdev, IORESOURCE_MEM, "mem");
-+	if (!mem_res)
-+		return -ENODEV;
-+
-+	irq_res = platform_get_resource_byname(pdev, IORESOURCE_IRQ, "devirq");
-+	if (!irq_res)
-+		return -ENODEV;
-+
-+	dev = kzalloc(sizeof(*dev), GFP_KERNEL);
-+	if (!dev) {
-+		printk(KERN_ERR
-+		       "vlynq: failed to allocate device structure\n");
-+		return -ENOMEM;
-+	}
-+
-+	dev->id = pdev->id;
-+	dev->dev.bus = &vlynq_bus_type;
-+	dev->dev.parent = &pdev->dev;
-+	dev_set_name(&dev->dev, "vlynq%d", dev->id);
-+	dev->dev.platform_data = pdev->dev.platform_data;
-+	dev->dev.release = vlynq_device_release;
-+
-+	dev->regs_start = regs_res->start;
-+	dev->regs_end = regs_res->end;
-+	dev->mem_start = mem_res->start;
-+	dev->mem_end = mem_res->end;
-+
-+	len = regs_res->end - regs_res->start;
-+	if (!request_mem_region(regs_res->start, len, dev_name(&dev->dev))) {
-+		printk(KERN_ERR "%s: Can't request vlynq registers\n",
-+		       dev_name(&dev->dev));
-+		result = -ENXIO;
-+		goto fail_request;
-+	}
-+
-+	dev->local = ioremap(regs_res->start, len);
-+	if (!dev->local) {
-+		printk(KERN_ERR "%s: Can't remap vlynq registers\n",
-+		       dev_name(&dev->dev));
-+		result = -ENXIO;
-+		goto fail_remap;
-+	}
-+
-+	dev->remote = (struct vlynq_regs *)((void *)dev->local +
-+					    VLYNQ_REMOTE_OFFSET);
-+
-+	dev->irq = platform_get_irq_byname(pdev, "irq");
-+	dev->irq_start = irq_res->start;
-+	dev->irq_end = irq_res->end;
-+	dev->local_irq = dev->irq_end - dev->irq_start;
-+	dev->remote_irq = dev->local_irq - 1;
-+
-+	if (device_register(&dev->dev))
-+		goto fail_register;
-+	platform_set_drvdata(pdev, dev);
-+
-+	printk(KERN_INFO "%s: regs 0x%p, irq %d, mem 0x%p\n",
-+	       dev_name(&dev->dev), (void *)dev->regs_start, dev->irq,
-+	       (void *)dev->mem_start);
-+
-+	dev->dev_id = 0;
-+	dev->divisor = vlynq_div_auto;
-+	result = __vlynq_enable_device(dev);
-+	if (result == 0) {
-+		dev->dev_id = readl(&dev->remote->chip);
-+		((struct plat_vlynq_ops *)(dev->dev.platform_data))->off(dev);
-+	}
-+	if (dev->dev_id)
-+		printk(KERN_INFO "Found a VLYNQ device: %08x\n", dev->dev_id);
-+
-+	return 0;
-+
-+fail_register:
-+	iounmap(dev->local);
-+fail_remap:
-+fail_request:
-+	release_mem_region(regs_res->start, len);
-+	kfree(dev);
-+	return result;
-+}
-+
-+static int vlynq_remove(struct platform_device *pdev)
-+{
-+	struct vlynq_device *dev = platform_get_drvdata(pdev);
-+
-+	device_unregister(&dev->dev);
-+	iounmap(dev->local);
-+	release_mem_region(dev->regs_start, dev->regs_end - dev->regs_start);
-+
-+	kfree(dev);
-+
-+	return 0;
-+}
-+
-+static struct platform_driver vlynq_platform_driver = {
-+	.driver.name = "vlynq",
-+	.probe = vlynq_probe,
-+	.remove = __devexit_p(vlynq_remove),
-+};
-+
-+struct bus_type vlynq_bus_type = {
-+	.name = "vlynq",
-+	.match = vlynq_device_match,
-+	.probe = vlynq_device_probe,
-+	.remove = vlynq_device_remove,
-+};
-+EXPORT_SYMBOL(vlynq_bus_type);
-+
-+static int __devinit vlynq_init(void)
-+{
-+	int res = 0;
-+
-+	res = bus_register(&vlynq_bus_type);
-+	if (res)
-+		goto fail_bus;
-+
-+	res = platform_driver_register(&vlynq_platform_driver);
-+	if (res)
-+		goto fail_platform;
-+
-+	return 0;
-+
-+fail_platform:
-+	bus_unregister(&vlynq_bus_type);
-+fail_bus:
-+	return res;
-+}
-+
-+static void __devexit vlynq_exit(void)
-+{
-+	platform_driver_unregister(&vlynq_platform_driver);
-+	bus_unregister(&vlynq_bus_type);
-+}
-+
-+module_init(vlynq_init);
-+module_exit(vlynq_exit);
-diff -Nur linux-2.6.30.5.orig/drivers/watchdog/ar7_wdt.c linux-2.6.30.5/drivers/watchdog/ar7_wdt.c
---- linux-2.6.30.5.orig/drivers/watchdog/ar7_wdt.c	2009-08-16 23:19:38.000000000 +0200
-+++ linux-2.6.30.5/drivers/watchdog/ar7_wdt.c	2009-08-26 20:06:40.000000000 +0200
-@@ -298,14 +298,28 @@
- 	.fops		= &ar7_wdt_fops,
- };
- 
-+#define AR7_WDT_HARDWARE_ENABLE 0x10
-+
- static int __init ar7_wdt_init(void)
- {
- 	int rc;
-+	u32 *bootcr;
-+	u32 bootcr_value;
- 
- 	spin_lock_init(&wdt_lock);
- 
- 	ar7_wdt_get_regs();
- 
-+	/* arch/mips/ar7/clocks.c is the only other thing that reads this */
-+	bootcr = (u32 *)ioremap_nocache(AR7_REGS_DCL, 4);
-+	bootcr_value = *bootcr;
-+	iounmap(bootcr);
-+
-+	if (!(bootcr_value & AR7_WDT_HARDWARE_ENABLE)) { 
-+		printk(KERN_INFO DRVNAME ": watchdog disabled in hardware (bootcr=%#x)\n", bootcr_value);
-+		return -ENODEV; 
-+        } 
-+
- 	if (!request_mem_region(ar7_regs_wdt, sizeof(struct ar7_wdt),
- 							LONGNAME)) {
- 		printk(KERN_WARNING DRVNAME ": watchdog I/O region busy\n");
-diff -Nur linux-2.6.30.5.orig/include/asm-mips/ar7/ar7.h linux-2.6.30.5/include/asm-mips/ar7/ar7.h
---- linux-2.6.30.5.orig/include/asm-mips/ar7/ar7.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.30.5/include/asm-mips/ar7/ar7.h	2009-08-26 20:05:02.000000000 +0200
-@@ -0,0 +1,170 @@
-+/*
-+ * Copyright (C) 2006,2007 Felix Fietkau <nbd@openwrt.org>
-+ * Copyright (C) 2006,2007 Eugene Konev <ejka@openwrt.org>
-+ *
-+ * This program is free software; you can redistribute it and/or modify
-+ * it under the terms of the GNU General Public License as published by
-+ * the Free Software Foundation; either version 2 of the License, or
-+ * (at your option) any later version.
-+ *
-+ * This program is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-+ * GNU General Public License for more details.
-+ *
-+ * You should have received a copy of the GNU General Public License
-+ * along with this program; if not, write to the Free Software
-+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-+ */
-+
-+#ifndef __AR7_H__
-+#define __AR7_H__
-+
-+#include <linux/delay.h>
-+#include <asm/addrspace.h>
-+#include <linux/io.h>
-+
-+#define AR7_REGS_BASE	0x08610000
-+
-+#define AR7_REGS_MAC0	(AR7_REGS_BASE + 0x0000)
-+#define AR7_REGS_GPIO	(AR7_REGS_BASE + 0x0900)
-+/* 0x08610A00 - 0x08610BFF (512 bytes, 128 bytes / clock) */
-+#define AR7_REGS_POWER	(AR7_REGS_BASE + 0x0a00)
-+#define AR7_REGS_UART0	(AR7_REGS_BASE + 0x0e00)
-+#define AR7_REGS_USB	(AR7_REGS_BASE + 0x1200)
-+#define AR7_REGS_RESET	(AR7_REGS_BASE + 0x1600)
-+#define AR7_REGS_VLYNQ0	(AR7_REGS_BASE + 0x1800)
-+#define AR7_REGS_DCL	(AR7_REGS_BASE + 0x1a00)
-+#define AR7_REGS_VLYNQ1	(AR7_REGS_BASE + 0x1c00)
-+#define AR7_REGS_MDIO	(AR7_REGS_BASE + 0x1e00)
-+#define AR7_REGS_IRQ	(AR7_REGS_BASE + 0x2400)
-+#define AR7_REGS_MAC1	(AR7_REGS_BASE + 0x2800)
-+
-+#define AR7_REGS_WDT	(AR7_REGS_BASE + 0x1f00)
-+#define UR8_REGS_WDT	(AR7_REGS_BASE + 0x0b00)
-+#define UR8_REGS_UART1	(AR7_REGS_BASE + 0x0f00)
-+
-+#define AR7_RESET_PEREPHERIAL	0x0
-+#define AR7_RESET_SOFTWARE	0x4
-+#define AR7_RESET_STATUS	0x8
-+
-+#define AR7_RESET_BIT_CPMAC_LO	17
-+#define AR7_RESET_BIT_CPMAC_HI	21
-+#define AR7_RESET_BIT_MDIO	22
-+#define AR7_RESET_BIT_EPHY	26
-+
-+/* GPIO control registers */
-+#define AR7_GPIO_INPUT	0x0
-+#define AR7_GPIO_OUTPUT	0x4
-+#define AR7_GPIO_DIR	0x8
-+#define AR7_GPIO_ENABLE	0xc
-+
-+#define AR7_CHIP_7100	0x18
-+#define AR7_CHIP_7200	0x2b
-+#define AR7_CHIP_7300	0x05
-+
-+/* Interrupts */
-+#define AR7_IRQ_UART0	15
-+#define AR7_IRQ_UART1	16
-+
-+/* Clocks */
-+#define AR7_AFE_CLOCK	35328000
-+#define AR7_REF_CLOCK	25000000
-+#define AR7_XTAL_CLOCK	24000000
-+
-+struct plat_cpmac_data {
-+	int reset_bit;
-+	int power_bit;
-+	u32 phy_mask;
-+	char dev_addr[6];
-+};
-+
-+struct plat_dsl_data {
-+	int reset_bit_dsl;
-+	int reset_bit_sar;
-+};
-+
-+extern int ar7_cpu_clock, ar7_bus_clock, ar7_dsp_clock;
-+
-+static inline u16 ar7_chip_id(void)
-+{
-+	return readl((void *)KSEG1ADDR(AR7_REGS_GPIO + 0x14)) & 0xffff;
-+}
-+
-+static inline u8 ar7_chip_rev(void)
-+{
-+	return (readl((void *)KSEG1ADDR(AR7_REGS_GPIO + 0x14)) >> 16) & 0xff;
-+}
-+
-+static inline int ar7_cpu_freq(void)
-+{
-+	return ar7_cpu_clock;
-+}
-+
-+static inline int ar7_bus_freq(void)
-+{
-+	return ar7_bus_clock;
-+}
-+
-+static inline int ar7_vbus_freq(void)
-+{
-+	return ar7_bus_clock / 2;
-+}
-+#define ar7_cpmac_freq ar7_vbus_freq
-+
-+static inline int ar7_dsp_freq(void)
-+{
-+	return ar7_dsp_clock;
-+}
-+
-+static inline int ar7_has_high_cpmac(void)
-+{
-+	u16 chip_id = ar7_chip_id();
-+	switch (chip_id) {
-+	case AR7_CHIP_7100:
-+	case AR7_CHIP_7200:
-+		return 0;
-+	default:
-+		return 1;
-+	}
-+}
-+#define ar7_has_high_vlynq ar7_has_high_cpmac
-+#define ar7_has_second_uart ar7_has_high_cpmac
-+
-+static inline void ar7_device_enable(u32 bit)
-+{
-+	void *reset_reg =
-+		(void *)KSEG1ADDR(AR7_REGS_RESET + AR7_RESET_PEREPHERIAL);
-+	writel(readl(reset_reg) | (1 << bit), reset_reg);
-+	mdelay(20);
-+}
-+
-+static inline void ar7_device_disable(u32 bit)
-+{
-+	void *reset_reg =
-+		(void *)KSEG1ADDR(AR7_REGS_RESET + AR7_RESET_PEREPHERIAL);
-+	writel(readl(reset_reg) & ~(1 << bit), reset_reg);
-+	mdelay(20);
-+}
-+
-+static inline void ar7_device_reset(u32 bit)
-+{
-+	ar7_device_disable(bit);
-+	ar7_device_enable(bit);
-+}
-+
-+static inline void ar7_device_on(u32 bit)
-+{
-+	void *power_reg = (void *)KSEG1ADDR(AR7_REGS_POWER);
-+	writel(readl(power_reg) | (1 << bit), power_reg);
-+	mdelay(20);
-+}
-+
-+static inline void ar7_device_off(u32 bit)
-+{
-+	void *power_reg = (void *)KSEG1ADDR(AR7_REGS_POWER);
-+	writel(readl(power_reg) & ~(1 << bit), power_reg);
-+	mdelay(20);
-+}
-+
-+#endif /* __AR7_H__ */
-diff -Nur linux-2.6.30.5.orig/include/asm-mips/ar7/gpio.h linux-2.6.30.5/include/asm-mips/ar7/gpio.h
---- linux-2.6.30.5.orig/include/asm-mips/ar7/gpio.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.30.5/include/asm-mips/ar7/gpio.h	2009-08-26 20:05:02.000000000 +0200
-@@ -0,0 +1,109 @@
-+/*
-+ * Copyright (C) 2007 Florian Fainelli <florian@openwrt.org>
-+ *
-+ * This program is free software; you can redistribute it and/or modify
-+ * it under the terms of the GNU General Public License as published by
-+ * the Free Software Foundation; either version 2 of the License, or
-+ * (at your option) any later version.
-+ *
-+ * This program is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-+ * GNU General Public License for more details.
-+ *
-+ * You should have received a copy of the GNU General Public License
-+ * along with this program; if not, write to the Free Software
-+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-+ */
-+
-+#ifndef __AR7_GPIO_H__
-+#define __AR7_GPIO_H__
-+#include <asm/ar7/ar7.h>
-+
-+#define AR7_GPIO_MAX 32
-+
-+extern int gpio_request(unsigned gpio, const char *label);
-+extern void gpio_free(unsigned gpio);
-+
-+/* Common GPIO layer */
-+static inline int gpio_get_value(unsigned gpio)
-+{
-+	void __iomem *gpio_in =
-+		(void __iomem *)KSEG1ADDR(AR7_REGS_GPIO + AR7_GPIO_INPUT);
-+
-+	return readl(gpio_in) & (1 << gpio);
-+}
-+
-+static inline void gpio_set_value(unsigned gpio, int value)
-+{
-+	void __iomem *gpio_out =
-+		(void __iomem *)KSEG1ADDR(AR7_REGS_GPIO + AR7_GPIO_OUTPUT);
-+	unsigned tmp;
-+
-+	tmp = readl(gpio_out) & ~(1 << gpio);
-+	if (value)
-+		tmp |= 1 << gpio;
-+	writel(tmp, gpio_out);
-+}
-+
-+static inline int gpio_direction_input(unsigned gpio)
-+{
-+	void __iomem *gpio_dir =
-+		(void __iomem *)KSEG1ADDR(AR7_REGS_GPIO + AR7_GPIO_DIR);
-+
-+	if (gpio >= AR7_GPIO_MAX)
-+		return -EINVAL;
-+
-+	writel(readl(gpio_dir) | (1 << gpio), gpio_dir);
-+
-+	return 0;
-+}
-+
-+static inline int gpio_direction_output(unsigned gpio, int value)
-+{
-+	void __iomem *gpio_dir =
-+		(void __iomem *)KSEG1ADDR(AR7_REGS_GPIO + AR7_GPIO_DIR);
-+
-+	if (gpio >= AR7_GPIO_MAX)
-+		return -EINVAL;
-+
-+	gpio_set_value(gpio, value);
-+	writel(readl(gpio_dir) & ~(1 << gpio), gpio_dir);
-+
-+	return 0;
-+}
-+
-+static inline int gpio_to_irq(unsigned gpio)
-+{
-+	return -EINVAL;
-+}
-+
-+static inline int irq_to_gpio(unsigned irq)
-+{
-+	return -EINVAL;
-+}
-+
-+/* Board specific GPIO functions */
-+static inline int ar7_gpio_enable(unsigned gpio)
-+{
-+	void __iomem *gpio_en =
-+		(void __iomem *)KSEG1ADDR(AR7_REGS_GPIO + AR7_GPIO_ENABLE);
-+
-+	writel(readl(gpio_en) | (1 << gpio), gpio_en);
-+
-+	return 0;
-+}
-+
-+static inline int ar7_gpio_disable(unsigned gpio)
-+{
-+	void __iomem *gpio_en =
-+		(void __iomem *)KSEG1ADDR(AR7_REGS_GPIO + AR7_GPIO_ENABLE);
-+
-+	writel(readl(gpio_en) & ~(1 << gpio), gpio_en);
-+
-+	return 0;
-+}
-+
-+#include <asm-generic/gpio.h>
-+
-+#endif
-diff -Nur linux-2.6.30.5.orig/include/asm-mips/ar7/irq.h linux-2.6.30.5/include/asm-mips/ar7/irq.h
---- linux-2.6.30.5.orig/include/asm-mips/ar7/irq.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.30.5/include/asm-mips/ar7/irq.h	2009-08-26 20:05:02.000000000 +0200
-@@ -0,0 +1,16 @@
-+/*
-+ * This file is subject to the terms and conditions of the GNU General Public
-+ * License.  See the file "COPYING" in the main directory of this archive
-+ * for more details.
-+ *
-+ * Shamelessly copied from asm-mips/mach-emma2rh/
-+ * Copyright (C) 2003 by Ralf Baechle
-+ */
-+#ifndef __ASM_AR7_IRQ_H
-+#define __ASM_AR7_IRQ_H
-+
-+#define NR_IRQS	256
-+
-+#include_next <irq.h>
-+
-+#endif /* __ASM_AR7_IRQ_H */
-diff -Nur linux-2.6.30.5.orig/include/asm-mips/ar7/prom.h linux-2.6.30.5/include/asm-mips/ar7/prom.h
---- linux-2.6.30.5.orig/include/asm-mips/ar7/prom.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.30.5/include/asm-mips/ar7/prom.h	2009-08-26 20:05:02.000000000 +0200
-@@ -0,0 +1,26 @@
-+/*
-+ * Copyright (C) 2006, 2007 Florian Fainelli <florian@openwrt.org>
-+ *
-+ * This program is free software; you can redistribute it and/or modify
-+ * it under the terms of the GNU General Public License as published by
-+ * the Free Software Foundation; either version 2 of the License, or
-+ * (at your option) any later version.
-+ *
-+ * This program is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-+ * GNU General Public License for more details.
-+ *
-+ * You should have received a copy of the GNU General Public License
-+ * along with this program; if not, write to the Free Software
-+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-+ */
-+
-+#ifndef __PROM_H__
-+#define __PROM_H__
-+
-+extern char *prom_getenv(const char *name);
-+extern void prom_printf(const char *fmt, ...) __attribute__((format(printf, 1, 2)));
-+extern void prom_meminit(void);
-+
-+#endif /* __PROM_H__ */
-diff -Nur linux-2.6.30.5.orig/include/asm-mips/ar7/spaces.h linux-2.6.30.5/include/asm-mips/ar7/spaces.h
---- linux-2.6.30.5.orig/include/asm-mips/ar7/spaces.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.30.5/include/asm-mips/ar7/spaces.h	2009-08-26 20:05:02.000000000 +0200
-@@ -0,0 +1,32 @@
-+/*
-+ * This file is subject to the terms and conditions of the GNU General Public
-+ * License.  See the file "COPYING" in the main directory of this archive
-+ * for more details.
-+ *
-+ * Copyright (C) 1994 - 1999, 2000, 03, 04 Ralf Baechle
-+ * Copyright (C) 2000, 2002  Maciej W. Rozycki
-+ * Copyright (C) 1990, 1999, 2000 Silicon Graphics, Inc.
-+ */
-+#ifndef _ASM_AR7_SPACES_H
-+#define _ASM_AR7_SPACES_H
-+
-+#define CAC_BASE		0x80000000
-+#define IO_BASE			0xa0000000
-+#define UNCAC_BASE		0xa0000000
-+#define MAP_BASE		0xc0000000
-+
-+/*
-+ * This handles the memory map.
-+ * We handle pages at KSEG0 for kernels with 32 bit address space.
-+ */
-+#define PAGE_OFFSET		0x94000000UL
-+#define PHYS_OFFSET		0x14000000UL
-+
-+/*
-+ * Memory above this physical address will be considered highmem.
-+ */
-+#ifndef HIGHMEM_START
-+#define HIGHMEM_START		0x40000000UL
-+#endif
-+
-+#endif /* __ASM_AR7_SPACES_H */
-diff -Nur linux-2.6.30.5.orig/include/asm-mips/ar7/war.h linux-2.6.30.5/include/asm-mips/ar7/war.h
---- linux-2.6.30.5.orig/include/asm-mips/ar7/war.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.30.5/include/asm-mips/ar7/war.h	2009-08-26 20:05:02.000000000 +0200
-@@ -0,0 +1,25 @@
-+/*
-+ * This file is subject to the terms and conditions of the GNU General Public
-+ * License.  See the file "COPYING" in the main directory of this archive
-+ * for more details.
-+ *
-+ * Copyright (C) 2002, 2004, 2007 by Ralf Baechle <ralf@linux-mips.org>
-+ */
-+#ifndef __ASM_MIPS_MACH_BCM947XX_WAR_H
-+#define __ASM_MIPS_MACH_BCM947XX_WAR_H
-+
-+#define R4600_V1_INDEX_ICACHEOP_WAR	0
-+#define R4600_V1_HIT_CACHEOP_WAR	0
-+#define R4600_V2_HIT_CACHEOP_WAR	0
-+#define R5432_CP0_INTERRUPT_WAR		0
-+#define BCM1250_M3_WAR			0
-+#define SIBYTE_1956_WAR			0
-+#define MIPS4K_ICACHE_REFILL_WAR	0
-+#define MIPS_CACHE_SYNC_WAR		0
-+#define TX49XX_ICACHE_INDEX_INV_WAR	0
-+#define RM9000_CDEX_SMP_WAR		0
-+#define ICACHE_REFILLS_WORKAROUND_WAR	0
-+#define R10000_LLSC_WAR			0
-+#define MIPS34K_MISSED_ITLB_WAR		0
-+
-+#endif /* __ASM_MIPS_MACH_BCM947XX_WAR_H */
-diff -Nur linux-2.6.30.5.orig/include/linux/serial_core.h linux-2.6.30.5/include/linux/serial_core.h
---- linux-2.6.30.5.orig/include/linux/serial_core.h	2009-08-16 23:19:38.000000000 +0200
-+++ linux-2.6.30.5/include/linux/serial_core.h	2009-08-26 20:06:59.000000000 +0200
-@@ -41,6 +41,7 @@
- #define PORT_XSCALE	15
- #define PORT_RM9000	16	/* PMC-Sierra RM9xxx internal UART */
- #define PORT_OCTEON	17	/* Cavium OCTEON internal UART */
-+#define PORT_AR7	18	/* TI AR7 internal UART */
- #define PORT_MAX_8250	17	/* max port ID */
- 
- /*
-diff -Nur linux-2.6.30.5.orig/include/linux/vlynq.h linux-2.6.30.5/include/linux/vlynq.h
---- linux-2.6.30.5.orig/include/linux/vlynq.h	1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.30.5/include/linux/vlynq.h	2009-08-26 20:05:02.000000000 +0200
-@@ -0,0 +1,161 @@
-+/*
-+ * Copyright (C) 2006, 2007 Eugene Konev <ejka@openwrt.org>
-+ *
-+ * This program is free software; you can redistribute it and/or modify
-+ * it under the terms of the GNU General Public License as published by
-+ * the Free Software Foundation; either version 2 of the License, or
-+ * (at your option) any later version.
-+ *
-+ * This program is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-+ * GNU General Public License for more details.
-+ *
-+ * You should have received a copy of the GNU General Public License
-+ * along with this program; if not, write to the Free Software
-+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
-+ */
-+
-+#ifndef __VLYNQ_H__
-+#define __VLYNQ_H__
-+
-+#include <linux/device.h>
-+#include <linux/module.h>
-+#include <linux/types.h>
-+
-+#define VLYNQ_NUM_IRQS 32
-+
-+struct vlynq_mapping {
-+	u32 size;
-+	u32 offset;
-+};
-+
-+enum vlynq_divisor {
-+	vlynq_div_auto = 0,
-+	vlynq_ldiv1,
-+	vlynq_ldiv2,
-+	vlynq_ldiv3,
-+	vlynq_ldiv4,
-+	vlynq_ldiv5,
-+	vlynq_ldiv6,
-+	vlynq_ldiv7,
-+	vlynq_ldiv8,
-+	vlynq_rdiv1,
-+	vlynq_rdiv2,
-+	vlynq_rdiv3,
-+	vlynq_rdiv4,
-+	vlynq_rdiv5,
-+	vlynq_rdiv6,
-+	vlynq_rdiv7,
-+	vlynq_rdiv8,
-+	vlynq_div_external
-+};
-+
-+struct vlynq_device_id {
-+	u32 id;
-+	enum vlynq_divisor divisor;
-+	unsigned long driver_data;
-+};
-+
-+struct vlynq_regs;
-+struct vlynq_device {
-+	u32 id, dev_id;
-+	int local_irq;
-+	int remote_irq;
-+	enum vlynq_divisor divisor;
-+	u32 regs_start, regs_end;
-+	u32 mem_start, mem_end;
-+	u32 irq_start, irq_end;
-+	int irq;
-+	int enabled;
-+	struct vlynq_regs *local;
-+	struct vlynq_regs *remote;
-+	struct device dev;
-+};
-+
-+struct vlynq_driver {
-+	char *name;
-+	struct vlynq_device_id *id_table;
-+	int (*probe)(struct vlynq_device *dev, struct vlynq_device_id *id);
-+	void (*remove)(struct vlynq_device *dev);
-+	struct device_driver driver;
-+};
-+
-+struct plat_vlynq_ops {
-+	int (*on)(struct vlynq_device *dev);
-+	void (*off)(struct vlynq_device *dev);
-+};
-+
-+static inline struct vlynq_driver *to_vlynq_driver(struct device_driver *drv)
-+{
-+	return container_of(drv, struct vlynq_driver, driver);
-+}
-+
-+static inline struct vlynq_device *to_vlynq_device(struct device *device)
-+{
-+	return container_of(device, struct vlynq_device, dev);
-+}
-+
-+extern struct bus_type vlynq_bus_type;
-+
-+extern int __vlynq_register_driver(struct vlynq_driver *driver,
-+				   struct module *owner);
-+
-+static inline int vlynq_register_driver(struct vlynq_driver *driver)
-+{
-+	return __vlynq_register_driver(driver, THIS_MODULE);
-+}
-+
-+static inline void *vlynq_get_drvdata(struct vlynq_device *dev)
-+{
-+	return dev_get_drvdata(&dev->dev);
-+}
-+
-+static inline void vlynq_set_drvdata(struct vlynq_device *dev, void *data)
-+{
-+	dev_set_drvdata(&dev->dev, data);
-+}
-+
-+static inline u32 vlynq_mem_start(struct vlynq_device *dev)
-+{
-+	return dev->mem_start;
-+}
-+
-+static inline u32 vlynq_mem_end(struct vlynq_device *dev)
-+{
-+	return dev->mem_end;
-+}
-+
-+static inline u32 vlynq_mem_len(struct vlynq_device *dev)
-+{
-+	return dev->mem_end - dev->mem_start + 1;
-+}
-+
-+static inline int vlynq_virq_to_irq(struct vlynq_device *dev, int virq)
-+{
-+	int irq = dev->irq_start + virq;
-+	if ((irq < dev->irq_start) || (irq > dev->irq_end))
-+		return -EINVAL;
-+
-+	return irq;
-+}
-+
-+static inline int vlynq_irq_to_virq(struct vlynq_device *dev, int irq)
-+{
-+	if ((irq < dev->irq_start) || (irq > dev->irq_end))
-+		return -EINVAL;
-+
-+	return irq - dev->irq_start;
-+}
-+
-+extern void vlynq_unregister_driver(struct vlynq_driver *driver);
-+extern int vlynq_enable_device(struct vlynq_device *dev);
-+extern void vlynq_disable_device(struct vlynq_device *dev);
-+extern int vlynq_set_local_mapping(struct vlynq_device *dev, u32 tx_offset,
-+				   struct vlynq_mapping *mapping);
-+extern int vlynq_set_remote_mapping(struct vlynq_device *dev, u32 tx_offset,
-+				    struct vlynq_mapping *mapping);
-+extern int vlynq_set_local_irq(struct vlynq_device *dev, int virq);
-+extern int vlynq_set_remote_irq(struct vlynq_device *dev, int virq);
-+
-+#endif /* __VLYNQ_H__ */

+ 0 - 7
target/wag54g/target.mk

@@ -1,7 +0,0 @@
-ARCH:=			mips
-CPU_ARCH:=		mipsel
-KERNEL_VERSION:=	2.6.35.7
-KERNEL_RELEASE:=	1
-KERNEL_MD5SUM:=		f741879bcd3a5366a1bbe0ad5cdb7935
-TARGET_OPTIMIZATION:=	-Os -pipe
-TARGET_CFLAGS_ARCH:=    -march=mips32

+ 0 - 4
target/wag54g/tools/addpattern/Makefile

@@ -1,4 +0,0 @@
-include $(TOPDIR)/rules.mk
-
-all:
-	$(HOSTCC) ${HOSTCFLAGS} -o ${STAGING_TOOLS}/bin/addpattern addpattern.c

+ 0 - 255
target/wag54g/tools/addpattern/addpattern.c

@@ -1,255 +0,0 @@
-/*
- * Copyright (C) 2004  Manuel Novoa III  <mjn3@codepoet.org>
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
- */
-
-/* July 29, 2004
- *
- * This is a hacked replacement for the 'addpattern' utility used to
- * create wrt54g .bin firmware files.  It isn't pretty, but it does
- * the job for me.
- *
- * Extensions:
- *  -v allows setting the version string on the command line.
- *  -{0|1} sets the (currently ignored) hw_ver flag in the header
- *      to 0 or 1 respectively.
- */
-
-/* January 12, 2005
- * 
- * Modified by rodent at rodent dot za dot net
- * Support added for the new WRT54G v2.2 and WRT54GS v1.1 "flags"
- * Without the flags set to 0x7, the above units will refuse to flash.
- * 
- * Extensions:
- *  -{0|1|2} sets {0|1} sets hw_ver flag to 0/1. {2} sets hw_ver to 1
- *     and adds the new hardware "flags" for the v2.2/v1.1 units
-*/
-
-/* January 1, 2007
- *
- * Modified by juan.i.gonzalez at subdown dot net
- * Support added for the AG241v2  and similar
- *
- * Extensions:
- *  -r #.# adds revision hardware flags. AG241v2 and similar.
- *
- * AG241V2 firmware sets the hw_ver to 0x44.
- *
- * Example: -r 2.0
- *
- * Convert 2.0 to 20 to be an integer, and add 0x30 to skip special ASCII
- * #define HW_Version ((HW_REV * 10) + 0x30)  -> from cyutils.h
-*/
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include <time.h>
-#include <unistd.h>
-#include <sys/stat.h>
-
-/**********************************************************************/
-
-#define CODE_ID		"U2ND"		/* from code_pattern.h */
-#define CODE_PATTERN   "W54S"	/* from code_pattern.h */
-#define PBOT_PATTERN   "PBOT"
-
-#define CYBERTAN_VERSION	"v3.37.2" /* from cyutils.h */
-
-/* WRT54G v2.2 and WRT54GS v1.1 "flags" (from 3.37.32 firmware cyutils.h) */
-#define SUPPORT_4712_CHIP      0x0001
-#define SUPPORT_INTEL_FLASH    0x0002
-#define SUPPORT_5325E_SWITCH   0x0004
-
-struct code_header {			/* from cyutils.h */
-	char magic[4];
-	char res1[4];				/* for extra magic */
-	char fwdate[3];
-	char fwvern[3];
-	char id[4];					/* U2ND */
-	char hw_ver;    			/* 0: for 4702, 1: for 4712 -- new in 2.04.3 */
-	char unused;
-	unsigned char flags[2];       /* SUPPORT_ flags new for 3.37.2 (WRT54G v2.2 and WRT54GS v1.1) */
-	unsigned char res2[10];
-} ;
-
-/**********************************************************************/
-
-void usage(void) __attribute__ (( __noreturn__ ));
-
-void usage(void)
-{
-	fprintf(stderr, "Usage: addpattern [-i trxfile] [-o binfile] [-p pattern] [-g] [-b] [-v v#.#.#] [-r #.#] [-{0|1|2|4}] -h\n");
-	exit(EXIT_FAILURE);
-}
-
-int main(int argc, char **argv)
-{
-	char buf[1024];	/* keep this at 1k or adjust garbage calc below */
-	struct code_header *hdr;
-	FILE *in = stdin;
-	FILE *out = stdout;
-	char *ifn = NULL;
-	char *ofn = NULL;
-	char *pattern = CODE_PATTERN;
-	char *pbotpat = PBOT_PATTERN;
-	char *version = CYBERTAN_VERSION;
-	int gflag = 0;
-	int pbotflag = 0;
-	int c;
-	int v0, v1, v2;
-	size_t off, n;
-	time_t t;
-	struct tm *ptm;
-
-	fprintf(stderr, "mjn3's addpattern replacement - v0.81\n");
-
-	hdr = (struct code_header *) buf;
-	memset(hdr, 0, sizeof(struct code_header));
-
-	while ((c = getopt(argc, argv, "i:o:p:gbv:0124hr:")) != -1) {
-		switch (c) {
-			case 'i':
-				ifn = optarg;
-				break;
-			case 'o':
-				ofn = optarg;
-				break;
-			case 'p':
-				pattern = optarg;
-				break;
-			case 'g':
-				gflag = 1;
-				break;
-			case 'b':
-				pbotflag = 1;
-				break;
-			case 'v':			/* extension to allow setting version */
-				version = optarg;
-				break;
-			case '0':
-				hdr->hw_ver = 0;
-				break;
-			case '1':
-				hdr->hw_ver = 1;
-				break;
-			case '2': 			/* new 54G v2.2 and 54GS v1.1 flags */
-				hdr->hw_ver = 1;
-				hdr->flags[0] |= SUPPORT_4712_CHIP;
-				hdr->flags[0] |= SUPPORT_INTEL_FLASH;
-				hdr->flags[0] |= SUPPORT_5325E_SWITCH;
-				break;
-			case '4':
-				/* V4 firmware sets the flags to 0x1f */
-				hdr->hw_ver = 0;
-				hdr->flags[0] = 0x1f;
-				break;
-                        case 'r':
-                                hdr->hw_ver = (char)(atof(optarg)*10)+0x30;
-                                break;
-
-                        case 'h':
-			default:
-				usage();
-		}
-	}
-
-    	if (optind != argc || optind == 1) {
-		fprintf(stderr, "illegal arg \"%s\"\n", argv[optind]);
-		usage();
-	}
-
-	if (strlen(pattern) != 4) {
-		fprintf(stderr, "illegal pattern \"%s\": length != 4\n", pattern);
-		usage();
-	}
-
-	if (ifn && !(in = fopen(ifn, "r"))) {
-		fprintf(stderr, "can not open \"%s\" for reading\n", ifn);
-		usage();
-	}
-
-	if (ofn && !(out = fopen(ofn, "w"))) {
-		fprintf(stderr, "can not open \"%s\" for writing\n", ofn);
-		usage();
-	}
-
-	if (time(&t) == (time_t)(-1)) {
-		fprintf(stderr, "time call failed\n");
-		return EXIT_FAILURE;
-	}
-
-	ptm = localtime(&t);
-
-	if (3 != sscanf(version, "v%d.%d.%d", &v0, &v1, &v2)) {
-		fprintf(stderr, "bad version string \"%s\"\n", version);
-		return EXIT_FAILURE;
-	}
-
-	memcpy(&hdr->magic, pattern, 4);
-	if (pbotflag)
-		memcpy(&hdr->res1, pbotpat, 4);
-	hdr->fwdate[0] = ptm->tm_year % 100;
-	hdr->fwdate[1] = ptm->tm_mon + 1;
-	hdr->fwdate[2] = ptm->tm_mday;
-	hdr->fwvern[0] = v0;
-	hdr->fwvern[1] = v1;
-	hdr->fwvern[2] = v2;
-	memcpy(&hdr->id, CODE_ID, strlen(CODE_ID));
-
-	off = sizeof(struct code_header);
-
-	fprintf(stderr, "writing firmware v%d.%d.%d on %d/%d/%d (y/m/d)\n",
-			v0, v1, v2,
-			hdr->fwdate[0], hdr->fwdate[1], hdr->fwdate[2]);
-
-
-	while ((n = fread(buf + off, 1, sizeof(buf)-off, in) + off) > 0) {
-		off = 0;
-		if (n < sizeof(buf)) {
-			if (ferror(in)) {
-			FREAD_ERROR:
-				fprintf(stderr, "fread error\n");
-				return EXIT_FAILURE;
-			}
-			if (gflag) {
-				gflag = sizeof(buf) - n;
-				memset(buf + n, 0xff, gflag);
-				fprintf(stderr, "adding %d bytes of garbage\n", gflag);
-				n = sizeof(buf);
-			}
-		}
-		if (!fwrite(buf, n, 1, out)) {
-		FWRITE_ERROR:
-			fprintf(stderr, "fwrite error\n");
-			return EXIT_FAILURE;
-		}
-	}
-	
-	if (ferror(in)) {
-		goto FREAD_ERROR;
-	}
-
-	if (fflush(out)) {
-		goto FWRITE_ERROR;
-	}
-
-	fclose(in);
-	fclose(out);
-
-	return EXIT_SUCCESS;
-}

+ 0 - 9
target/wag54g/tools/rules.mk

@@ -1,9 +0,0 @@
-# $Id$
-#-
-# This file is part of the OpenADK project. OpenADK is copyrighted
-# material, please see the LICENCE file in the top-level directory.
-
-WRKDIR_BASE=    ${TOOLS_BUILD_DIR}
-WRKDIR=		${WRKDIR_BASE}
-
-include ${TOPDIR}/mk/buildhlp.mk

+ 0 - 27
target/wag54g/tools/squashfs/Makefile

@@ -1,27 +0,0 @@
-# $Id$
-#-
-# This file is part of the OpenADK project. OpenADK is copyrighted
-# material, please see the LICENCE file in the top-level directory.
-
-include $(TOPDIR)/rules.mk
-
-PKG_NAME:=		squashfs
-PKG_VERSION:=		4.0
-PKG_RELEASE:=		1
-PKG_MD5SUM:=		a3c23391da4ebab0ac4a75021ddabf96
-PKG_SITES:=		${MASTER_SITE_SOURCEFORGE:=squashfs/}
-DISTFILES:=		${PKG_NAME}${PKG_VERSION}.tar.gz
-WRKDIST=		${WRKDIR}/$(PKG_NAME)${PKG_VERSION}
-
-include ../rules.mk
-
-$(WRKBUILD)/.compiled: ${WRKDIST}/.prepared
-	$(MAKE) -C $(WRKBUILD)/squashfs-tools
-	touch $@
-
-$(WRKBUILD)/.installed:
-	$(INSTALL_BIN) $(WRKBUILD)/squashfs-tools/mksquashfs \
-		${STAGING_TOOLS}/bin
-	touch $@
-
-include $(TOPDIR)/mk/tools.mk

+ 0 - 4
target/wag54g/tools/srec2bin/Makefile

@@ -1,4 +0,0 @@
-include $(TOPDIR)/rules.mk
-
-all:
-	$(HOSTCC) ${HOSTCFLAGS} -o ${STAGING_TOOLS}/bin/srec2bin srec2bin.c

+ 0 - 524
target/wag54g/tools/srec2bin/srec2bin.c

@@ -1,524 +0,0 @@
-#include <stdio.h>
-#include <ctype.h>
-#include <string.h>
-
-//Rev 0.1 Original
-// 8 Jan 2001  MJH  Added code to write data to Binary file
-//                  note: outputfile is name.bin, where name is first part
-//                  of input file.  ie tmp.rec -> tmp.bin
-//
-//   srec2bin <input SREC file> <Output Binary File> <If Present, Big Endian>
-//
-//   TAG   
-//        bit32u TAG_BIG     = 0xDEADBE42;
-//        bit32u TAG_LITTLE  = 0xFEEDFA42;
-//
-//  File Structure
-//
-//  TAG    :   32 Bits
-//  [DATA RECORDS]
-//
-//  Data Records Structure
-//
-//  LENGTH  :  32 Bits    <- Length of DATA, excludes ADDRESS and CHECKSUM
-//  ADDRESS :  32 Bits
-//  DATA    :  8 Bits * LENGTH
-//  CHECKSUM:  32 Bits    <-  0 - (Sum of Length --> End of Data)
-//
-//  Note : If Length == 0, Address will be Program Start
-//
-//
-//  
-//
-//
-
-#define MajRevNum 0
-#define MinRevNum 2
-
-
-#define EndianSwitch(x) ((x >> 24) | (x << 24) | ((x << 8) & (0x00FF0000)) | ((x >> 8) & (0x0000FF00)) )
-
-typedef unsigned char bit8u;
-typedef unsigned int bit32u;
-typedef int bit32;
-
-#define FALSE 0
-#define TRUE (!FALSE)
-
-
-bit32u CheckSum;
-int RecStart;
-int debug;
-int verbose;
-
-FILE *OpenOutputFile( char *Name );
-FILE *fOut;
-bit32u RecLength=0;
-
-bit32u AddressCurrent;
-
-bit32u gh(char *cp,int nibs);
-
-int BigEndian;
-
-int inputline;
-
-// char buf[16*1024];
-
-char buffer[2048];
-char *cur_ptr;
-int cur_line=0;
-int cur_len=0;
-
-int s1s2s3_total=0;
-
-bit32u PBVal;
-int    PBValid;
-bit32u PBAdr;
-
-
-void dumpfTell(char *s, bit32u Value)
-{
-    int Length;
-    Length = (int) RecLength;
-    if (debug)
-          printf("[%s  ] ftell()[0x%08lX] Length[0x%4X] Length[%4d] Value[0x%08x]\n",
-                s, ftell(fOut), Length, Length, Value);
-}
-
-void DispHex(bit32u Hex)
-{
-//    printf("%X", Hex);
-}
-
-void WaitDisplay(void)
-{
-   static int Count=0;
-   static int Index=0;
-   char iline[]={"-\\|/"};
-
-   Count++;
-   if ((Count % 32)==0)
-   {
-     if (verbose)
-        printf("%c%c",iline[Index++],8);
-     Index &= 3;
-   }
-}
-
-
-void binOut32 ( bit32u Data )
-{
-// On UNIX machine all 32bit writes need ENDIAN switched
-//    Data = EndianSwitch(Data);
-//    fwrite( &Data, sizeof(bit32u), 1, fOut);
-
-   char sdat[4];
-   int i;
-
-   for(i=0;i<4;i++)
-    sdat[i]=(char)(Data>>(i*8));
-   fwrite( sdat, 1, 4, fOut);
-   dumpfTell("Out32" , Data);
-}
-
-// Only update RecLength on Byte Writes
-// All 32 bit writes will be for Length etc
-
-void binOut8 ( bit8u Data )
-{
-    int n;
-    dumpfTell("B4Data" , (bit32u) (Data & 0xFF) );
-    n = fwrite( &Data, sizeof(bit8u), 1, fOut);
-    if (n != 1)
-        printf("Error in writing %X for Address 0x%8X\n", Data, AddressCurrent);
-    RecLength += 1;
-}
-
-//  Currently ONLY used for outputting Program Start
-
-void binRecStart(bit32u Address)
-{
-    RecLength      = 0;
-    CheckSum       = Address;
-    RecStart       = TRUE;
-
-    if (debug)
-          printf("[RecStart] CheckSum[0x%08X] Length[%4d] Address[0x%08X]\n",
-                CheckSum, RecLength, Address);
-
-
-    dumpfTell("RecLength", RecLength);
-    binOut32( RecLength );
-    dumpfTell("Address", Address);
-    binOut32( Address );
-}
-
-void binRecEnd(void)
-{
-    long RecEnd;
-
-    if (!RecStart)   //  if no record started, do not end it
-    {
-        return;
-    }
-
-    RecStart = FALSE;
-
-
-    RecEnd = ftell(fOut);         // Save Current position
-
-    if (debug)
-          printf("[RecEnd  ] CheckSum[0x%08X] Length[%4d] Length[0x%X] RecEnd[0x%08lX]\n",
-                CheckSum, RecLength, RecLength, RecEnd);
-
-    fseek( fOut, -((long) RecLength), SEEK_CUR);  // move back Start Of Data
-
-    dumpfTell("Data   ", -1);
-
-    fseek( fOut, -4, SEEK_CUR);  // move back Start Of Address
-
-    dumpfTell("Address   ", -1);
-
-    fseek( fOut, -4, SEEK_CUR);  // move back Start Of Length
-
-    dumpfTell("Length   ", -1);
-
-    binOut32( RecLength );
-
-    fseek( fOut, RecEnd, SEEK_SET);  // move to end of Record
-
-    CheckSum += RecLength;
-
-    CheckSum =  ~CheckSum + 1;  // Two's complement
-
-    binOut32( CheckSum );
-
-    if (verbose)
-        printf("[Created Record of %d Bytes with CheckSum [0x%8X]\n", RecLength, CheckSum);
-}
-
-void binRecOutProgramStart(bit32u Address)
-{
-    if (Address != (AddressCurrent+1))
-    {
-        binRecEnd();
-        binRecStart(Address);
-    }
-    AddressCurrent = Address;
-}
-void binRecOutByte(bit32u Address, bit8u Data)
-{
-    //  If Address is one after Current Address, output Byte
-    //  If not, close out last record, update Length, write checksum
-    //  Then Start New Record, updating Current Address
-
-    if (Address != (AddressCurrent+1))
-    {
-        binRecEnd();
-        binRecStart(Address);
-    }
-    AddressCurrent = Address;
-    CheckSum += Data;
-    binOut8( Data );
-}
-
-//=============================================================================
-//       SUPPORT FUNCTIONS
-//=============================================================================
-int readline(FILE *fil,char *buf,int len)
-{
-    int rlen;
-    
-    rlen=0;
-    if (len==0)  return(0);
-    while(1)
-    {
-      if (cur_len==0)
-      {
-        cur_len=fread(buffer, 1, sizeof(buffer), fil);
-        if (cur_len==0)
-        {
-          if (rlen)
-          {
-            *buf=0;
-            return(rlen);
-          }
-          return(-1);
-        }
-        cur_ptr=buffer;
-      }
-      if (cur_len)
-      {
-        if (*cur_ptr=='\n')
-        {
-          *buf=0;
-          cur_ptr++;
-          cur_len--;
-          return(rlen);
-        }
-         else
-         {
-           if ((len>1)&&(*cur_ptr!='\r'))
-           {
-             *buf++=*cur_ptr++;
-             len--;
-           }
-           else
-             cur_ptr++;
-
-           rlen++;
-           cur_len--;
-         }
-      }
-      else
-      {
-        *buf=0;
-        cur_ptr++;
-        cur_len--;
-        return(rlen);
-      }
-    }
-}
-
-
-int SRLerrorout(char *c1,char *c2)
-{
-  printf("\nERROR: %s - '%s'.",c1,c2);
-  return(FALSE);
-}
-
-
-int checksum(char *cp,int count)
-{
-  char *scp;
-  int cksum;
-  int dum;
-
-  scp=cp;
-  while(*scp)
-  {
-    if (!isxdigit(*scp++))
-      return(SRLerrorout("Invalid hex digits",cp));
-  }
-  scp=cp;
-
-  cksum=count;
-
-  while(count)
-  {
-    cksum += gh(scp,2);
-    if (count == 2)
-        dum = ~cksum;
-    scp += 2;
-    count--;
-  }
-  cksum&=0x0ff; 
-  //  printf("\nCk:%02x",cksum);
-  return(cksum==0x0ff);
-}
-
-bit32u gh(char *cp,int nibs)
-{
-  int i;
-  bit32u j;
-
-  j=0;
-
-  for(i=0;i<nibs;i++)
-  {
-    j<<=4;
-    if ((*cp>='a')&&(*cp<='z')) *cp &= 0x5f;
-    if ((*cp>='0')&&(*cp<='9')) 
-      j += (*cp-0x30);
-     else
-      if ((*cp>='A')&&(*cp<='F'))
-        j += (*cp-0x37);
-       else
-        SRLerrorout("Bad Hex char", cp);
-    cp++;
-  }
-  return(j);
-}
-
-
-//=============================================================================
-//       PROCESS SREC LINE
-//=============================================================================
-
-int srecLine(char *pSrecLine)
-{
-    char *scp,ch;
-    int  itmp,count,dat;
-    bit32u adr;
-    static bit32u RecordCounter=0;
-
-    cur_line++;
-    scp=pSrecLine;
-  
-    if (*pSrecLine!='S')
-      return(SRLerrorout("Not an Srecord file",scp));
-    pSrecLine++;
-    if (strlen(pSrecLine)<4)
-      return(SRLerrorout("Srecord too short",scp));
-  
-    ch=*pSrecLine++;
-  
-    count=gh(pSrecLine,2);
-  
-    pSrecLine += 2;
-  
-  //  if(debug)
-  //        printf("count %d, strlen(pSrecLine) = %d, pSrecLine =[%s]\n", count, strlen(pSrecLine), pSrecLine);
-     RecordCounter++;
-     DispHex(RecordCounter);
-  
-    if ((count*2) != strlen(pSrecLine)) return(SRLerrorout("Count field larger than record",scp));
-  
-    if (!checksum(pSrecLine, count)) return(SRLerrorout("Bad Checksum",scp));
-  
-    switch(ch)
-    {
-        case '0': if (count<3) return(SRLerrorout("Invalid Srecord count field",scp));
-                  itmp=gh(pSrecLine,4); pSrecLine+=4; count-=2;
-                  if (itmp) return(SRLerrorout("Srecord 1 address not zero",scp));
-        break;
-        case '1': if (count<3) return(SRLerrorout("Invalid Srecord count field",scp));
-                  return(SRLerrorout("Srecord Not valid for MIPS",scp));
-        break;
-        case '2': if (count<4) return(SRLerrorout("Invalid Srecord count field",scp));
-                  return(SRLerrorout("Srecord Not valid for MIPS",scp));
-        break;
-        case '3': if (count<5) return(SRLerrorout("Invalid Srecord count field",scp));
-                  adr=gh(pSrecLine,8); pSrecLine+=8; count-=4;
-                  count--;
-                  while(count)
-                  {
-                    dat=gh(pSrecLine,2); pSrecLine+=2; count--;
-                    binRecOutByte(adr, (char) (dat & 0xFF));
-                    adr++;
-                  }
-                  s1s2s3_total++;
-        break;
-        case '4': return(SRLerrorout("Invalid Srecord type",scp));
-        break;
-        case '5': if (count<3) return(SRLerrorout("Invalid Srecord count field",scp));
-                  itmp=gh(pSrecLine,4); pSrecLine+=4; count-=2;
-                  if (itmp|=s1s2s3_total) return(SRLerrorout("Incorrect number of S3 Record processed",scp));
-        break;
-        case '6': return(SRLerrorout("Invalid Srecord type",scp));
-        break;
-        case '7': // PROGRAM START
-                  if (count<5) return(SRLerrorout("Invalid Srecord count field",scp));
-                  adr=gh(pSrecLine,8); pSrecLine+=8; count-=4;
-                  if (count!=1) return(SRLerrorout("Invalid Srecord count field",scp));
-                  binRecOutProgramStart(adr);
-        break;
-        case '8': if (count<4) return(SRLerrorout("Invalid Srecord count field",scp));
-                  return(SRLerrorout("Srecord Not valid for MIPS",scp));
-        break;
-        case '9': if (count<3) return(SRLerrorout("Invalid Srecord count field",scp));
-                  return(SRLerrorout("Srecord Not valid for MIPS",scp));
-        break;
-        default:
-        break;
-    }
-    return(TRUE);
-}
- 
-
-//=============================================================================
-//       MAIN LOGIC, READS IN LINE AND OUTPUTS BINARY
-//=============================================================================
-
-int srec2bin(int argc,char *argv[],int verbose)
-{
-    int i,rlen,sts;
-    FILE *fp;
-    char ac;
-    char buff[256];
-    bit32u TAG_BIG     = 0xDEADBE42;
-    bit32u TAG_LITTLE  = 0xFEEDFA42;
-
-    bit32u Tag;
-
-  
-    if(argc < 3)
-    {
-      printf("\nError: <srec2bin <srec input file> <bin output file>\n\n");
-      return(0);
-    }
-  
-    if (argc > 3) BigEndian=TRUE; else BigEndian=FALSE;
-
-    if (BigEndian)
-        Tag = TAG_BIG;
-    else
-        Tag = TAG_LITTLE;
-
-    if (verbose)
-       printf("\nEndian: %s, Tag is 0x%8X\n",(BigEndian)?"BIG":"LITTLE", Tag);
-
-    fp = fopen(argv[1],"rt");
-
-    if (fp==NULL)
-    {
-      printf("\nError: Opening input file, %s.", argv[1]);
-      return(0);
-    }
-  
-    fOut = fopen( argv[2], "wb");
-    
-    if (fOut==NULL)
-    {
-      printf("\nError: Opening Output file, %s.", argv[2]);
-      if(fp) fclose(fp);
-      return(0);
-    }
- 
-    RecStart = FALSE;
-
-    AddressCurrent = 0xFFFFFFFFL;
-
-    // Setup Tag 
-  
-    dumpfTell("Tag", Tag);
-
-    binOut32(Tag);
-
-  
-    inputline=0;
-    sts=TRUE;
-
-    rlen = readline(fp,buff,sizeof buff);
-
-    while( (sts) && (rlen != -1))
-    {
-        if (strlen(buff))
-        {
-            sts &= srecLine(buff);
-            WaitDisplay();
-        }
-       rlen = readline(fp,buff,sizeof buff);
-    }
-
-  
-  //  printf("PC: 0x%08X, Length 0x%08X, Tag 0x%08X\n", ProgramStart, RecLength, TAG_LITTLE);
-  
-    binRecEnd();
-
-    if(fp) fclose(fp);
-    if(fOut) fclose(fOut);
-
-    return(1);
-}
-
-main(int argc, char *argv[])
-{
-    debug = TRUE;
-    debug = FALSE;
-    verbose = FALSE;
-    srec2bin(argc,argv,verbose);
-    return 0;
-}
-

+ 0 - 233
target/wag54g/uclibc.config

@@ -1,233 +0,0 @@
-#
-# Automatically generated make config: don't edit
-# Version: 0.9.30.1
-# Sun Aug 23 20:28:49 2009
-#
-# TARGET_alpha is not set
-# TARGET_arm is not set
-# TARGET_avr32 is not set
-# TARGET_bfin is not set
-# TARGET_cris is not set
-# TARGET_e1 is not set
-# TARGET_frv is not set
-# TARGET_h8300 is not set
-# TARGET_hppa is not set
-# TARGET_i386 is not set
-# TARGET_i960 is not set
-# TARGET_ia64 is not set
-# TARGET_m68k is not set
-# TARGET_microblaze is not set
-TARGET_mips=y
-# TARGET_nios is not set
-# TARGET_nios2 is not set
-# TARGET_powerpc is not set
-# TARGET_sh is not set
-# TARGET_sh64 is not set
-# TARGET_sparc is not set
-# TARGET_v850 is not set
-# TARGET_vax is not set
-# TARGET_x86_64 is not set
-# TARGET_xtensa is not set
-
-#
-# Target Architecture Features and Options
-#
-TARGET_ARCH="mips"
-FORCE_OPTIONS_FOR_ARCH=y
-ARCH_CFLAGS="-mno-split-addresses"
-CONFIG_MIPS_O32_ABI=y
-# CONFIG_MIPS_N32_ABI is not set
-# CONFIG_MIPS_N64_ABI is not set
-# CONFIG_MIPS_ISA_1 is not set
-# CONFIG_MIPS_ISA_2 is not set
-# CONFIG_MIPS_ISA_3 is not set
-# CONFIG_MIPS_ISA_4 is not set
-CONFIG_MIPS_ISA_MIPS32=y
-# CONFIG_MIPS_ISA_MIPS32R2 is not set
-# CONFIG_MIPS_ISA_MIPS64 is not set
-TARGET_SUBARCH=""
-
-#
-# Using ELF file format
-#
-ARCH_ANY_ENDIAN=y
-ARCH_LITTLE_ENDIAN=y
-# ARCH_WANTS_BIG_ENDIAN is not set
-ARCH_WANTS_LITTLE_ENDIAN=y
-ARCH_HAS_MMU=y
-ARCH_USE_MMU=y
-UCLIBC_HAS_FLOATS=y
-UCLIBC_HAS_FPU=y
-DO_C99_MATH=y
-UCLIBC_HAS_FENV=y
-KERNEL_HEADERS="/home/wbx/lemote/toolchain_build_mipsel/libc_dev/usr/include"
-HAVE_DOT_CONFIG=y
-
-#
-# General Library Settings
-#
-# HAVE_NO_PIC is not set
-DOPIC=y
-# ARCH_HAS_NO_SHARED is not set
-# ARCH_HAS_NO_LDSO is not set
-HAVE_SHARED=y
-# FORCE_SHAREABLE_TEXT_SEGMENTS is not set
-LDSO_LDD_SUPPORT=y
-LDSO_CACHE_SUPPORT=y
-# LDSO_PRELOAD_FILE_SUPPORT is not set
-LDSO_BASE_FILENAME="ld.so"
-# UCLIBC_STATIC_LDCONFIG is not set
-LDSO_RUNPATH=y
-UCLIBC_CTOR_DTOR=y
-# LDSO_GNU_HASH_SUPPORT is not set
-# HAS_NO_THREADS is not set
-UCLIBC_HAS_THREADS=y
-# PTHREADS_DEBUG_SUPPORT is not set
-LINUXTHREADS_OLD=y
-UCLIBC_HAS_SYSLOG=y
-UCLIBC_HAS_LFS=y
-# MALLOC is not set
-# MALLOC_SIMPLE is not set
-MALLOC_STANDARD=y
-MALLOC_GLIBC_COMPAT=y
-UCLIBC_DYNAMIC_ATEXIT=y
-COMPAT_ATEXIT=y
-UCLIBC_SUSV3_LEGACY=y
-# UCLIBC_SUSV3_LEGACY_MACROS is not set
-# UCLIBC_HAS_STUBS is not set
-UCLIBC_HAS_SHADOW=y
-UCLIBC_HAS_PROGRAM_INVOCATION_NAME=y
-UCLIBC_HAS___PROGNAME=y
-UCLIBC_HAS_PTY=y
-ASSUME_DEVPTS=y
-UNIX98PTY_ONLY=y
-# UCLIBC_HAS_GETPT is not set
-UCLIBC_HAS_TM_EXTENSIONS=y
-UCLIBC_HAS_TZ_CACHING=y
-UCLIBC_HAS_TZ_FILE=y
-UCLIBC_HAS_TZ_FILE_READ_MANY=y
-UCLIBC_TZ_FILE_PATH="/etc/TZ"
-
-#
-# Advanced Library Settings
-#
-UCLIBC_PWD_BUFFER_SIZE=256
-UCLIBC_GRP_BUFFER_SIZE=256
-
-#
-# Support various families of functions
-#
-# UCLIBC_LINUX_MODULE_24 is not set
-UCLIBC_LINUX_SPECIFIC=y
-UCLIBC_HAS_GNU_ERROR=y
-UCLIBC_BSD_SPECIFIC=y
-UCLIBC_HAS_BSD_ERR=y
-# UCLIBC_HAS_OBSOLETE_BSD_SIGNAL is not set
-# UCLIBC_HAS_OBSOLETE_SYSV_SIGNAL is not set
-# UCLIBC_NTP_LEGACY is not set
-# UCLIBC_SV4_DEPRECATED is not set
-UCLIBC_HAS_REALTIME=y
-UCLIBC_HAS_ADVANCED_REALTIME=y
-UCLIBC_HAS_EPOLL=y
-UCLIBC_HAS_XATTR=y
-# UCLIBC_HAS_PROFILING is not set
-UCLIBC_HAS_CRYPT_IMPL=y
-UCLIBC_HAS_CRYPT=y
-UCLIBC_HAS_NETWORK_SUPPORT=y
-UCLIBC_HAS_SOCKET=y
-UCLIBC_HAS_IPV4=y
-UCLIBC_HAS_IPV6=y
-UCLIBC_HAS_RPC=y
-UCLIBC_HAS_FULL_RPC=y
-UCLIBC_HAS_REENTRANT_RPC=y
-UCLIBC_USE_NETLINK=y
-UCLIBC_SUPPORT_AI_ADDRCONFIG=y
-UCLIBC_HAS_BSD_RES_CLOSE=y
-
-#
-# String and Stdio Support
-#
-UCLIBC_HAS_STRING_GENERIC_OPT=y
-UCLIBC_HAS_STRING_ARCH_OPT=y
-UCLIBC_HAS_CTYPE_TABLES=y
-UCLIBC_HAS_CTYPE_SIGNED=y
-# UCLIBC_HAS_CTYPE_UNSAFE is not set
-UCLIBC_HAS_CTYPE_CHECKED=y
-# UCLIBC_HAS_CTYPE_ENFORCED is not set
-UCLIBC_HAS_WCHAR=y
-# UCLIBC_HAS_LOCALE is not set
-UCLIBC_HAS_HEXADECIMAL_FLOATS=y
-UCLIBC_HAS_GLIBC_CUSTOM_PRINTF=y
-UCLIBC_PRINTF_SCANF_POSITIONAL_ARGS=9
-UCLIBC_HAS_SCANF_GLIBC_A_FLAG=y
-# UCLIBC_HAS_STDIO_BUFSIZ_NONE is not set
-# UCLIBC_HAS_STDIO_BUFSIZ_256 is not set
-# UCLIBC_HAS_STDIO_BUFSIZ_512 is not set
-# UCLIBC_HAS_STDIO_BUFSIZ_1024 is not set
-# UCLIBC_HAS_STDIO_BUFSIZ_2048 is not set
-UCLIBC_HAS_STDIO_BUFSIZ_4096=y
-# UCLIBC_HAS_STDIO_BUFSIZ_8192 is not set
-UCLIBC_HAS_STDIO_BUILTIN_BUFFER_NONE=y
-# UCLIBC_HAS_STDIO_BUILTIN_BUFFER_4 is not set
-# UCLIBC_HAS_STDIO_BUILTIN_BUFFER_8 is not set
-# UCLIBC_HAS_STDIO_SHUTDOWN_ON_ABORT is not set
-UCLIBC_HAS_STDIO_GETC_MACRO=y
-UCLIBC_HAS_STDIO_PUTC_MACRO=y
-UCLIBC_HAS_STDIO_AUTO_RW_TRANSITION=y
-# UCLIBC_HAS_FOPEN_LARGEFILE_MODE is not set
-UCLIBC_HAS_FOPEN_EXCLUSIVE_MODE=y
-UCLIBC_HAS_GLIBC_CUSTOM_STREAMS=y
-UCLIBC_HAS_PRINTF_M_SPEC=y
-UCLIBC_HAS_ERRNO_MESSAGES=y
-# UCLIBC_HAS_SYS_ERRLIST is not set
-UCLIBC_HAS_SIGNUM_MESSAGES=y
-# UCLIBC_HAS_SYS_SIGLIST is not set
-UCLIBC_HAS_GNU_GETOPT=y
-UCLIBC_HAS_GNU_GETSUBOPT=y
-
-#
-# Big and Tall
-#
-UCLIBC_HAS_REGEX=y
-UCLIBC_HAS_REGEX_OLD=y
-UCLIBC_HAS_FNMATCH=y
-UCLIBC_HAS_FNMATCH_OLD=y
-UCLIBC_HAS_WORDEXP=y
-UCLIBC_HAS_FTW=y
-UCLIBC_HAS_GLOB=y
-UCLIBC_HAS_GNU_GLOB=y
-
-#
-# Library Installation Options
-#
-SHARED_LIB_LOADER_PREFIX="/lib"
-RUNTIME_PREFIX="/"
-DEVEL_PREFIX="/usr/"
-
-#
-# Security options
-#
-# UCLIBC_BUILD_PIE is not set
-UCLIBC_HAS_ARC4RANDOM=y
-# HAVE_NO_SSP is not set
-# UCLIBC_HAS_SSP is not set
-UCLIBC_BUILD_RELRO=y
-# UCLIBC_BUILD_NOW is not set
-UCLIBC_BUILD_NOEXECSTACK=y
-
-#
-# uClibc development/debugging options
-#
-CROSS_COMPILER_PREFIX=""
-UCLIBC_EXTRA_CFLAGS=""
-# DODEBUG is not set
-# DODEBUG_PT is not set
-DOSTRIP=y
-# DOASSERTS is not set
-# SUPPORT_LD_DEBUG is not set
-# SUPPORT_LD_DEBUG_EARLY is not set
-# UCLIBC_MALLOC_DEBUGGING is not set
-WARNINGS="-Wall"
-# EXTRA_WARNINGS is not set
-# DOMULTI is not set
-# UCLIBC_MJN3_ONLY is not set