The Gemini works fine with kernel v6.6. As per the example for ipq806x, drop support for anything older than v6.6, there is no point in supporting it, and the new DTS SoC directory just makes it hard to maintain.
Signed-off-by: Linus Walleij <linus.wall...@linaro.org> --- ChangeLog v1->v2: - Update all patches for quilt. - Take another round over the config - Pick up patch renaming some restart GPIO keys from upstream. --- target/linux/gemini/Makefile | 2 +- .../linux/gemini/{config-6.1 => config-6.6} | 47 +- target/linux/gemini/image/Makefile | 1 + ...pio-vbus-usb-Add-device-tree-probing.patch | 67 - ...llect-pieces-of-dual-mode-controller.patch | 15990 ---------------- ...-usb-fotg210-Compile-into-one-module.patch | 332 - ...usb-fotg210-Select-subdriver-by-mode.patch | 68 - ...b-fotg2-add-Gemini-specific-handling.patch | 135 - ...210-Fix-Kconfig-for-USB-host-modules.patch | 51 - ...FOTG210-should-depend-on-ARCH_GEMINI.patch | 26 - ...dev-pointer-in-probe-and-dev_message.patch | 61 - ...10-udc-Support-optional-external-PHY.patch | 158 - .../0010-fotg210-udc-Handle-PCLK.patch | 90 - ...0-udc-Get-IRQ-using-platform_get_irq.patch | 69 - ...g210-udc-Remove-a-useless-assignment.patch | 39 - ...fix-potential-memory-leak-in-fotg210.patch | 58 - .../0014-usb-fotg210-fix-OTG-only-build.patch | 39 - ...fix-error-return-code-in-fotg210_udc.patch | 28 - ...-usb-fotg210-List-different-variants.patch | 25 - ...g210-Acquire-memory-resource-in-core.patch | 245 - ...-fotg210-Move-clock-handling-to-core.patch | 196 - ...-fotg210-Check-role-register-in-core.patch | 54 - ...dc-Assign-of_node-and-speed-on-start.patch | 34 - ...b-fotg210-udc-Implement-VBUS-session.patch | 96 - ...oduce-and-use-a-fotg210_ack_int-func.patch | 134 - ...10-udc-Improve-device-initialization.patch | 62 - ...use-sysfs_emit-to-instead-of-scnprin.patch | 32 - ...i-Push-down-flash-address-size-cells.patch | 62 - ...ni-wbd111-Use-RedBoot-partion-parser.patch | 54 - ...ni-wbd222-Use-RedBoot-partion-parser.patch | 54 - ...ARM-dts-gemini-Fix-USB-block-version.patch | 31 - ...mini-Enable-DNS313-FOTG210-as-periph.patch | 54 - ...et-ethernet-cortina-Drop-TSO-support.patch | 78 + ...gemini-Map-reset-keys-to-KEY_RESTART.patch | 103 + ...-DIR-685-partition-table-for-OpenWrt.patch | 11 +- 35 files changed, 222 insertions(+), 18364 deletions(-) rename target/linux/gemini/{config-6.1 => config-6.6} (92%) delete mode 100644 target/linux/gemini/patches-6.1/0001-usb-phy-phy-gpio-vbus-usb-Add-device-tree-probing.patch delete mode 100644 target/linux/gemini/patches-6.1/0002-usb-fotg210-Collect-pieces-of-dual-mode-controller.patch delete mode 100644 target/linux/gemini/patches-6.1/0003-usb-fotg210-Compile-into-one-module.patch delete mode 100644 target/linux/gemini/patches-6.1/0004-usb-fotg210-Select-subdriver-by-mode.patch delete mode 100644 target/linux/gemini/patches-6.1/0005-usb-fotg2-add-Gemini-specific-handling.patch delete mode 100644 target/linux/gemini/patches-6.1/0006-usb-fotg210-Fix-Kconfig-for-USB-host-modules.patch delete mode 100644 target/linux/gemini/patches-6.1/0007-usb-USB_FOTG210-should-depend-on-ARCH_GEMINI.patch delete mode 100644 target/linux/gemini/patches-6.1/0008-fotg210-udc-Use-dev-pointer-in-probe-and-dev_message.patch delete mode 100644 target/linux/gemini/patches-6.1/0009-fotg210-udc-Support-optional-external-PHY.patch delete mode 100644 target/linux/gemini/patches-6.1/0010-fotg210-udc-Handle-PCLK.patch delete mode 100644 target/linux/gemini/patches-6.1/0011-fotg210-udc-Get-IRQ-using-platform_get_irq.patch delete mode 100644 target/linux/gemini/patches-6.1/0012-usb-fotg210-udc-Remove-a-useless-assignment.patch delete mode 100644 target/linux/gemini/patches-6.1/0013-usb-fotg210-udc-fix-potential-memory-leak-in-fotg210.patch delete mode 100644 target/linux/gemini/patches-6.1/0014-usb-fotg210-fix-OTG-only-build.patch delete mode 100644 target/linux/gemini/patches-6.1/0015-usb-fotg210-udc-fix-error-return-code-in-fotg210_udc.patch delete mode 100644 target/linux/gemini/patches-6.1/0016-usb-fotg210-List-different-variants.patch delete mode 100644 target/linux/gemini/patches-6.1/0017-usb-fotg210-Acquire-memory-resource-in-core.patch delete mode 100644 target/linux/gemini/patches-6.1/0018-usb-fotg210-Move-clock-handling-to-core.patch delete mode 100644 target/linux/gemini/patches-6.1/0019-usb-fotg210-Check-role-register-in-core.patch delete mode 100644 target/linux/gemini/patches-6.1/0020-usb-fotg210-udc-Assign-of_node-and-speed-on-start.patch delete mode 100644 target/linux/gemini/patches-6.1/0021-usb-fotg210-udc-Implement-VBUS-session.patch delete mode 100644 target/linux/gemini/patches-6.1/0022-fotg210-udc-Introduce-and-use-a-fotg210_ack_int-func.patch delete mode 100644 target/linux/gemini/patches-6.1/0023-fotg210-udc-Improve-device-initialization.patch delete mode 100644 target/linux/gemini/patches-6.1/0024-usb-fotg210-hcd-use-sysfs_emit-to-instead-of-scnprin.patch delete mode 100644 target/linux/gemini/patches-6.1/0025-ARM-dts-gemini-Push-down-flash-address-size-cells.patch delete mode 100644 target/linux/gemini/patches-6.1/0026-ARM-dts-gemini-wbd111-Use-RedBoot-partion-parser.patch delete mode 100644 target/linux/gemini/patches-6.1/0027-ARM-dts-gemini-wbd222-Use-RedBoot-partion-parser.patch delete mode 100644 target/linux/gemini/patches-6.1/0028-ARM-dts-gemini-Fix-USB-block-version.patch delete mode 100644 target/linux/gemini/patches-6.1/0029-ARM-dts-gemini-Enable-DNS313-FOTG210-as-periph.patch create mode 100644 target/linux/gemini/patches-6.6/0001-net-ethernet-cortina-Drop-TSO-support.patch create mode 100644 target/linux/gemini/patches-6.6/0002-ARM-dts-gemini-Map-reset-keys-to-KEY_RESTART.patch rename target/linux/gemini/{patches-6.1 => patches-6.6}/300-ARM-dts-Augment-DIR-685-partition-table-for-OpenWrt.patch (70%) diff --git a/target/linux/gemini/Makefile b/target/linux/gemini/Makefile index b7f1962c9a59..b2869ff72edf 100644 --- a/target/linux/gemini/Makefile +++ b/target/linux/gemini/Makefile @@ -11,7 +11,7 @@ FEATURES:=squashfs pci rtc usb dt gpio display ext4 rootfs-part boot-part CPU_TYPE:=fa526 SUBTARGETS:=generic -KERNEL_PATCHVER:=6.1 +KERNEL_PATCHVER:=6.6 define Target/Description Build firmware images for the StorLink/Cortina Gemini CS351x ARM FA526 CPU diff --git a/target/linux/gemini/config-6.1 b/target/linux/gemini/config-6.6 similarity index 92% rename from target/linux/gemini/config-6.1 rename to target/linux/gemini/config-6.6 index ae0922f5dc86..d670279135f9 100644 --- a/target/linux/gemini/config-6.1 +++ b/target/linux/gemini/config-6.6 @@ -10,10 +10,10 @@ CONFIG_ARCH_MULTI_V4=y # CONFIG_ARCH_MULTI_V4T is not set CONFIG_ARCH_MULTI_V4_V5=y # CONFIG_ARCH_MULTI_V5 is not set -CONFIG_ARCH_NR_GPIO=0 CONFIG_ARCH_OPTIONAL_KERNEL_RWX=y CONFIG_ARCH_SELECT_MEMORY_MODEL=y CONFIG_ARCH_SPARSEMEM_ENABLE=y +CONFIG_ARCH_STACKWALK=y CONFIG_ARM=y CONFIG_ARM_AMBA=y CONFIG_ARM_APPENDED_DTB=y @@ -21,7 +21,6 @@ CONFIG_ARM_APPENDED_DTB=y CONFIG_ARM_HAS_GROUP_RELOCS=y CONFIG_ARM_L1_CACHE_SHIFT=5 CONFIG_ARM_PATCH_PHYS_VIRT=y -# CONFIG_ARM_SMMU is not set CONFIG_ARM_UNWIND=y CONFIG_ATA=y CONFIG_ATAGS=y @@ -33,6 +32,8 @@ CONFIG_BLK_DEV_SD=y CONFIG_BLK_MQ_PCI=y CONFIG_BLK_PM=y CONFIG_BOUNCE=y +CONFIG_BUFFER_HEAD=y +CONFIG_CACHESTAT_SYSCALL=y CONFIG_CC_HAVE_STACKPROTECTOR_TLS=y CONFIG_CC_IMPLICIT_FALLTHROUGH="-Wimplicit-fallthrough=5" CONFIG_CC_NO_ARRAY_BOUNDS=y @@ -84,6 +85,7 @@ CONFIG_CROSS_MEMORY_ATTACH=y CONFIG_CRYPTO_CMAC=y CONFIG_CRYPTO_CRC32C=y CONFIG_CRYPTO_DES=y +# CONFIG_CRYPTO_DEV_JH7110 is not set CONFIG_CRYPTO_DEV_SL3516=y # CONFIG_CRYPTO_DEV_SL3516_DEBUG is not set CONFIG_CRYPTO_DRBG=y @@ -92,14 +94,18 @@ CONFIG_CRYPTO_DRBG_MENU=y CONFIG_CRYPTO_ECB=y CONFIG_CRYPTO_ECHAINIV=y CONFIG_CRYPTO_ENGINE=y +CONFIG_CRYPTO_GENIV=y CONFIG_CRYPTO_HMAC=y CONFIG_CRYPTO_HW=y CONFIG_CRYPTO_JITTERENTROPY=y CONFIG_CRYPTO_LIB_BLAKE2S_GENERIC=y CONFIG_CRYPTO_LIB_DES=y +CONFIG_CRYPTO_LIB_GF128MUL=y CONFIG_CRYPTO_LIB_SHA1=y CONFIG_CRYPTO_LIB_SHA256=y CONFIG_CRYPTO_LIB_UTILS=y +# CONFIG_CRYPTO_MANAGER_DISABLE_TESTS is not set +# CONFIG_CRYPTO_MANAGER_EXTRA_TESTS is not set CONFIG_CRYPTO_MD4=y CONFIG_CRYPTO_MD5=y CONFIG_CRYPTO_RNG=y @@ -107,7 +113,10 @@ CONFIG_CRYPTO_RNG2=y CONFIG_CRYPTO_RNG_DEFAULT=y CONFIG_CRYPTO_SEQIV=y CONFIG_CRYPTO_SHA256=y +CONFIG_CRYPTO_SHA3=y CONFIG_CRYPTO_SHA512=y +CONFIG_CRYPTO_SIG2=y +CONFIG_CRYPTO_USER=y CONFIG_DEBUG_BUGVERBOSE=y CONFIG_DEBUG_INFO=y CONFIG_DEBUG_LL_INCLUDE="mach/debug-macro.S" @@ -133,7 +142,6 @@ CONFIG_DRM_FBDEV_EMULATION=y CONFIG_DRM_FBDEV_OVERALLOC=100 CONFIG_DRM_GEM_DMA_HELPER=y CONFIG_DRM_KMS_HELPER=y -CONFIG_DRM_NOMODESET=y CONFIG_DRM_PANEL=y CONFIG_DRM_PANEL_BRIDGE=y CONFIG_DRM_PANEL_ILITEK_IL9322=y @@ -145,18 +153,17 @@ CONFIG_EDAC_ATOMIC_SCRUB=y CONFIG_EDAC_SUPPORT=y CONFIG_EEPROM_93CX6=y CONFIG_ELF_CORE=y -# CONFIG_EMBEDDED is not set CONFIG_EXCLUSIVE_SYSTEM_RAM=y # CONFIG_EXPERT is not set CONFIG_EXT4_FS=y CONFIG_EXTCON=y CONFIG_FARADAY_FTINTC010=y CONFIG_FB=y -CONFIG_FB_CFB_COPYAREA=y -CONFIG_FB_CFB_FILLRECT=y -CONFIG_FB_CFB_IMAGEBLIT=y -CONFIG_FB_CMDLINE=y +CONFIG_FB_CORE=y CONFIG_FB_DEFERRED_IO=y +CONFIG_FB_DMAMEM_HELPERS=y +CONFIG_FB_SYSMEM_HELPERS=y +CONFIG_FB_SYSMEM_HELPERS_DEFERRED=y CONFIG_FB_SYS_COPYAREA=y CONFIG_FB_SYS_FILLRECT=y CONFIG_FB_SYS_FOPS=y @@ -175,11 +182,13 @@ CONFIG_FS_MBCACHE=y CONFIG_FS_POSIX_ACL=y CONFIG_FTTMR010_TIMER=y CONFIG_FTWDT010_WATCHDOG=y +CONFIG_FUNCTION_ALIGNMENT=0 CONFIG_FWNODE_MDIO=y CONFIG_FW_LOADER_PAGED_BUF=y CONFIG_FW_LOADER_SYSFS=y # CONFIG_FW_LOADER_USER_HELPER_FALLBACK is not set -CONFIG_GCC11_NO_ARRAY_BOUNDS=y +CONFIG_GCC10_NO_ARRAY_BOUNDS=y +CONFIG_GCC_ASM_GOTO_OUTPUT_WORKAROUND=y CONFIG_GEMINI_ETHERNET=y CONFIG_GENERIC_ALLOCATOR=y CONFIG_GENERIC_ATOMIC64=y @@ -207,6 +216,7 @@ CONFIG_GRO_CELLS=y CONFIG_HARDIRQS_SW_RESEND=y CONFIG_HAS_DMA=y CONFIG_HAS_IOMEM=y +CONFIG_HAS_IOPORT=y CONFIG_HAS_IOPORT_MAP=y CONFIG_HDMI=y CONFIG_HIGHMEM=y @@ -224,10 +234,6 @@ CONFIG_I2C_HELPER_AUTO=y CONFIG_INITRAMFS_SOURCE="" CONFIG_INPUT=y CONFIG_INPUT_KEYBOARD=y -# CONFIG_IOMMU_DEBUGFS is not set -# CONFIG_IOMMU_IO_PGTABLE_ARMV7S is not set -# CONFIG_IOMMU_IO_PGTABLE_LPAE is not set -CONFIG_IOMMU_SUPPORT=y CONFIG_IO_URING=y CONFIG_IPC_NS=y CONFIG_IRQCHIP=y @@ -263,10 +269,10 @@ CONFIG_MDIO_BUS=y CONFIG_MDIO_DEVICE=y CONFIG_MDIO_DEVRES=y CONFIG_MDIO_GPIO=y -CONFIG_MEMFD_CREATE=y CONFIG_MEMORY_ISOLATION=y CONFIG_MFD_SYSCON=y CONFIG_MIGRATION=y +CONFIG_MMU_LAZY_TLB_REFCOUNT=y CONFIG_MODULES_USE_ELF_REL=y # CONFIG_MODULE_UNLOAD is not set CONFIG_MQ_IOSCHED_DEADLINE=y @@ -282,6 +288,7 @@ CONFIG_NAMESPACES=y CONFIG_NEED_DMA_MAP_STATE=y CONFIG_NEED_KUSER_HELPERS=y CONFIG_NEED_PER_CPU_KM=y +CONFIG_NEED_SRCU_NMI_SAFE=y CONFIG_NET_DEVLINK=y CONFIG_NET_DSA=y CONFIG_NET_DSA_REALTEK=y @@ -290,13 +297,17 @@ CONFIG_NET_DSA_REALTEK=y CONFIG_NET_DSA_REALTEK_RTL8366RB=y CONFIG_NET_DSA_REALTEK_SMI=y CONFIG_NET_DSA_TAG_RTL4_A=y +CONFIG_NET_EGRESS=y +CONFIG_NET_INGRESS=y CONFIG_NET_NS=y CONFIG_NET_SELFTESTS=y CONFIG_NET_SWITCHDEV=y +CONFIG_NET_XGRESS=y CONFIG_NLS=y CONFIG_NO_HZ_COMMON=y CONFIG_NO_HZ_IDLE=y CONFIG_NVMEM=y +CONFIG_NVMEM_LAYOUTS=y CONFIG_OF=y CONFIG_OF_ADDRESS=y CONFIG_OF_EARLY_FLATTREE=y @@ -311,6 +322,7 @@ CONFIG_PAGE_OFFSET=0xC0000000 CONFIG_PAGE_POOL=y CONFIG_PAGE_SIZE_LESS_THAN_256KB=y CONFIG_PAGE_SIZE_LESS_THAN_64KB=y +CONFIG_PAHOLE_HAS_LANG_EXCLUDE=y # CONFIG_PANIC_ON_OOPS is not set CONFIG_PANIC_ON_OOPS_VALUE=0 CONFIG_PANIC_TIMEOUT=0 @@ -327,6 +339,7 @@ CONFIG_PCI_FTPCI100=y CONFIG_PERF_USE_VMALLOC=y CONFIG_PGTABLE_LEVELS=2 CONFIG_PHYLIB=y +CONFIG_PHYLIB_LEDS=y CONFIG_PHYLINK=y CONFIG_PID_NS=y CONFIG_PINCTRL=y @@ -382,12 +395,14 @@ CONFIG_SERIAL_8250_EXAR=y CONFIG_SERIAL_8250_FSL=y CONFIG_SERIAL_8250_NR_UARTS=1 CONFIG_SERIAL_8250_PCI=y +CONFIG_SERIAL_8250_PCILIB=y CONFIG_SERIAL_8250_RUNTIME_UARTS=1 CONFIG_SERIAL_MCTRL_GPIO=y CONFIG_SERIAL_OF_PLATFORM=y CONFIG_SERIO=y CONFIG_SERIO_LIBPS2=y CONFIG_SERIO_SERPORT=y +CONFIG_SGL_ALLOC=y CONFIG_SG_POOL=y CONFIG_SLUB_DEBUG=y CONFIG_SOFTIRQ_ON_OWN_STACK=y @@ -397,7 +412,7 @@ CONFIG_SPI_BITBANG=y CONFIG_SPI_GPIO=y CONFIG_SPI_MASTER=y CONFIG_SPLIT_PTLOCK_CPUS=999999 -CONFIG_SRCU=y +CONFIG_SQUASHFS_DECOMP_MULTI_PERCPU=y CONFIG_STACKDEPOT=y CONFIG_STACKTRACE=y # CONFIG_STRIP_ASM_SYMS is not set @@ -432,6 +447,8 @@ CONFIG_USE_OF=y CONFIG_UTS_NS=y CONFIG_VGA_ARB=y CONFIG_VGA_ARB_MAX_GPUS=16 +CONFIG_VIDEO_CMDLINE=y +CONFIG_VIDEO_NOMODESET=y CONFIG_VITESSE_PHY=y CONFIG_VM_EVENT_COUNTERS=y CONFIG_VT=y diff --git a/target/linux/gemini/image/Makefile b/target/linux/gemini/image/Makefile index 3fce3172ed63..3ddb6e5554ad 100644 --- a/target/linux/gemini/image/Makefile +++ b/target/linux/gemini/image/Makefile @@ -124,6 +124,7 @@ endef # All DTB files are prefixed with "gemini-" define Device/Default PROFILES := Default + DEVICE_DTS_DIR = $$(DTS_DIR)/gemini KERNEL_DEPENDS = $$(wildcard $(DTS_DIR)/$$(DEVICE_DTS).dts) KERNEL_NAME := zImage KERNEL := kernel-bin | append-dtb diff --git a/target/linux/gemini/patches-6.1/0001-usb-phy-phy-gpio-vbus-usb-Add-device-tree-probing.patch b/target/linux/gemini/patches-6.1/0001-usb-phy-phy-gpio-vbus-usb-Add-device-tree-probing.patch deleted file mode 100644 index 943b166d7e38..000000000000 diff --git a/target/linux/gemini/patches-6.1/0002-usb-fotg210-Collect-pieces-of-dual-mode-controller.patch b/target/linux/gemini/patches-6.1/0002-usb-fotg210-Collect-pieces-of-dual-mode-controller.patch deleted file mode 100644 index 1ee4f27c46d2..000000000000 diff --git a/target/linux/gemini/patches-6.1/0003-usb-fotg210-Compile-into-one-module.patch b/target/linux/gemini/patches-6.1/0003-usb-fotg210-Compile-into-one-module.patch deleted file mode 100644 index 5c7b4ff9c794..000000000000 diff --git a/target/linux/gemini/patches-6.1/0004-usb-fotg210-Select-subdriver-by-mode.patch b/target/linux/gemini/patches-6.1/0004-usb-fotg210-Select-subdriver-by-mode.patch deleted file mode 100644 index 6a19a0aa4d9c..000000000000 diff --git a/target/linux/gemini/patches-6.1/0005-usb-fotg2-add-Gemini-specific-handling.patch b/target/linux/gemini/patches-6.1/0005-usb-fotg2-add-Gemini-specific-handling.patch deleted file mode 100644 index daf8d8561170..000000000000 diff --git a/target/linux/gemini/patches-6.1/0006-usb-fotg210-Fix-Kconfig-for-USB-host-modules.patch b/target/linux/gemini/patches-6.1/0006-usb-fotg210-Fix-Kconfig-for-USB-host-modules.patch deleted file mode 100644 index bd3a42415a41..000000000000 diff --git a/target/linux/gemini/patches-6.1/0007-usb-USB_FOTG210-should-depend-on-ARCH_GEMINI.patch b/target/linux/gemini/patches-6.1/0007-usb-USB_FOTG210-should-depend-on-ARCH_GEMINI.patch deleted file mode 100644 index 6afef0d82000..000000000000 diff --git a/target/linux/gemini/patches-6.1/0008-fotg210-udc-Use-dev-pointer-in-probe-and-dev_message.patch b/target/linux/gemini/patches-6.1/0008-fotg210-udc-Use-dev-pointer-in-probe-and-dev_message.patch deleted file mode 100644 index 2a595e885d17..000000000000 diff --git a/target/linux/gemini/patches-6.1/0009-fotg210-udc-Support-optional-external-PHY.patch b/target/linux/gemini/patches-6.1/0009-fotg210-udc-Support-optional-external-PHY.patch deleted file mode 100644 index 498875c53566..000000000000 diff --git a/target/linux/gemini/patches-6.1/0010-fotg210-udc-Handle-PCLK.patch b/target/linux/gemini/patches-6.1/0010-fotg210-udc-Handle-PCLK.patch deleted file mode 100644 index 8da3de3b4767..000000000000 diff --git a/target/linux/gemini/patches-6.1/0011-fotg210-udc-Get-IRQ-using-platform_get_irq.patch b/target/linux/gemini/patches-6.1/0011-fotg210-udc-Get-IRQ-using-platform_get_irq.patch deleted file mode 100644 index 9544de7cb074..000000000000 diff --git a/target/linux/gemini/patches-6.1/0012-usb-fotg210-udc-Remove-a-useless-assignment.patch b/target/linux/gemini/patches-6.1/0012-usb-fotg210-udc-Remove-a-useless-assignment.patch deleted file mode 100644 index 8c33c50b2cb8..000000000000 diff --git a/target/linux/gemini/patches-6.1/0013-usb-fotg210-udc-fix-potential-memory-leak-in-fotg210.patch b/target/linux/gemini/patches-6.1/0013-usb-fotg210-udc-fix-potential-memory-leak-in-fotg210.patch deleted file mode 100644 index 178135662f5e..000000000000 diff --git a/target/linux/gemini/patches-6.1/0014-usb-fotg210-fix-OTG-only-build.patch b/target/linux/gemini/patches-6.1/0014-usb-fotg210-fix-OTG-only-build.patch deleted file mode 100644 index acdf1796f3bf..000000000000 diff --git a/target/linux/gemini/patches-6.1/0015-usb-fotg210-udc-fix-error-return-code-in-fotg210_udc.patch b/target/linux/gemini/patches-6.1/0015-usb-fotg210-udc-fix-error-return-code-in-fotg210_udc.patch deleted file mode 100644 index a9bbca58b4ab..000000000000 diff --git a/target/linux/gemini/patches-6.1/0016-usb-fotg210-List-different-variants.patch b/target/linux/gemini/patches-6.1/0016-usb-fotg210-List-different-variants.patch deleted file mode 100644 index 6ff6d28ad3f4..000000000000 diff --git a/target/linux/gemini/patches-6.1/0017-usb-fotg210-Acquire-memory-resource-in-core.patch b/target/linux/gemini/patches-6.1/0017-usb-fotg210-Acquire-memory-resource-in-core.patch deleted file mode 100644 index 7dbd511ecbed..000000000000 diff --git a/target/linux/gemini/patches-6.1/0018-usb-fotg210-Move-clock-handling-to-core.patch b/target/linux/gemini/patches-6.1/0018-usb-fotg210-Move-clock-handling-to-core.patch deleted file mode 100644 index 9894f4dc66d6..000000000000 diff --git a/target/linux/gemini/patches-6.1/0019-usb-fotg210-Check-role-register-in-core.patch b/target/linux/gemini/patches-6.1/0019-usb-fotg210-Check-role-register-in-core.patch deleted file mode 100644 index 892b0d31af05..000000000000 diff --git a/target/linux/gemini/patches-6.1/0020-usb-fotg210-udc-Assign-of_node-and-speed-on-start.patch b/target/linux/gemini/patches-6.1/0020-usb-fotg210-udc-Assign-of_node-and-speed-on-start.patch deleted file mode 100644 index 20f8f943501f..000000000000 diff --git a/target/linux/gemini/patches-6.1/0021-usb-fotg210-udc-Implement-VBUS-session.patch b/target/linux/gemini/patches-6.1/0021-usb-fotg210-udc-Implement-VBUS-session.patch deleted file mode 100644 index d98561f0d4c3..000000000000 diff --git a/target/linux/gemini/patches-6.1/0022-fotg210-udc-Introduce-and-use-a-fotg210_ack_int-func.patch b/target/linux/gemini/patches-6.1/0022-fotg210-udc-Introduce-and-use-a-fotg210_ack_int-func.patch deleted file mode 100644 index fc5831eb23b7..000000000000 diff --git a/target/linux/gemini/patches-6.1/0023-fotg210-udc-Improve-device-initialization.patch b/target/linux/gemini/patches-6.1/0023-fotg210-udc-Improve-device-initialization.patch deleted file mode 100644 index fde17a48b3d4..000000000000 diff --git a/target/linux/gemini/patches-6.1/0024-usb-fotg210-hcd-use-sysfs_emit-to-instead-of-scnprin.patch b/target/linux/gemini/patches-6.1/0024-usb-fotg210-hcd-use-sysfs_emit-to-instead-of-scnprin.patch deleted file mode 100644 index 680836110a0b..000000000000 diff --git a/target/linux/gemini/patches-6.1/0025-ARM-dts-gemini-Push-down-flash-address-size-cells.patch b/target/linux/gemini/patches-6.1/0025-ARM-dts-gemini-Push-down-flash-address-size-cells.patch deleted file mode 100644 index 1e031f1d4ff9..000000000000 diff --git a/target/linux/gemini/patches-6.1/0026-ARM-dts-gemini-wbd111-Use-RedBoot-partion-parser.patch b/target/linux/gemini/patches-6.1/0026-ARM-dts-gemini-wbd111-Use-RedBoot-partion-parser.patch deleted file mode 100644 index 1aff23ed1bad..000000000000 diff --git a/target/linux/gemini/patches-6.1/0027-ARM-dts-gemini-wbd222-Use-RedBoot-partion-parser.patch b/target/linux/gemini/patches-6.1/0027-ARM-dts-gemini-wbd222-Use-RedBoot-partion-parser.patch deleted file mode 100644 index 8cafeaa0dfef..000000000000 diff --git a/target/linux/gemini/patches-6.1/0028-ARM-dts-gemini-Fix-USB-block-version.patch b/target/linux/gemini/patches-6.1/0028-ARM-dts-gemini-Fix-USB-block-version.patch deleted file mode 100644 index fb93b70a3130..000000000000 diff --git a/target/linux/gemini/patches-6.1/0029-ARM-dts-gemini-Enable-DNS313-FOTG210-as-periph.patch b/target/linux/gemini/patches-6.1/0029-ARM-dts-gemini-Enable-DNS313-FOTG210-as-periph.patch deleted file mode 100644 index 667878170b7c..000000000000 diff --git a/target/linux/gemini/patches-6.6/0001-net-ethernet-cortina-Drop-TSO-support.patch b/target/linux/gemini/patches-6.6/0001-net-ethernet-cortina-Drop-TSO-support.patch new file mode 100644 index 000000000000..43e0cb283aac --- /dev/null +++ b/target/linux/gemini/patches-6.6/0001-net-ethernet-cortina-Drop-TSO-support.patch @@ -0,0 +1,78 @@ +From f8001196455311eb128fcafd98cb2050a70218df Mon Sep 17 00:00:00 2001 +From: Linus Walleij <linus.wall...@linaro.org> +Date: Sat, 6 Jan 2024 01:12:22 +0100 +Subject: [PATCH 4/4] net: ethernet: cortina: Drop TSO support + +The recent change to allow large frames without hardware checksumming +slotted in software checksumming in the driver if hardware could not +do it. + +This will however upset TSO (TCP Segment Offloading). Typical +error dumps includes this: + +skb len=2961 headroom=222 headlen=66 tailroom=0 +(...) +WARNING: CPU: 0 PID: 956 at net/core/dev.c:3259 skb_warn_bad_offload+0x7c/0x108 +gemini-ethernet-port: caps=(0x0000010000154813, 0x00002007ffdd7889) + +And the packets do not go through. + +The TSO implementation is bogus: a TSO enabled driver must propagate +the skb_shinfo(skb)->gso_size value to the TSO engine on the NIC. + +Drop the size check and TSO offloading features for now: this +needs to be fixed up properly. + +After this ethernet works fine on Gemini devices with a direct connected +PHY such as D-Link DNS-313. + +Also tested to still be working with a DSA switch using the Gemini +ethernet as conduit interface. + +Link: https://lore.kernel.org/netdev/cann89ijlfxng1syl5zk0mknxpyyqpcp83m3kgd2kj2_hkcp...@mail.gmail.com/ +Suggested-by: Eric Dumazet <eduma...@google.com> +Fixes: d4d0c5b4d279 ("net: ethernet: cortina: Handle large frames") +Signed-off-by: Linus Walleij <linus.wall...@linaro.org> +Reviewed-by: Eric Dumazet <eduma...@google.com> +Signed-off-by: David S. Miller <da...@davemloft.net> +--- + drivers/net/ethernet/cortina/gemini.c | 15 ++------------- + 1 file changed, 2 insertions(+), 13 deletions(-) + +--- a/drivers/net/ethernet/cortina/gemini.c ++++ b/drivers/net/ethernet/cortina/gemini.c +@@ -79,8 +79,7 @@ MODULE_PARM_DESC(debug, "Debug level (0= + #define GMAC0_IRQ4_8 (GMAC0_MIB_INT_BIT | GMAC0_RX_OVERRUN_INT_BIT) + + #define GMAC_OFFLOAD_FEATURES (NETIF_F_SG | NETIF_F_IP_CSUM | \ +- NETIF_F_IPV6_CSUM | NETIF_F_RXCSUM | \ +- NETIF_F_TSO | NETIF_F_TSO_ECN | NETIF_F_TSO6) ++ NETIF_F_IPV6_CSUM | NETIF_F_RXCSUM) + + /** + * struct gmac_queue_page - page buffer per-page info +@@ -1143,23 +1142,13 @@ static int gmac_map_tx_bufs(struct net_d + struct gmac_txdesc *txd; + skb_frag_t *skb_frag; + dma_addr_t mapping; +- unsigned short mtu; + void *buffer; + int ret; + +- mtu = ETH_HLEN; +- mtu += netdev->mtu; +- if (skb->protocol == htons(ETH_P_8021Q)) +- mtu += VLAN_HLEN; +- ++ /* TODO: implement proper TSO using MTU in word3 */ + word1 = skb->len; + word3 = SOF_BIT; + +- if (word1 > mtu) { +- word1 |= TSS_MTU_ENABLE_BIT; +- word3 |= mtu; +- } +- + if (skb->len >= ETH_FRAME_LEN) { + /* Hardware offloaded checksumming isn't working on frames + * bigger than 1514 bytes. A hypothesis about this is that the diff --git a/target/linux/gemini/patches-6.6/0002-ARM-dts-gemini-Map-reset-keys-to-KEY_RESTART.patch b/target/linux/gemini/patches-6.6/0002-ARM-dts-gemini-Map-reset-keys-to-KEY_RESTART.patch new file mode 100644 index 000000000000..1d1ee2b46c70 --- /dev/null +++ b/target/linux/gemini/patches-6.6/0002-ARM-dts-gemini-Map-reset-keys-to-KEY_RESTART.patch @@ -0,0 +1,103 @@ +From 091cde88b5ff2a2ca5739ce41f9cf5640a95222f Mon Sep 17 00:00:00 2001 +From: Linus Walleij <linus.wall...@linaro.org> +Date: Sun, 11 Feb 2024 22:24:25 +0100 +Subject: [PATCH] ARM: dts: gemini: Map reset keys to KEY_RESTART + +This maps the misc "reset", "setup" and "facory reset" keys to the +only key a standard userspace is likely to understand: KEY_RESTART. +On OpenWrt this will simply restart the system under controlled +forms. + +Signed-off-by: Linus Walleij <linus.wall...@linaro.org> +Link: https://lore.kernel.org/r/20240211-gemini-dts-v1-3-6c09adeb4...@linaro.org +--- + arch/arm/boot/dts/gemini/gemini-dlink-dir-685.dts | 4 ++-- + arch/arm/boot/dts/gemini/gemini-dlink-dns-313.dts | 4 ++-- + arch/arm/boot/dts/gemini/gemini-sl93512r.dts | 2 +- + arch/arm/boot/dts/gemini/gemini-sq201.dts | 2 +- + arch/arm/boot/dts/gemini/gemini-wbd111.dts | 4 ++-- + arch/arm/boot/dts/gemini/gemini-wbd222.dts | 4 ++-- + 6 files changed, 10 insertions(+), 10 deletions(-) + +--- a/arch/arm/boot/dts/gemini/gemini-dlink-dir-685.dts ++++ b/arch/arm/boot/dts/gemini/gemini-dlink-dir-685.dts +@@ -27,10 +27,10 @@ + gpio_keys { + compatible = "gpio-keys"; + +- button-esc { ++ button-reset { + debounce-interval = <100>; + wakeup-source; +- linux,code = <KEY_ESC>; ++ linux,code = <KEY_RESTART>; + label = "reset"; + /* Collides with LPC_LAD[0], UART DCD, SSP 97RST */ + gpios = <&gpio0 8 GPIO_ACTIVE_LOW>; +--- a/arch/arm/boot/dts/gemini/gemini-dlink-dns-313.dts ++++ b/arch/arm/boot/dts/gemini/gemini-dlink-dns-313.dts +@@ -33,10 +33,10 @@ + gpio_keys { + compatible = "gpio-keys"; + +- button-esc { ++ button-reset { + debounce-interval = <100>; + wakeup-source; +- linux,code = <KEY_ESC>; ++ linux,code = <KEY_RESTART>; + label = "reset"; + gpios = <&gpio1 31 GPIO_ACTIVE_LOW>; + }; +--- a/arch/arm/boot/dts/gemini/gemini-sl93512r.dts ++++ b/arch/arm/boot/dts/gemini/gemini-sl93512r.dts +@@ -43,7 +43,7 @@ + button-setup { + debounce-interval = <50>; + wakeup-source; +- linux,code = <KEY_SETUP>; ++ linux,code = <KEY_RESTART>; + label = "factory reset"; + /* Conflict with NAND flash */ + gpios = <&gpio0 18 GPIO_ACTIVE_LOW>; +--- a/arch/arm/boot/dts/gemini/gemini-sq201.dts ++++ b/arch/arm/boot/dts/gemini/gemini-sq201.dts +@@ -30,7 +30,7 @@ + button-setup { + debounce-interval = <100>; + wakeup-source; +- linux,code = <KEY_SETUP>; ++ linux,code = <KEY_RESTART>; + label = "factory reset"; + /* Conflict with NAND flash */ + gpios = <&gpio0 18 GPIO_ACTIVE_LOW>; +--- a/arch/arm/boot/dts/gemini/gemini-wbd111.dts ++++ b/arch/arm/boot/dts/gemini/gemini-wbd111.dts +@@ -28,10 +28,10 @@ + gpio_keys { + compatible = "gpio-keys"; + +- button-setup { ++ button-reset { + debounce-interval = <100>; + wakeup-source; +- linux,code = <KEY_SETUP>; ++ linux,code = <KEY_RESTART>; + label = "reset"; + /* Conflict with ICE */ + gpios = <&gpio0 5 GPIO_ACTIVE_LOW>; +--- a/arch/arm/boot/dts/gemini/gemini-wbd222.dts ++++ b/arch/arm/boot/dts/gemini/gemini-wbd222.dts +@@ -27,10 +27,10 @@ + gpio_keys { + compatible = "gpio-keys"; + +- button-setup { ++ button-reset { + debounce-interval = <100>; + wakeup-source; +- linux,code = <KEY_SETUP>; ++ linux,code = <KEY_RESTART>; + label = "reset"; + /* Conflict with ICE */ + gpios = <&gpio0 5 GPIO_ACTIVE_LOW>; diff --git a/target/linux/gemini/patches-6.1/300-ARM-dts-Augment-DIR-685-partition-table-for-OpenWrt.patch b/target/linux/gemini/patches-6.6/300-ARM-dts-Augment-DIR-685-partition-table-for-OpenWrt.patch similarity index 70% rename from target/linux/gemini/patches-6.1/300-ARM-dts-Augment-DIR-685-partition-table-for-OpenWrt.patch rename to target/linux/gemini/patches-6.6/300-ARM-dts-Augment-DIR-685-partition-table-for-OpenWrt.patch index 99e0d2731da4..613c3a842f13 100644 --- a/target/linux/gemini/patches-6.1/300-ARM-dts-Augment-DIR-685-partition-table-for-OpenWrt.patch +++ b/target/linux/gemini/patches-6.6/300-ARM-dts-Augment-DIR-685-partition-table-for-OpenWrt.patch @@ -1,7 +1,7 @@ -From 36ee838bf83c01cff7cb47c7b07be278d2950ac0 Mon Sep 17 00:00:00 2001 +From c1aa34cd568bc7b86b82353034070c32b6ebe6db Mon Sep 17 00:00:00 2001 From: Linus Walleij <linus.wall...@linaro.org> Date: Mon, 11 Mar 2019 15:44:29 +0100 -Subject: [PATCH 2/2] ARM: dts: Augment DIR-685 partition table for OpenWrt +Subject: [PATCH] ARM: dts: Augment DIR-685 partition table for OpenWrt Rename the firmware partition so that the firmware MTD splitter will do its job, drop the rootfs arguments as @@ -9,8 +9,11 @@ the MTD splitter will set this up automatically. Signed-off-by: Linus Walleij <linus.wall...@linaro.org> --- ---- a/arch/arm/boot/dts/gemini-dlink-dir-685.dts -+++ b/arch/arm/boot/dts/gemini-dlink-dir-685.dts + arch/arm/boot/dts/gemini/gemini-dlink-dir-685.dts | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +--- a/arch/arm/boot/dts/gemini/gemini-dlink-dir-685.dts ++++ b/arch/arm/boot/dts/gemini/gemini-dlink-dir-685.dts @@ -20,7 +20,7 @@ }; -- 2.44.0 _______________________________________________ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/mailman/listinfo/openwrt-devel