diff options
Diffstat (limited to 'target')
29 files changed, 256 insertions, 5145 deletions
diff --git a/target/arm/Makefile b/target/arm/Makefile index 9ca6969a1..227cc97ca 100644 --- a/target/arm/Makefile +++ b/target/arm/Makefile @@ -129,10 +129,6 @@ ifeq ($(ADK_TARGET_FS),nfsroot) targethelp: @echo 'The kernel file is: $(FW_DIR)/${TARGET_KERNEL}' @echo "The RootFS tarball is: $(FW_DIR)/$(ROOTFSUSERTARBALL)" -ifeq ($(ADK_TARGET_SYSTEM_LINKSYS_NSLU2),y) - @echo "Use following in RedBoot bootloader:" - @echo "RedBoot> ip_address -l <localip> -h <serverip>; load -r -v -b 0x01d00000 ${TARGET_KERNEL}; exec 0x01d00000" -endif endif ifeq ($(ADK_TARGET_FS),squashfs) targethelp: @@ -205,6 +201,9 @@ endif ifeq ($(ADK_TARGET_SYSTEM_PCDUINO_3B),y) VENDOR:=allwinner/ endif +ifeq ($(ADK_TARGET_SYSTEM_LINKSYS_NSLU2),y) +VENDOR:=intel/ixp/ +endif endif dtb-install: @@ -272,6 +271,9 @@ endif ifeq ($(ADK_TARGET_SYSTEM_ST_STM32F746G),y) ${KERNEL_MAKE} $(VENDOR)stm32f746-disco.dtb $(MAKE_TRACE) endif +ifeq ($(ADK_TARGET_SYSTEM_LINKSYS_NSLU2),y) + ${KERNEL_MAKE} $(VENDOR)intel-ixp42x-linksys-nslu2.dtb $(MAKE_TRACE) +endif for x in $(LINUX_DIR)/arch/arm/boot/dts/$(VENDOR)*.dtb; do \ [[ -e "$$x" ]] && cp $(LINUX_DIR)/arch/arm/boot/dts/$(VENDOR)*.dtb $(FW_DIR); \ break; \ @@ -294,7 +296,7 @@ ifeq (${ADK_TARGET_FS},genimage) imageinstall: dtb-install $(FW_DIR)/$(GENIMAGE) targethelp endif ifeq ($(ADK_TARGET_FS),nfsroot) -imageinstall: kernel-install $(FW_DIR)/$(ROOTFSUSERTARBALL) targethelp +imageinstall: kernel-install dtb-install $(FW_DIR)/$(ROOTFSUSERTARBALL) targethelp endif ifeq ($(ADK_TARGET_FS),squashfs) imageinstall: $(BUILD_DIR)/root.squashfs kernel-install dtb-install targethelp diff --git a/target/arm/kernel/linksys-nslu2 b/target/arm/kernel/linksys-nslu2 index a0a941721..39eb3e89f 100644 --- a/target/arm/kernel/linksys-nslu2 +++ b/target/arm/kernel/linksys-nslu2 @@ -1,4 +1,7 @@ CONFIG_ARM=y +CONFIG_ARCH_MULTIPLATFORM=y +CONFIG_ARCH_MULTI_V5=y +CONFIG_ARCH_MULTI_V4_V5=y CONFIG_ARCH_IXDP425=y CONFIG_ARCH_IXDP4XX=y CONFIG_ARCH_IXP4XX=y @@ -7,6 +10,111 @@ CONFIG_ATAGS=y CONFIG_CPU_XSCALE=y CONFIG_IXP4XX_NPE=y CONFIG_IXP4XX_QMGR=y -CONFIG_IXP4XX_WATCHDOG=y CONFIG_MACH_NSLU2=y CONFIG_FPE_NWFPE=y +CONFIG_ARM_APPENDED_DTB=y +CONFIG_ARM_THUMB=y +CONFIG_KUSER_HELPERS=y + +CONFIG_FW_LOADER=y +CONFIG_FW_LOADER_USER_HELPER=y +CONFIG_FW_LOADER_USER_HELPER_FALLBACK=y +CONFIG_REGMAP=y +CONFIG_REGMAP_MMIO=y +CONFIG_INTEL_IXP4XX_EB=y +CONFIG_MTD=y +CONFIG_MTD_OF_PARTS=y +CONFIG_MTD_REDBOOT_PARTS=y +CONFIG_MTD_REDBOOT_DIRECTORY_BLOCK=-1 +CONFIG_MTD_BLKDEVS=y +CONFIG_MTD_BLOCK=y +CONFIG_MTD_CFI=y +CONFIG_MTD_GEN_PROBE=y +CONFIG_MTD_CFI_ADV_OPTIONS=y +CONFIG_MTD_CFI_NOSWAP=y +CONFIG_MTD_MAP_BANK_WIDTH_1=y +CONFIG_MTD_MAP_BANK_WIDTH_2=y +CONFIG_MTD_MAP_BANK_WIDTH_4=y +CONFIG_MTD_CFI_I1=y +CONFIG_MTD_CFI_I2=y +CONFIG_MTD_OTP=y +CONFIG_MTD_CFI_INTELEXT=y +CONFIG_MTD_CFI_AMDSTD=y +CONFIG_MTD_CFI_UTIL=y +CONFIG_MTD_COMPLEX_MAPPINGS=y +CONFIG_MTD_PHYSMAP=y +CONFIG_MTD_PHYSMAP_OF=y +CONFIG_MTD_PHYSMAP_IXP4XX=y +CONFIG_NET_VENDOR_XSCALE=y +CONFIG_IXP4XX_ETH=y +CONFIG_PHYLIB=y +CONFIG_SWPHY=y +CONFIG_PHYLIB_LEDS=y +CONFIG_FIXED_PHY=y +CONFIG_AMD_PHY=y +CONFIG_REALTEK_PHY=y +CONFIG_REALTEK_PHY_HWMON=y +CONFIG_MDIO_DEVICE=y +CONFIG_MDIO_BUS=y +CONFIG_FWNODE_MDIO=y +CONFIG_OF_MDIO=y +CONFIG_MDIO_DEVRES=y +CONFIG_IXP4XX_HSS=y +CONFIG_SERIAL_EARLYCON=y +CONFIG_SERIAL_8250=y +CONFIG_SERIAL_8250_16550A_VARIANTS=y +CONFIG_SERIAL_8250_CONSOLE=y +CONFIG_SERIAL_8250_NR_UARTS=2 +CONFIG_SERIAL_8250_RUNTIME_UARTS=2 +CONFIG_SERIAL_8250_FSL=y +CONFIG_SERIAL_OF_PLATFORM=y +CONFIG_SERIAL_CORE=y +CONFIG_SERIAL_CORE_CONSOLE=y +CONFIG_SERIAL_MCTRL_GPIO=y +CONFIG_HW_RANDOM=y +CONFIG_HW_RANDOM_IXP4XX=y +CONFIG_DEVPORT=y +CONFIG_I2C=y +CONFIG_I2C_BOARDINFO=y +CONFIG_I2C_CHARDEV=y +CONFIG_I2C_ALGOBIT=y +CONFIG_I2C_GPIO=y +CONFIG_I2C_IOP3XX=y +CONFIG_PTP_1588_CLOCK_OPTIONAL=y +CONFIG_GPIOLIB=y +CONFIG_GPIOLIB_FASTPATH_LIMIT=512 +CONFIG_OF_GPIO=y +CONFIG_GPIOLIB_IRQCHIP=y +CONFIG_GPIO_SYSFS=y +CONFIG_GPIO_CDEV=y +CONFIG_GPIO_GENERIC=y +CONFIG_GPIO_IXP4XX=y +CONFIG_GPIO_GW_PLD=y +CONFIG_POWER_RESET=y +CONFIG_POWER_RESET_GPIO=y +CONFIG_HWMON=y +CONFIG_RTC_LIB=y +CONFIG_RTC_MC146818_LIB=y +CONFIG_RTC_CLASS=y +CONFIG_RTC_HCTOSYS=y +CONFIG_RTC_HCTOSYS_DEVICE="rtc0" +CONFIG_RTC_SYSTOHC=y +CONFIG_RTC_SYSTOHC_DEVICE="rtc0" +CONFIG_RTC_INTF_SYSFS=y +CONFIG_RTC_INTF_PROC=y +CONFIG_RTC_INTF_DEV=y +CONFIG_RTC_DRV_X1205=m +CONFIG_RTC_I2C_AND_SPI=y +CONFIG_RTC_DRV_CMOS=y +CONFIG_STAGING=y +CONFIG_HAVE_CLK=y +CONFIG_HAVE_CLK_PREPARE=y +CONFIG_COMMON_CLK=y +CONFIG_TIMER_OF=y +CONFIG_TIMER_PROBE=y +CONFIG_CLKSRC_MMIO=y +CONFIG_IXP4XX_TIMER=y +CONFIG_IXP4XX_QMGR=y +CONFIG_IXP4XX_NPE=y +CONFIG_IRQCHIP=y +CONFIG_IXP4XX_IRQ=y diff --git a/target/arm/systems/linksys-nslu2 b/target/arm/systems/linksys-nslu2 index 72f55eadd..18333a17c 100644 --- a/target/arm/systems/linksys-nslu2 +++ b/target/arm/systems/linksys-nslu2 @@ -4,15 +4,17 @@ config ADK_TARGET_SYSTEM_LINKSYS_NSLU2 select ADK_TARGET_BIG_ENDIAN select ADK_TARGET_CPU_ARM_XSCALE select ADK_TARGET_WITH_USB - select ADK_TARGET_WITH_PCI select ADK_TARGET_WITH_SERIAL select ADK_TARGET_WITH_NET select ADK_TARGET_WITH_NETDEVICE - select ADK_TARGET_WITH_BLOCK select ADK_TARGET_WITH_I2C + select ADK_TARGET_WITH_MTD + select ADK_TARGET_WITH_PCI select ADK_TARGET_KERNEL_ZIMAGE select ADK_TARGET_KERNEL_WITH_COMPRESSION select ADK_PACKAGE_IXP4XX_MICROCODE + select ADK_PACKAGE_APEX + select ADK_HOST_BUILD_UPSLUG2 help Linksys NSLU2 diff --git a/target/config/Config.in.kernelfmt b/target/config/Config.in.kernelfmt index 2704b08ae..d4ea880ca 100644 --- a/target/config/Config.in.kernelfmt +++ b/target/config/Config.in.kernelfmt @@ -113,3 +113,4 @@ config ADK_TARGET_KERNEL_APPEND_DTB string default "armada-xp-synology-ds414" if ADK_TARGET_SYSTEM_SYNOLOGY_DS414 && !ADK_TARGET_KERNEL_VENDORED_DTB default "marvell/armada-xp-synology-ds414" if ADK_TARGET_SYSTEM_SYNOLOGY_DS414 && ADK_TARGET_KERNEL_VENDORED_DTB + default "intel/ixp/intel-ixp42x-linksys-nslu2" if ADK_TARGET_SYSTEM_LINKSYS_NSLU2 && ADK_TARGET_KERNEL_VENDORED_DTB diff --git a/target/config/Config.in.libc b/target/config/Config.in.libc index 2cb1fccec..7f3157976 100644 --- a/target/config/Config.in.libc +++ b/target/config/Config.in.libc @@ -148,8 +148,8 @@ choice prompt "Target C library version" depends on !ADK_TARGET_CHOOSE_ARCH -config ADK_TARGET_LIB_UCLIBC_NG_1_0_51 - bool "1.0.51" +config ADK_TARGET_LIB_UCLIBC_NG_1_0_52 + bool "1.0.52" depends on ADK_TARGET_LIB_UCLIBC_NG config ADK_TARGET_LIB_UCLIBC_NG_GIT @@ -198,7 +198,7 @@ config ADK_TARGET_LIBC config ADK_LIBC_VERSION string - default "1.0.51" if ADK_TARGET_LIB_UCLIBC_NG_1_0_51 + default "1.0.52" if ADK_TARGET_LIB_UCLIBC_NG_1_0_52 default "1.2.5" if ADK_TARGET_LIB_MUSL_1_2_5 default "2.41" if ADK_TARGET_LIB_GLIBC_2_40 default "4.4.0" if ADK_TARGET_LIB_NEWLIB_4_4_0 diff --git a/target/config/Config.in.qemuopts b/target/config/Config.in.qemuopts index 1e38fa7d7..8de8df429 100644 --- a/target/config/Config.in.qemuopts +++ b/target/config/Config.in.qemuopts @@ -28,8 +28,6 @@ config ADK_TARGET_QEMU_WITH_BLOCK menu "Qemu system configuration" depends on ADK_TARGET_QEMU && (ADK_TARGET_SYSTEM_QEMU_X86_64 \ - || ADK_TARGET_SYSTEM_QEMU_RISCV32 \ - || ADK_TARGET_SYSTEM_QEMU_RISCV64 \ || ADK_TARGET_SYSTEM_QEMU_CSKY \ || ADK_TARGET_SYSTEM_QEMU_X86 \ || ADK_TARGET_SYSTEM_QEMU_ARC \ diff --git a/target/config/Config.in.rootfs b/target/config/Config.in.rootfs index 5c658fd02..403a2739f 100644 --- a/target/config/Config.in.rootfs +++ b/target/config/Config.in.rootfs @@ -59,8 +59,8 @@ config ADK_TARGET_ROOTFS_INITRAMFS config ADK_TARGET_ROOTFS_SQUASHFS bool "Compressed read-only root filesystem (squashfs)" - select ADK_KERNEL_SQUASHFS - select ADK_HOST_NEED_SQUASHFS + select ADK_LINUX_KERNEL_SQUASHFS + select ADK_HOST_NEED_SQUASHFS_TOOLS select ADK_HOST_NEED_QEMU if ADK_TARGET_QEMU select ADK_TARGET_QEMU_WITH_BLOCK if ADK_TARGET_QEMU depends on ADK_TARGET_WITH_MTD \ @@ -101,8 +101,7 @@ config ADK_TARGET_ROOTFS_NFSROOT select ADK_LINUX_KERNEL_IP_PNP_DHCP if ADK_TARGET_OS_LINUX depends on !ADK_TARGET_QEMU && \ !ADK_TARGET_SIM && \ - !ADK_TARGET_SYSTEM_ARANYM_M68K && \ - !ADK_TARGET_SYSTEM_LINKSYS_NSLU2 + !ADK_TARGET_SYSTEM_ARANYM_M68K depends on ADK_TARGET_WITH_NETDEVICE help Root filesystem mounted via NFS. (DHCP) diff --git a/target/config/Config.in.runtime b/target/config/Config.in.runtime index 438d4791e..e1a5600f6 100644 --- a/target/config/Config.in.runtime +++ b/target/config/Config.in.runtime @@ -22,10 +22,18 @@ config ADK_RUNTIME_INIT_SYSV depends on ADK_PACKAGE_BUSYBOX && \ !ADK_TARGET_SYSTEM_SIPEED_MAIX_BIT +config ADK_RUNTIME_INIT_TOYBOX + bool "Use toybox init" + select ADK_PACKAGE_TOYBOX + config ADK_RUNTIME_INIT_SIMPLEINIT bool "Use a very simple init" select ADK_PACKAGE_SIMPLEINIT +config ADK_RUNTIME_INIT_MINIINIT + bool "Use a minimal init" + select ADK_PACKAGE_MINIINIT + endchoice choice @@ -421,6 +429,12 @@ config ADK_ROOTSH_HUSH help hush shell from busybox. +config ADK_ROOTSH_TOYSH + bool "toysh (Shell compatible with non-MMU systems)" + select ADK_PACKAGE_TOYBOX if !ADK_APPLIANCE_TOOLCHAIN + help + ToyBox shell. + config ADK_ROOTSH_SASH bool "sash (Shell compatible with non-MMU systems)" select ADK_PACKAGE_SASH if !ADK_APPLIANCE_TOOLCHAIN @@ -480,6 +494,12 @@ config ADK_BINSH_HUSH help hush shell. +config ADK_BINSH_TOYSH + bool "toysh (toybox Shell)" + select ADK_PACKAGE_TOYBOX if !ADK_APPLIANCE_TOOLCHAIN + help + sash shell. + config ADK_BINSH_SASH bool "sash (Standalone Shell)" select ADK_PACKAGE_SASH if !ADK_APPLIANCE_TOOLCHAIN diff --git a/target/config/Config.in.tools b/target/config/Config.in.tools index d60b42a08..0a0a0ef81 100644 --- a/target/config/Config.in.tools +++ b/target/config/Config.in.tools @@ -133,6 +133,10 @@ config ADK_HOST_BUILD_STLINK bool default n +config ADK_HOST_BUILD_UPSLUG2 + bool + default n + config ADK_HOST_BUILD_TAR bool default n @@ -280,13 +284,13 @@ config ADK_HOST_BUILD_OPKG default y if ADK_HOST_NEED_OPKG default n -config ADK_HOST_NEED_SQUASHFS +config ADK_HOST_NEED_SQUASHFS_TOOLS bool default n -config ADK_HOST_BUILD_SQUASHFS +config ADK_HOST_BUILD_SQUASHFS_TOOLS bool - default y if ADK_HOST_NEED_SQUASHFS + default y if ADK_HOST_NEED_SQUASHFS_TOOLS default n config ADK_HOST_NEED_SYSLINUX diff --git a/target/cris/systems/foxboard-lx832 b/target/cris/systems/foxboard-lx832 index 82eaad093..4ef104a95 100644 --- a/target/cris/systems/foxboard-lx832 +++ b/target/cris/systems/foxboard-lx832 @@ -2,6 +2,7 @@ config ADK_TARGET_SYSTEM_FOXBOARD_LX832 bool "Foxboard LX832" select ADK_TARGET_CPU_CRIS_CRISV10 select ADK_TARGET_WITH_MTD + select ADK_TARGET_WITH_NETDEVICE select ADK_TARGET_KERNEL_ZIMAGE select ADK_TARGET_KERNEL_WITH_COMPRESSION help diff --git a/target/frv/uclibc-ng.config b/target/frv/uclibc-ng-nommu.config index 489ab8811..489ab8811 100644 --- a/target/frv/uclibc-ng.config +++ b/target/frv/uclibc-ng-nommu.config diff --git a/target/linux/Config.in.kernelversion b/target/linux/Config.in.kernelversion index 2075aaa6b..83677fc69 100644 --- a/target/linux/Config.in.kernelversion +++ b/target/linux/Config.in.kernelversion @@ -144,7 +144,6 @@ config ADK_TARGET_LINUX_KERNEL_VERSION_4_9 depends on !ADK_TARGET_ARCH_ARC depends on !ADK_TARGET_ARCH_CRIS depends on !ADK_TARGET_ARCH_CSKY - depends on !ADK_TARGET_ARCH_H8300 depends on !ADK_TARGET_ARCH_METAG depends on !ADK_TARGET_ARCH_NDS32 depends on !ADK_TARGET_ARCH_OR1K @@ -266,7 +265,6 @@ config ADK_TARGET_LINUX_KERNEL_GIT_VER config ADK_TARGET_LINUX_KERNEL_GIT_TYPE string depends on ADK_TARGET_LINUX_KERNEL_VERSION_GIT - default "branch" if ADK_TARGET_LINUX_ARCH_LM32 default "branch" if ADK_TARGET_SYSTEM_PHYTEC_WEGA default "hash" diff --git a/target/linux/config/Config.in.bus b/target/linux/config/Config.in.bus index 45c79e1eb..54eddce4a 100644 --- a/target/linux/config/Config.in.bus +++ b/target/linux/config/Config.in.bus @@ -25,3 +25,9 @@ config ADK_LINUX_KERNEL_PCI_IMX6 default y if ADK_TARGET_SYSTEM_SOLIDRUN_IMX6 || \ ADK_TARGET_SYSTEM_PHYTEC_IMX6 default n + +config ADK_LINUX_KERNEL_PCI_IXP4XX + bool + depends on ADK_TARGET_SYSTEM_LINKSYS_NSLU2 + default y if ADK_TARGET_SYSTEM_LINKSYS_NSLU2 + default n diff --git a/target/linux/config/Config.in.flash b/target/linux/config/Config.in.flash index effa41d58..38c5cf7b2 100644 --- a/target/linux/config/Config.in.flash +++ b/target/linux/config/Config.in.flash @@ -91,6 +91,22 @@ config ADK_LINUX_KERNEL_ETRAX_AXISFLASHMAP depends on ADK_TARGET_SYSTEM_FOXBOARD_LX832 default y if ADK_TARGET_SYSTEM_FOXBOARD_LX832 +config ADK_LINUX_KERNEL_MTD_PHYSMAP_IXP4XX + bool "Linksys NSLU2 Flashmap driver" + select ADK_LINUX_KERNEL_BLOCK + select ADK_LINUX_KERNEL_MTD + select ADK_LINUX_KERNEL_MTD_PARTITIONS + select ADK_LINUX_KERNEL_MTD_CHAR + select ADK_LINUX_KERNEL_MTD_BLKDEVS + select ADK_LINUX_KERNEL_MTD_BLOCK + select ADK_LINUX_KERNEL_MTD_ROOTFS_ROOT_DEV + select ADK_LINUX_KERNEL_MTD_CFI + select ADK_LINUX_KERNEL_MTD_CFI_INTELEXT + select ADK_LINUX_KERNEL_MTD_PHYSMAP + select ADK_LINUX_KERNEL_MTD_PHYSMAP_OF + depends on ADK_TARGET_SYSTEM_LINKSYS_NSLU2 + default y if ADK_TARGET_SYSTEM_LINKSYS_NSLU2 + config ADK_LINUX_KERNEL_MTD_M25P80 bool "MTD M25P80 driver" select ADK_LINUX_KERNEL_BLOCK @@ -164,6 +180,7 @@ config ADK_TARGET_MTD_SIZE depends on ADK_TARGET_SYSTEM_QEMU_MICROBLAZE_S3ADSP1800 \ || ADK_TARGET_SYSTEM_QEMU_MICROBLAZE_ML605 \ || ADK_TARGET_SYSTEM_QEMU_ARM_VEXPRESS_A9 \ + || ADK_TARGET_SYSTEM_LINKSYS_NSLU2 \ || ADK_TARGET_SYSTEM_MIKROTIK_RB532 default "16777216" if ADK_TARGET_SYSTEM_QEMU_MICROBLAZE_S3ADSP1800 default "33554432" if ADK_TARGET_SYSTEM_QEMU_MICROBLAZE_ML605 diff --git a/target/linux/config/Config.in.fs b/target/linux/config/Config.in.fs index 1bed25ee6..ee4a0204e 100644 --- a/target/linux/config/Config.in.fs +++ b/target/linux/config/Config.in.fs @@ -43,9 +43,6 @@ config ADK_LINUX_KERNEL_FAT_DEFAULT_IOCHARSET string default "iso8859-1" -config ADK_LINUX_KERNEL_SQUASHFS_XZ - bool - config ADK_LINUX_KERNEL_JFFS2_COMPRESSION_OPTIONS bool @@ -253,7 +250,6 @@ config ADK_LINUX_KERNEL_JFFS2_FS config ADK_LINUX_KERNEL_SQUASHFS tristate "SquashFS filesystem" select ADK_LINUX_KERNEL_MISC_FILESYSTEMS - select ADK_LINUX_KERNEL_SQUASHFS_XZ help Squashfs compressed read-only filesystem diff --git a/target/linux/config/Config.in.usb b/target/linux/config/Config.in.usb index 157c2f222..e6e3351f6 100644 --- a/target/linux/config/Config.in.usb +++ b/target/linux/config/Config.in.usb @@ -78,6 +78,7 @@ config ADK_LINUX_KERNEL_USB select ADK_LINUX_KERNEL_NLS select ADK_LINUX_KERNEL_USB_SUPPORT select ADK_LINUX_KERNEL_USB_ANNOUNCE_NEW_DEVICES + select ADK_LINUX_KERNEL_USB_PCI if ADK_TARGET_SYSTEM_LINKSYS_NSLU2 default m if ADK_TARGET_SYSTEM_PCENGINES_APU default m if ADK_TARGET_SYSTEM_PCENGINES_ALIX default m if ADK_TARGET_SYSTEM_LEMOTE_YEELONG @@ -88,6 +89,7 @@ config ADK_LINUX_KERNEL_USB default y if ADK_TARGET_SYSTEM_SOLIDRUN_CLEARFOG default y if ADK_TARGET_SYSTEM_ROCKPI4_PLUS default y if ADK_TARGET_SYSTEM_RASPBERRY_PI5 + default y if ADK_TARGET_SYSTEM_LINKSYS_NSLU2 default n help Universal Serial Bus (USB) is a specification for a serial bus @@ -159,6 +161,7 @@ config ADK_LINUX_KERNEL_USB_EHCI_HCD default y if ADK_TARGET_SYSTEM_SOLIDRUN_CLEARFOG default y if ADK_TARGET_SYSTEM_ROCKPI4_PLUS default y if ADK_TARGET_SYSTEM_RASPBERRY_PI5 + default y if ADK_TARGET_SYSTEM_LINKSYS_NSLU2 default n help The Enhanced Host Controller Interface (EHCI) is standard for USB 2.0 @@ -205,11 +208,13 @@ config ADK_LINUX_KERNEL_USB_OHCI_HCD select ADK_LINUX_KERNEL_USB_OHCI_HCD_PCI if ADK_TARGET_SYSTEM_PCENGINES_ALIX select ADK_LINUX_KERNEL_USB_OHCI_HCD_PCI if ADK_TARGET_SYSTEM_PCENGINES_APU select ADK_LINUX_KERNEL_USB_OHCI_HCD_PCI if ADK_TARGET_SYSTEM_ROCKPI4_PLUS + select ADK_LINUX_KERNEL_USB_OHCI_HCD_PCI if ADK_TARGET_SYSTEM_LINKSYS_NSLU2 default m if ADK_TARGET_SYSTEM_PCENGINES_APU default m if ADK_TARGET_SYSTEM_PCENGINES_ALIX default m if ADK_TARGET_SYSTEM_ACMESYSTEMS_FOXG20 default m if ADK_TARGET_SYSTEM_LEMOTE_YEELONG default y if ADK_TARGET_SYSTEM_ROCKPI4_PLUS + default y if ADK_TARGET_SYSTEM_LINKSYS_NSLU2 default n help The Open Host Controller Interface (OHCI) is a standard for accessing diff --git a/target/linux/config/Config.in.watchdog b/target/linux/config/Config.in.watchdog index 59c60d94f..eaa07a65d 100644 --- a/target/linux/config/Config.in.watchdog +++ b/target/linux/config/Config.in.watchdog @@ -35,6 +35,15 @@ config ADK_LINUX_KERNEL_IMX2_WDT help Watchdog driver for IMX6 boards. +config ADK_LINUX_KERNEL_IXP4XX_WATCHDOG + bool "Hardware Watchdog for Linksys NSLU2" + select ADK_LINUX_KERNEL_WATCHDOG + depends on ADK_TARGET_SYSTEM_LINKSYS_NSLU2 + default y if ADK_TARGET_SYSTEM_LINKSYS_NSLU2 + default n + help + Watchdog driver for Linksys NSLU2. + config ADK_LINUX_KERNEL_SCx200_WDT bool "Natsemi Hardware Watchdog" depends on ADK_TARGET_SYSTEM_PCENGINES_WRAP diff --git a/target/linux/patches/2.6.32.70/proc-xscale.patch b/target/linux/patches/2.6.32.70/proc-xscale.patch new file mode 100644 index 000000000..a8546bba9 --- /dev/null +++ b/target/linux/patches/2.6.32.70/proc-xscale.patch @@ -0,0 +1,12 @@ +diff -Nur linux-2.6.32.70.orig/arch/arm/mm/proc-xscale.S linux-2.6.32.70/arch/arm/mm/proc-xscale.S +--- linux-2.6.32.70.orig/arch/arm/mm/proc-xscale.S 2016-01-29 22:13:00.000000000 +0100 ++++ linux-2.6.32.70/arch/arm/mm/proc-xscale.S 2025-04-06 10:56:31.793163221 +0200 +@@ -605,7 +605,7 @@ + + .align + +- .section ".proc.info.init", #alloc, #execinstr ++ .section ".proc.info.init", "ax" + + .type __80200_A0_A1_proc_info,#object + __80200_A0_A1_proc_info: diff --git a/target/linux/patches/2.6.32.70/uaccess.patch b/target/linux/patches/2.6.32.70/uaccess.patch new file mode 100644 index 000000000..428a06b69 --- /dev/null +++ b/target/linux/patches/2.6.32.70/uaccess.patch @@ -0,0 +1,14 @@ +https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85745 + +diff -Nur linux-2.6.32.70.orig/arch/arm/include/asm/uaccess.h linux-2.6.32.70/arch/arm/include/asm/uaccess.h +--- linux-2.6.32.70.orig/arch/arm/include/asm/uaccess.h 2016-01-29 22:13:00.000000000 +0100 ++++ linux-2.6.32.70/arch/arm/include/asm/uaccess.h 2025-04-06 10:41:37.342042671 +0200 +@@ -145,7 +145,7 @@ + + #define put_user(x,p) \ + ({ \ +- register const typeof(*(p)) __r2 asm("r2") = (x); \ ++ register typeof(*(p)) __r2 asm("r2") = (x); \ + register const typeof(*(p)) __user *__p asm("r0") = (p);\ + register int __e asm("r0"); \ + switch (sizeof(*(__p))) { \ diff --git a/target/linux/patches/3.16.85/bsd-compatibility.patch b/target/linux/patches/3.16.85/bsd-compatibility.patch deleted file mode 100644 index b954b658f..000000000 --- a/target/linux/patches/3.16.85/bsd-compatibility.patch +++ /dev/null @@ -1,2538 +0,0 @@ -diff -Nur linux-3.11.5.orig/scripts/Makefile.lib linux-3.11.5/scripts/Makefile.lib ---- linux-3.11.5.orig/scripts/Makefile.lib 2013-10-14 03:14:45.000000000 +0200 -+++ linux-3.11.5/scripts/Makefile.lib 2013-10-16 18:09:31.000000000 +0200 -@@ -281,7 +281,12 @@ - size_append = printf $(shell \ - dec_size=0; \ - for F in $1; do \ -- fsize=$$(stat -c "%s" $$F); \ -+ if stat -qs .>/dev/null 2>&1; then \ -+ statcmd='stat -f %z'; \ -+ else \ -+ statcmd='stat -c %s'; \ -+ fi; \ -+ fsize=$$($$statcmd $$F); \ - dec_size=$$(expr $$dec_size + $$fsize); \ - done; \ - printf "%08x\n" $$dec_size | \ -diff -Nur linux-3.11.5.orig/scripts/mod/mk_elfconfig.c linux-3.11.5/scripts/mod/mk_elfconfig.c ---- linux-3.11.5.orig/scripts/mod/mk_elfconfig.c 2013-10-14 03:14:45.000000000 +0200 -+++ linux-3.11.5/scripts/mod/mk_elfconfig.c 2013-10-16 18:09:31.000000000 +0200 -@@ -1,7 +1,18 @@ - #include <stdio.h> - #include <stdlib.h> - #include <string.h> --#include <elf.h> -+ -+#define EI_NIDENT (16) -+#define ELFMAG "\177ELF" -+ -+#define SELFMAG 4 -+#define EI_CLASS 4 -+#define ELFCLASS32 1 /* 32-bit objects */ -+#define ELFCLASS64 2 /* 64-bit objects */ -+ -+#define EI_DATA 5 /* Data encoding byte index */ -+#define ELFDATA2LSB 1 /* 2's complement, little endian */ -+#define ELFDATA2MSB 2 /* 2's complement, big endian */ - - int - main(int argc, char **argv) -diff -Nur linux-3.11.5.orig/scripts/mod/modpost.h linux-3.11.5/scripts/mod/modpost.h ---- linux-3.11.5.orig/scripts/mod/modpost.h 2013-10-14 03:14:45.000000000 +0200 -+++ linux-3.11.5/scripts/mod/modpost.h 2013-10-16 18:09:31.000000000 +0200 -@@ -7,7 +7,2453 @@ - #include <sys/mman.h> - #include <fcntl.h> - #include <unistd.h> --#include <elf.h> -+ -+ -+/* This file defines standard ELF types, structures, and macros. -+ Copyright (C) 1995-1999,2000,2001,2002,2003 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library 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 -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, write to the Free -+ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA -+ 02111-1307 USA. */ -+ -+#ifndef _ELF_H -+#define _ELF_H 1 -+ -+__BEGIN_DECLS -+ -+/* Standard ELF types. */ -+ -+#include <stdint.h> -+ -+/* Type for a 16-bit quantity. */ -+typedef uint16_t Elf32_Half; -+typedef uint16_t Elf64_Half; -+ -+/* Types for signed and unsigned 32-bit quantities. */ -+typedef uint32_t Elf32_Word; -+typedef int32_t Elf32_Sword; -+typedef uint32_t Elf64_Word; -+typedef int32_t Elf64_Sword; -+ -+/* Types for signed and unsigned 64-bit quantities. */ -+typedef uint64_t Elf32_Xword; -+typedef int64_t Elf32_Sxword; -+typedef uint64_t Elf64_Xword; -+typedef int64_t Elf64_Sxword; -+ -+/* Type of addresses. */ -+typedef uint32_t Elf32_Addr; -+typedef uint64_t Elf64_Addr; -+ -+/* Type of file offsets. */ -+typedef uint32_t Elf32_Off; -+typedef uint64_t Elf64_Off; -+ -+/* Type for section indices, which are 16-bit quantities. */ -+typedef uint16_t Elf32_Section; -+typedef uint16_t Elf64_Section; -+ -+/* Type for version symbol information. */ -+typedef Elf32_Half Elf32_Versym; -+typedef Elf64_Half Elf64_Versym; -+ -+ -+/* The ELF file header. This appears at the start of every ELF file. */ -+ -+#define EI_NIDENT (16) -+ -+typedef struct -+{ -+ unsigned char e_ident[EI_NIDENT]; /* Magic number and other info */ -+ Elf32_Half e_type; /* Object file type */ -+ Elf32_Half e_machine; /* Architecture */ -+ Elf32_Word e_version; /* Object file version */ -+ Elf32_Addr e_entry; /* Entry point virtual address */ -+ Elf32_Off e_phoff; /* Program header table file offset */ -+ Elf32_Off e_shoff; /* Section header table file offset */ -+ Elf32_Word e_flags; /* Processor-specific flags */ -+ Elf32_Half e_ehsize; /* ELF header size in bytes */ -+ Elf32_Half e_phentsize; /* Program header table entry size */ -+ Elf32_Half e_phnum; /* Program header table entry count */ -+ Elf32_Half e_shentsize; /* Section header table entry size */ -+ Elf32_Half e_shnum; /* Section header table entry count */ -+ Elf32_Half e_shstrndx; /* Section header string table index */ -+} Elf32_Ehdr; -+ -+typedef struct -+{ -+ unsigned char e_ident[EI_NIDENT]; /* Magic number and other info */ -+ Elf64_Half e_type; /* Object file type */ -+ Elf64_Half e_machine; /* Architecture */ -+ Elf64_Word e_version; /* Object file version */ -+ Elf64_Addr e_entry; /* Entry point virtual address */ -+ Elf64_Off e_phoff; /* Program header table file offset */ -+ Elf64_Off e_shoff; /* Section header table file offset */ -+ Elf64_Word e_flags; /* Processor-specific flags */ -+ Elf64_Half e_ehsize; /* ELF header size in bytes */ -+ Elf64_Half e_phentsize; /* Program header table entry size */ -+ Elf64_Half e_phnum; /* Program header table entry count */ -+ Elf64_Half e_shentsize; /* Section header table entry size */ -+ Elf64_Half e_shnum; /* Section header table entry count */ -+ Elf64_Half e_shstrndx; /* Section header string table index */ -+} Elf64_Ehdr; -+ -+/* Fields in the e_ident array. The EI_* macros are indices into the -+ array. The macros under each EI_* macro are the values the byte -+ may have. */ -+ -+#define EI_MAG0 0 /* File identification byte 0 index */ -+#define ELFMAG0 0x7f /* Magic number byte 0 */ -+ -+#define EI_MAG1 1 /* File identification byte 1 index */ -+#define ELFMAG1 'E' /* Magic number byte 1 */ -+ -+#define EI_MAG2 2 /* File identification byte 2 index */ -+#define ELFMAG2 'L' /* Magic number byte 2 */ -+ -+#define EI_MAG3 3 /* File identification byte 3 index */ -+#define ELFMAG3 'F' /* Magic number byte 3 */ -+ -+/* Conglomeration of the identification bytes, for easy testing as a word. */ -+#define ELFMAG "\177ELF" -+#define SELFMAG 4 -+ -+#define EI_CLASS 4 /* File class byte index */ -+#define ELFCLASSNONE 0 /* Invalid class */ -+#define ELFCLASS32 1 /* 32-bit objects */ -+#define ELFCLASS64 2 /* 64-bit objects */ -+#define ELFCLASSNUM 3 -+ -+#define EI_DATA 5 /* Data encoding byte index */ -+#define ELFDATANONE 0 /* Invalid data encoding */ -+#define ELFDATA2LSB 1 /* 2's complement, little endian */ -+#define ELFDATA2MSB 2 /* 2's complement, big endian */ -+#define ELFDATANUM 3 -+ -+#define EI_VERSION 6 /* File version byte index */ -+ /* Value must be EV_CURRENT */ -+ -+#define EI_OSABI 7 /* OS ABI identification */ -+#define ELFOSABI_NONE 0 /* UNIX System V ABI */ -+#define ELFOSABI_SYSV 0 /* Alias. */ -+#define ELFOSABI_HPUX 1 /* HP-UX */ -+#define ELFOSABI_NETBSD 2 /* NetBSD. */ -+#define ELFOSABI_LINUX 3 /* Linux. */ -+#define ELFOSABI_SOLARIS 6 /* Sun Solaris. */ -+#define ELFOSABI_AIX 7 /* IBM AIX. */ -+#define ELFOSABI_IRIX 8 /* SGI Irix. */ -+#define ELFOSABI_FREEBSD 9 /* FreeBSD. */ -+#define ELFOSABI_TRU64 10 /* Compaq TRU64 UNIX. */ -+#define ELFOSABI_MODESTO 11 /* Novell Modesto. */ -+#define ELFOSABI_OPENBSD 12 /* OpenBSD. */ -+#define ELFOSABI_ARM 97 /* ARM */ -+#define ELFOSABI_STANDALONE 255 /* Standalone (embedded) application */ -+ -+#define EI_ABIVERSION 8 /* ABI version */ -+ -+#define EI_PAD 9 /* Byte index of padding bytes */ -+ -+/* Legal values for e_type (object file type). */ -+ -+#define ET_NONE 0 /* No file type */ -+#define ET_REL 1 /* Relocatable file */ -+#define ET_EXEC 2 /* Executable file */ -+#define ET_DYN 3 /* Shared object file */ -+#define ET_CORE 4 /* Core file */ -+#define ET_NUM 5 /* Number of defined types */ -+#define ET_LOOS 0xfe00 /* OS-specific range start */ -+#define ET_HIOS 0xfeff /* OS-specific range end */ -+#define ET_LOPROC 0xff00 /* Processor-specific range start */ -+#define ET_HIPROC 0xffff /* Processor-specific range end */ -+ -+/* Legal values for e_machine (architecture). */ -+ -+#define EM_NONE 0 /* No machine |