Merge remote-tracking branch 'immortalwrt/master' into k6.12-nss

This commit is contained in:
Roc Lai 2025-12-03 15:40:09 +08:00
commit ea02da03c0
1233 changed files with 8729 additions and 130096 deletions

2
.gitattributes vendored
View File

@ -1,2 +1,4 @@
* -text * -text
*.patch whitespace=-indent-with-non-tab,-space-before-tab,-tab-in-indent,-trailing-space *.patch whitespace=-indent-with-non-tab,-space-before-tab,-tab-in-indent,-trailing-space
*.dts text eol=lf
*.dts[io] text eol=lf

View File

@ -108,6 +108,7 @@ menu "Global build settings"
config CLEAN_IPKG config CLEAN_IPKG
bool bool
prompt "Remove ipkg/opkg status data files in final images" prompt "Remove ipkg/opkg status data files in final images"
depends on !USE_APK
help help
This removes all ipkg/opkg status data files from the target directory This removes all ipkg/opkg status data files from the target directory
before building the root filesystem. before building the root filesystem.

View File

@ -612,14 +612,12 @@ choice
config KERNEL_TRANSPARENT_HUGEPAGE_NEVER config KERNEL_TRANSPARENT_HUGEPAGE_NEVER
bool "never" bool "never"
depends on !LINUX_6_6
endchoice endchoice
config KERNEL_ARM64_CONTPTE config KERNEL_ARM64_CONTPTE
bool "Compile the kernel with Contiguous PTE mappings for user memory" bool "Compile the kernel with Contiguous PTE mappings for user memory"
depends on aarch64 depends on aarch64
depends on KERNEL_TRANSPARENT_HUGEPAGE depends on KERNEL_TRANSPARENT_HUGEPAGE
depends on !LINUX_6_6
default y default y
config KERNEL_HUGETLBFS config KERNEL_HUGETLBFS
@ -877,7 +875,7 @@ if KERNEL_CGROUPS
config KERNEL_CPUSETS_V1 config KERNEL_CPUSETS_V1
bool "Legacy cgroup v1 cpusets controller" bool "Legacy cgroup v1 cpusets controller"
depends on KERNEL_CPUSETS depends on KERNEL_CPUSETS
depends on !LINUX_6_6 default n
help help
Legacy cgroup v1 cpusets controller which has been deprecated by Legacy cgroup v1 cpusets controller which has been deprecated by
cgroup v2 implementation. The v1 is there for legacy applications cgroup v2 implementation. The v1 is there for legacy applications
@ -934,7 +932,6 @@ if KERNEL_CGROUPS
config KERNEL_MEMCG_V1 config KERNEL_MEMCG_V1
bool "Legacy cgroup v1 memory controller" bool "Legacy cgroup v1 memory controller"
depends on KERNEL_MEMCG depends on KERNEL_MEMCG
depends on !LINUX_6_6
help help
Legacy cgroup v1 memory controller which has been deprecated by Legacy cgroup v1 memory controller which has been deprecated by
cgroup v2 implementation. The v1 is there for legacy applications cgroup v2 implementation. The v1 is there for legacy applications

View File

@ -25,7 +25,6 @@ ifeq ($(strip $(CONFIG_EXTERNAL_KERNEL_TREE)),"")
define Kernel/Prepare/Default define Kernel/Prepare/Default
$(LINUX_CAT) $(DL_DIR)/$(LINUX_SOURCE) | $(TAR) -C $(KERNEL_BUILD_DIR) $(TAR_OPTIONS) $(LINUX_CAT) $(DL_DIR)/$(LINUX_SOURCE) | $(TAR) -C $(KERNEL_BUILD_DIR) $(TAR_OPTIONS)
$(Kernel/Patch) $(Kernel/Patch)
$(if $(QUILT),touch $(LINUX_DIR)/.quilt_used)
endef endef
else else
define Kernel/Prepare/Default define Kernel/Prepare/Default

View File

@ -103,6 +103,7 @@ define Kernel/Patch/Default
$(call PatchDir,$(LINUX_DIR),$(GENERIC_PATCH_DIR),generic/) $(call PatchDir,$(LINUX_DIR),$(GENERIC_PATCH_DIR),generic/)
$(call PatchDir,$(LINUX_DIR),$(GENERIC_HACK_DIR),generic-hack/) $(call PatchDir,$(LINUX_DIR),$(GENERIC_HACK_DIR),generic-hack/)
$(call PatchDir,$(LINUX_DIR),$(PATCH_DIR),platform/) $(call PatchDir,$(LINUX_DIR),$(PATCH_DIR),platform/)
$(if $(QUILT),touch $(LINUX_DIR)/.quilt_used)
endef endef
define Quilt/RefreshDir define Quilt/RefreshDir

View File

@ -7,10 +7,10 @@
include $(TOPDIR)/rules.mk include $(TOPDIR)/rules.mk
PKG_VERSION:=2.12 PKG_VERSION:=2.13
PKG_RELEASE:=2 PKG_RELEASE:=1
PKG_HASH:=b4c047493cac1152203e1ba121ae57267e4899b7bf56eb365e22a933342d31c9 PKG_HASH:=afb5c408392fcec840bd30de9b02a236b0108142024f9853b542b596b0d894e3
PKG_MAINTAINER:=Thomas Richard <thomas.richard@bootlin.com> PKG_MAINTAINER:=Thomas Richard <thomas.richard@bootlin.com>
include $(INCLUDE_DIR)/kernel.mk include $(INCLUDE_DIR)/kernel.mk

View File

@ -1,51 +0,0 @@
From 33573ea6842198cfdb5b3fdd320db9e2045855e9 Mon Sep 17 00:00:00 2001
From: Valentin Caron <valentin.caron@foss.st.com>
Date: Wed, 11 Dec 2024 11:20:04 +0100
Subject: [PATCH] fix(stm32mp1-fdts): re-enable RTC clock
On STM32MP15 ST boards, RTC clock configuration by OPTEE is not ready
yet. Re-enable it temporary to get LSE as clock source of RTC.
Signed-off-by: Valentin Caron <valentin.caron@foss.st.com>
Change-Id: Ib6071229552e456faffb4fdfc8db9808140d54a7
---
fdts/stm32mp157c-ed1.dts | 2 ++
fdts/stm32mp15xx-dkx.dtsi | 2 ++
2 files changed, 4 insertions(+)
--- a/fdts/stm32mp157c-ed1.dts
+++ b/fdts/stm32mp157c-ed1.dts
@@ -194,6 +194,7 @@
CLK_MPU_PLL1P
CLK_AXI_PLL2P
CLK_MCU_PLL3P
+ CLK_RTC_LSE
CLK_MCO1_DISABLED
CLK_MCO2_DISABLED
CLK_CKPER_HSE
@@ -242,6 +243,7 @@
DIV(DIV_APB3, 1)
DIV(DIV_APB4, 1)
DIV(DIV_APB5, 2)
+ DIV(DIV_RTC, 23)
DIV(DIV_MCO1, 0)
DIV(DIV_MCO2, 0)
>;
--- a/fdts/stm32mp15xx-dkx.dtsi
+++ b/fdts/stm32mp15xx-dkx.dtsi
@@ -198,6 +198,7 @@
CLK_MPU_PLL1P
CLK_AXI_PLL2P
CLK_MCU_PLL3P
+ CLK_RTC_LSE
CLK_MCO1_DISABLED
CLK_MCO2_DISABLED
CLK_CKPER_HSE
@@ -246,6 +247,7 @@
DIV(DIV_APB3, 1)
DIV(DIV_APB4, 1)
DIV(DIV_APB5, 2)
+ DIV(DIV_RTC, 23)
DIV(DIV_MCO1, 0)
DIV(DIV_MCO2, 0)
>;

View File

@ -7,10 +7,10 @@
include $(TOPDIR)/rules.mk include $(TOPDIR)/rules.mk
PKG_VERSION:=4.7.0 PKG_VERSION:=4.8.0
PKG_RELEASE:=1 PKG_RELEASE:=1
PKG_HASH:=976b9c184678516038d4e79766608e81d10bf136f76fd0db2dc48f90f994fbd9 PKG_HASH:=5222cd553f5edb69ae4ec7cb99b2bfec2c47a47c0be1865b49744701918e8b4d
PKG_MAINTAINER:=Thomas Richard <thomas.richard@bootlin.com> PKG_MAINTAINER:=Thomas Richard <thomas.richard@bootlin.com>
OPTEE_USE_INTREE_DTC:=1 OPTEE_USE_INTREE_DTC:=1

View File

@ -19,12 +19,19 @@ define U-Boot/Default
endef endef
define U-Boot/ar9344_nec_aterm define U-Boot/ar9344_nec_aterm
NAME:=NEC Aterm series (AR9344) NAME:=NEC Aterm series (AR9344, GbE)
BUILD_SUBTARGET:= tiny BUILD_SUBTARGET:= tiny
BUILD_DEVICES:=nec_wg600hp nec_wr8750n nec_wr9500n BUILD_DEVICES:=nec_wg600hp nec_wr8750n nec_wr9500n
UBOOT_CONFIG:=nec_ar9344_aterm UBOOT_CONFIG:=nec_ar9344_aterm
endef endef
define U-Boot/ar9344_nec_aterm_fe
NAME:=NEC Aterm series (AR9344, FE)
BUILD_SUBTARGET:= tiny
BUILD_DEVICES:=nec_wf1200hp nec_wf1200hp2
UBOOT_CONFIG:=nec_ar9344_aterm_fe
endef
define U-Boot/qca9558_nec_aterm define U-Boot/qca9558_nec_aterm
NAME:=NEC Aterm series (QCA9558) NAME:=NEC Aterm series (QCA9558)
BUILD_SUBTARGET:= generic BUILD_SUBTARGET:= generic
@ -32,7 +39,7 @@ define U-Boot/qca9558_nec_aterm
UBOOT_CONFIG:=nec_qca9558_aterm UBOOT_CONFIG:=nec_qca9558_aterm
endef endef
UBOOT_TARGETS := ar9344_nec_aterm qca9558_nec_aterm UBOOT_TARGETS := ar9344_nec_aterm ar9344_nec_aterm_fe qca9558_nec_aterm
# don't stage files to bindir, let target/linux/ath79/image/*.mk do that # don't stage files to bindir, let target/linux/ath79/image/*.mk do that
define Package/u-boot/install define Package/u-boot/install

View File

@ -5,19 +5,21 @@ Subject: [PATCH] ath79: add support for NEC AR9344 Aterm series
--- ---
arch/mips/dts/Makefile | 1 + arch/mips/dts/Makefile | 1 +
arch/mips/dts/nec,ar9344-aterm.dts | 35 +++++++++++++++ arch/mips/dts/nec,ar9344-aterm.dts | 35 ++++++++++++++
arch/mips/mach-ath79/Kconfig | 5 +++ arch/mips/mach-ath79/Kconfig | 5 ++
board/nec/ar9344_aterm/Kconfig | 30 +++++++++++++ board/nec/ar9344_aterm/Kconfig | 33 +++++++++++++
board/nec/ar9344_aterm/Makefile | 3 ++ board/nec/ar9344_aterm/Makefile | 3 ++
board/nec/ar9344_aterm/ar9344_aterm.c | 59 ++++++++++++++++++++++++++ board/nec/ar9344_aterm/ar9344_aterm.c | 70 +++++++++++++++++++++++++++
configs/nec_ar9344_aterm_defconfig | 61 +++++++++++++++++++++++++++ configs/nec_ar9344_aterm_defconfig | 61 +++++++++++++++++++++++
include/configs/nec_ar9344_aterm.h | 28 ++++++++++++ configs/nec_ar9344_aterm_fe_defconfig | 62 ++++++++++++++++++++++++
8 files changed, 222 insertions(+) include/configs/nec_ar9344_aterm.h | 28 +++++++++++
9 files changed, 298 insertions(+)
create mode 100644 arch/mips/dts/nec,ar9344-aterm.dts create mode 100644 arch/mips/dts/nec,ar9344-aterm.dts
create mode 100644 board/nec/ar9344_aterm/Kconfig create mode 100644 board/nec/ar9344_aterm/Kconfig
create mode 100644 board/nec/ar9344_aterm/Makefile create mode 100644 board/nec/ar9344_aterm/Makefile
create mode 100644 board/nec/ar9344_aterm/ar9344_aterm.c create mode 100644 board/nec/ar9344_aterm/ar9344_aterm.c
create mode 100644 configs/nec_ar9344_aterm_defconfig create mode 100644 configs/nec_ar9344_aterm_defconfig
create mode 100644 configs/nec_ar9344_aterm_fe_defconfig
create mode 100644 include/configs/nec_ar9344_aterm.h create mode 100644 include/configs/nec_ar9344_aterm.h
--- a/arch/mips/dts/Makefile --- a/arch/mips/dts/Makefile
@ -91,7 +93,7 @@ Subject: [PATCH] ath79: add support for NEC AR9344 Aterm series
endmenu endmenu
--- /dev/null --- /dev/null
+++ b/board/nec/ar9344_aterm/Kconfig +++ b/board/nec/ar9344_aterm/Kconfig
@@ -0,0 +1,30 @@ @@ -0,0 +1,33 @@
+if BOARD_NEC_AR9344_ATERM +if BOARD_NEC_AR9344_ATERM
+ +
+config SYS_VENDOR +config SYS_VENDOR
@ -121,6 +123,9 @@ Subject: [PATCH] ath79: add support for NEC AR9344 Aterm series
+config SYS_ICACHE_LINE_SIZE +config SYS_ICACHE_LINE_SIZE
+ default 32 + default 32
+ +
+config BOARD_NEC_AR9344_ATERM_FE
+ bool "Aterm devices based on AR9344 with FE ports"
+
+endif +endif
--- /dev/null --- /dev/null
+++ b/board/nec/ar9344_aterm/Makefile +++ b/board/nec/ar9344_aterm/Makefile
@ -130,7 +135,7 @@ Subject: [PATCH] ath79: add support for NEC AR9344 Aterm series
+obj-y = ar9344_aterm.o +obj-y = ar9344_aterm.o
--- /dev/null --- /dev/null
+++ b/board/nec/ar9344_aterm/ar9344_aterm.c +++ b/board/nec/ar9344_aterm/ar9344_aterm.c
@@ -0,0 +1,59 @@ @@ -0,0 +1,70 @@
+// SPDX-License-Identifier: GPL-2.0+ +// SPDX-License-Identifier: GPL-2.0+
+/* +/*
+ * Copyright (C) 2024 INAGAKI Hiroshi <musashino.open@gmail.com> + * Copyright (C) 2024 INAGAKI Hiroshi <musashino.open@gmail.com>
@ -156,16 +161,27 @@ Subject: [PATCH] ath79: add support for NEC AR9344 Aterm series
+ writel(0x2, regs + AR934X_GPIO_REG_FUNC); + writel(0x2, regs + AR934X_GPIO_REG_FUNC);
+ +
+ /* Configure default GPIO OE/SET regs */ + /* Configure default GPIO OE/SET regs */
+#if defined(CONFIG_BOARD_NEC_AR9344_ATERM_FE)
+ writel(0x39b1f, regs + AR71XX_GPIO_REG_OE);
+ writel(0x040000, regs + AR71XX_GPIO_REG_SET);
+#else
+ writel(0x3db1f, regs + AR71XX_GPIO_REG_OE); + writel(0x3db1f, regs + AR71XX_GPIO_REG_OE);
+ writel(0x142000, regs + AR71XX_GPIO_REG_SET); + writel(0x142000, regs + AR71XX_GPIO_REG_SET);
+#endif
+ +
+ /* Configure pin multiplexing */ + /* Configure pin multiplexing */
+ writel(0x00000000, regs + AR934X_GPIO_REG_OUT_FUNC0); + writel(0x00000000, regs + AR934X_GPIO_REG_OUT_FUNC0);
+ writel(0x0b0a0900, regs + AR934X_GPIO_REG_OUT_FUNC1); + writel(0x0b0a0900, regs + AR934X_GPIO_REG_OUT_FUNC1);
+ writel(0x00180000, regs + AR934X_GPIO_REG_OUT_FUNC2); + writel(0x00180000, regs + AR934X_GPIO_REG_OUT_FUNC2);
+ writel(0x00000000, regs + AR934X_GPIO_REG_OUT_FUNC3);
+ writel(0x2f2e0000, regs + AR934X_GPIO_REG_OUT_FUNC4); + writel(0x2f2e0000, regs + AR934X_GPIO_REG_OUT_FUNC4);
+
+#if defined(CONFIG_BOARD_NEC_AR9344_ATERM_FE)
+ writel(0x002b2a00, regs + AR934X_GPIO_REG_OUT_FUNC3);
+ writel(0x002c2d00, regs + AR934X_GPIO_REG_OUT_FUNC5);
+#else
+ writel(0x00000000, regs + AR934X_GPIO_REG_OUT_FUNC3);
+ writel(0x00000000, regs + AR934X_GPIO_REG_OUT_FUNC5); + writel(0x00000000, regs + AR934X_GPIO_REG_OUT_FUNC5);
+#endif
+} +}
+ +
+#ifdef CONFIG_DEBUG_UART_BOARD_INIT +#ifdef CONFIG_DEBUG_UART_BOARD_INIT
@ -255,6 +271,71 @@ Subject: [PATCH] ath79: add support for NEC AR9344 Aterm series
+CONFIG_SYS_NS16550=y +CONFIG_SYS_NS16550=y
+# CONFIG_GZIP is not set +# CONFIG_GZIP is not set
--- /dev/null --- /dev/null
+++ b/configs/nec_ar9344_aterm_fe_defconfig
@@ -0,0 +1,62 @@
+CONFIG_MIPS=y
+CONFIG_SYS_MALLOC_LEN=0x40000
+CONFIG_HAS_CUSTOM_SYS_INIT_SP_ADDR=y
+CONFIG_CUSTOM_SYS_INIT_SP_ADDR=0xbd007fff
+CONFIG_ENV_SIZE=0x1000
+CONFIG_DEFAULT_DEVICE_TREE="nec,ar9344-aterm"
+CONFIG_SYS_LOAD_ADDR=0x83000000
+CONFIG_ARCH_ATH79=y
+CONFIG_BOARD_NEC_AR9344_ATERM=y
+CONFIG_BOARD_NEC_AR9344_ATERM_FE=y
+CONFIG_SYS_MIPS_TIMER_FREQ=280000000
+CONFIG_MIPS_RELOCATION_TABLE_SIZE=0x4000
+# CONFIG_LOCALVERSION_AUTO is not set
+CONFIG_TIMESTAMP=y
+CONFIG_BOOTDELAY=3
+# CONFIG_ARCH_FIXUP_FDT_MEMORY is not set
+CONFIG_USE_BOOTARGS=y
+CONFIG_BOOTARGS="console=ttyS0,115200"
+CONFIG_USE_BOOTCOMMAND=y
+CONFIG_BOOTCOMMAND="bootm 0x9f040000"
+# CONFIG_DISPLAY_BOARDINFO is not set
+CONFIG_BOARD_EARLY_INIT_F=y
+CONFIG_SYS_MALLOC_BOOTPARAMS=y
+# CONFIG_CMDLINE_EDITING is not set
+# CONFIG_AUTO_COMPLETE is not set
+# CONFIG_SYS_LONGHELP is not set
+CONFIG_SYS_MAXARGS=32
+# CONFIG_SYS_XTRACE is not set
+# CONFIG_CMD_BDI is not set
+# CONFIG_CMD_CONSOLE is not set
+# CONFIG_BOOTM_PLAN9 is not set
+# CONFIG_BOOTM_RTEMS is not set
+# CONFIG_BOOTM_VXWORKS is not set
+# CONFIG_CMD_ELF is not set
+# CONFIG_CMD_FDT is not set
+# CONFIG_CMD_RUN is not set
+# CONFIG_CMD_XIMG is not set
+# CONFIG_CMD_EXPORTENV is not set
+# CONFIG_CMD_IMPORTENV is not set
+# CONFIG_CMD_EDITENV is not set
+# CONFIG_CMD_SAVEENV is not set
+# CONFIG_CMD_ENV_EXISTS is not set
+# CONFIG_CMD_CRC32 is not set
+# CONFIG_CMD_DM is not set
+# CONFIG_CMD_LOADS is not set
+# CONFIG_CMD_ECHO is not set
+# CONFIG_CMD_ITEST is not set
+# CONFIG_CMD_SOURCE is not set
+# CONFIG_CMD_SETEXPR is not set
+# CONFIG_CMD_SLEEP is not set
+# CONFIG_ISO_PARTITION is not set
+# CONFIG_OF_TAG_MIGRATE is not set
+CONFIG_SYS_RELOC_GD_ENV_ADDR=y
+CONFIG_NO_NET=y
+CONFIG_CLK=y
+# CONFIG_GPIO is not set
+# CONFIG_I2C is not set
+# CONFIG_INPUT is not set
+# CONFIG_POWER is not set
+CONFIG_DM_SERIAL=y
+CONFIG_SYS_NS16550=y
+# CONFIG_GZIP is not set
--- /dev/null
+++ b/include/configs/nec_ar9344_aterm.h +++ b/include/configs/nec_ar9344_aterm.h
@@ -0,0 +1,28 @@ @@ -0,0 +1,28 @@
+/* SPDX-License-Identifier: GPL-2.0+ */ +/* SPDX-License-Identifier: GPL-2.0+ */

View File

@ -0,0 +1,68 @@
Subject: [PATCH] mtd: spinand: esmt: add support for F50L1G41LC
This adds support for ESMT F50L1G41LC, which appears to be an updated
version of the already supported F50L1G41LB.
Add esmt_8c SPI_NAND manufacturer to account for the newly used vendor
ID with support for the ESMT F50L1G41LC chip.
--- a/drivers/mtd/nand/spi/core.c
+++ b/drivers/mtd/nand/spi/core.c
@@ -895,6 +895,7 @@ static const struct spinand_manufacturer
&toshiba_spinand_manufacturer,
&winbond_spinand_manufacturer,
&esmt_c8_spinand_manufacturer,
+ &esmt_8c_spinand_manufacturer,
&foresee_spinand_manufacturer,
&xtx_spinand_manufacturer,
};
--- a/drivers/mtd/nand/spi/esmt.c
+++ b/drivers/mtd/nand/spi/esmt.c
@@ -13,6 +13,7 @@
/* ESMT uses GigaDevice 0xc8 JECDEC ID on some SPI NANDs */
#define SPINAND_MFR_ESMT_C8 0xc8
+#define SPINAND_MFR_ESMT_8C 0x8c
static SPINAND_OP_VARIANTS(read_cache_variants,
SPINAND_PAGE_READ_FROM_CACHE_X4_OP(0, 1, NULL, 0),
@@ -104,6 +105,18 @@ static const struct mtd_ooblayout_ops f5
.rfree = f50l1g41lb_ooblayout_free,
};
+static const struct spinand_info esmt_8c_spinand_table[] = {
+ SPINAND_INFO("F50L1G41LC",
+ SPINAND_ID(SPINAND_READID_METHOD_OPCODE_ADDR, 0x2C),
+ NAND_MEMORG(1, 2048, 64, 64, 1024, 20, 1, 1, 1),
+ NAND_ECCREQ(1, 512),
+ SPINAND_INFO_OP_VARIANTS(&read_cache_variants,
+ &write_cache_variants,
+ &update_cache_variants),
+ 0,
+ SPINAND_ECCINFO(&f50l1g41lb_ooblayout, NULL)),
+};
+
static const struct spinand_info esmt_c8_spinand_table[] = {
SPINAND_INFO("F50L1G41LB",
SPINAND_ID(SPINAND_READID_METHOD_OPCODE_ADDR, 0x01),
@@ -135,3 +148,11 @@ const struct spinand_manufacturer esmt_c
.nchips = ARRAY_SIZE(esmt_c8_spinand_table),
.ops = &esmt_spinand_manuf_ops,
};
+
+const struct spinand_manufacturer esmt_8c_spinand_manufacturer = {
+ .id = SPINAND_MFR_ESMT_8C,
+ .name = "ESMT",
+ .chips = esmt_8c_spinand_table,
+ .nchips = ARRAY_SIZE(esmt_8c_spinand_table),
+ .ops = &esmt_spinand_manuf_ops,
+};
--- a/include/linux/mtd/spinand.h
+++ b/include/linux/mtd/spinand.h
@@ -306,6 +306,7 @@ extern const struct spinand_manufacturer
extern const struct spinand_manufacturer toshiba_spinand_manufacturer;
extern const struct spinand_manufacturer winbond_spinand_manufacturer;
extern const struct spinand_manufacturer esmt_c8_spinand_manufacturer;
+extern const struct spinand_manufacturer esmt_8c_spinand_manufacturer;
extern const struct spinand_manufacturer foresee_spinand_manufacturer;
extern const struct spinand_manufacturer xtx_spinand_manufacturer;

View File

@ -22,6 +22,13 @@ define U-Boot/Default
HIDDEN:=1 HIDDEN:=1
endef endef
define U-Boot/mox
NAME:=CZ.NIC Turris Mox
BUILD_DEVICES:=cznic_turris-mox
BUILD_SUBTARGET:=cortexa53
UBOOT_CONFIG:=turris_mox
endef
define U-Boot/clearfog define U-Boot/clearfog
NAME:=SolidRun ClearFog A1 NAME:=SolidRun ClearFog A1
BUILD_DEVICES:=solidrun_clearfog-base-a1 solidrun_clearfog-pro-a1 BUILD_DEVICES:=solidrun_clearfog-base-a1 solidrun_clearfog-pro-a1
@ -69,6 +76,7 @@ define U-Boot/rb5009
endef endef
UBOOT_TARGETS:= \ UBOOT_TARGETS:= \
mox \
clearfog \ clearfog \
helios4 \ helios4 \
omnia \ omnia \

View File

@ -7,10 +7,10 @@
include $(TOPDIR)/rules.mk include $(TOPDIR)/rules.mk
PKG_VERSION:=2025.07 PKG_VERSION:=2025.10
PKG_RELEASE:=1 PKG_RELEASE:=1
PKG_HASH:=0f933f6c5a426895bf306e93e6ac53c60870e4b54cda56d95211bec99e63bec7 PKG_HASH:=b4f032848e56cc8f213ad59f9132c084dbbb632bc29176d024e58220e0efdf4a
PKG_MAINTAINER:=Thomas Richard <thomas.richard@bootlin.com> PKG_MAINTAINER:=Thomas Richard <thomas.richard@bootlin.com>
UBOOT_USE_INTREE_DTC:=1 UBOOT_USE_INTREE_DTC:=1

View File

@ -1,27 +0,0 @@
From 1cdb64ad3aa9d6cd4a02adc09fcc1015f90e2fb9 Mon Sep 17 00:00:00 2001
From: Patrice Chotard <patrice.chotard@foss.st.com>
Date: Mon, 9 Jun 2025 14:53:13 +0200
Subject: [PATCH] configs: stm32mp13: increase SYS_MALLOC_F_LEN to 0x210000
Due SCMI update to protocol v2.0, we need to increase
SYS_MALLOC_F_LEN value to avoid following message:
alloc space exhausted ptr 200040 limit 200000
Set SYS_MALLOC_F_LEN to 0x210000 to fix this issue.
Signed-off-by: Patrice Chotard <patrice.chotard@foss.st.com>
---
configs/stm32mp13_defconfig | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
--- a/configs/stm32mp13_defconfig
+++ b/configs/stm32mp13_defconfig
@@ -1,7 +1,7 @@
CONFIG_ARM=y
CONFIG_ARCH_STM32MP=y
CONFIG_TFABOOT=y
-CONFIG_SYS_MALLOC_F_LEN=0x180000
+CONFIG_SYS_MALLOC_F_LEN=0x210000
CONFIG_CUSTOM_SYS_INIT_SP_ADDR=0xc0400000
CONFIG_ENV_OFFSET=0x900000
CONFIG_DEFAULT_DEVICE_TREE="st/stm32mp135f-dk"

View File

@ -94,6 +94,7 @@ konka,komi-a31)
;; ;;
buffalo,wsr-6000ax8|\ buffalo,wsr-6000ax8|\
mercusys,mr80x-v3|\ mercusys,mr80x-v3|\
mercusys,mr85x|\
mercusys,mr90x-v1|\ mercusys,mr90x-v1|\
routerich,ax3000|\ routerich,ax3000|\
routerich,ax3000-v1|\ routerich,ax3000-v1|\

View File

@ -11,7 +11,8 @@ case "$board" in
aliyun,ap8220|\ aliyun,ap8220|\
compex,wpq873|\ compex,wpq873|\
edgecore,eap102|\ edgecore,eap102|\
zyxel,nbg7815) zyxel,nbg7815|\
zyxel,nwa210ax)
ubootenv_add_mtd "0:appsblenv" "0x0" "0x10000" "0x10000" ubootenv_add_mtd "0:appsblenv" "0x0" "0x10000" "0x10000"
;; ;;
dynalink,dl-wrx36|\ dynalink,dl-wrx36|\

View File

@ -24,7 +24,7 @@ define Package/kselftests-bpf
SECTION:=devel SECTION:=devel
CATEGORY:=Development CATEGORY:=Development
DEPENDS:= \ DEPENDS:= \
+libelf +zlib +libpthread +librt +!LINUX_6_6:libpcap @!IN_SDK \ +libelf +zlib +libpthread +librt +libpcap @!IN_SDK \
@KERNEL_DEBUG_FS @KERNEL_DEBUG_INFO_BTF @KERNEL_BPF_EVENTS @KERNEL_DEBUG_FS @KERNEL_DEBUG_INFO_BTF @KERNEL_BPF_EVENTS
TITLE:=Linux Kernel Selftests (BPF) TITLE:=Linux Kernel Selftests (BPF)
URL:=http://www.kernel.org URL:=http://www.kernel.org

View File

@ -63,8 +63,8 @@ define Build/Compile
endef endef
define Package/ath11k-firmware-ipq5018/install define Package/ath11k-firmware-ipq5018/install
$(INSTALL_DIR) $(1)/lib/firmware/IPQ5018/hw1.0 $(INSTALL_DIR) $(1)/lib/firmware/ath11k/IPQ5018/hw1.0
$(INSTALL_DATA) $(PKG_BUILD_DIR)/IPQ5018/hw1.0/* $(1)/lib/firmware/IPQ5018/ $(INSTALL_DATA) $(PKG_BUILD_DIR)/IPQ5018/hw1.0/* $(1)/lib/firmware/ath11k/IPQ5018/hw1.0/
endef endef
define Package/ath11k-firmware-ipq6018/install define Package/ath11k-firmware-ipq6018/install

View File

@ -105,6 +105,7 @@ ALLWIFIBOARDS:= \
zte_mf287 \ zte_mf287 \
zte_mf287plus \ zte_mf287plus \
zyxel_nbg7815 \ zyxel_nbg7815 \
zyxel_nwa210ax \
anysafe_e1 \ anysafe_e1 \
cmiot_ax18 \ cmiot_ax18 \
jdcloud_re-ss-01 \ jdcloud_re-ss-01 \
@ -296,6 +297,7 @@ $(eval $(call generate-ipq-wifi-package,zte_mf286c,ZTE MF286C))
$(eval $(call generate-ipq-wifi-package,zte_mf287,ZTE MF287)) $(eval $(call generate-ipq-wifi-package,zte_mf287,ZTE MF287))
$(eval $(call generate-ipq-wifi-package,zte_mf287plus,ZTE MF287Plus)) $(eval $(call generate-ipq-wifi-package,zte_mf287plus,ZTE MF287Plus))
$(eval $(call generate-ipq-wifi-package,zyxel_nbg7815,Zyxel NBG7815)) $(eval $(call generate-ipq-wifi-package,zyxel_nbg7815,Zyxel NBG7815))
$(eval $(call generate-ipq-wifi-package,zyxel_nwa210ax,Zyxel NWA210AX))
$(eval $(call generate-ipq-wifi-package,anysafe_e1,AnySafe E1)) $(eval $(call generate-ipq-wifi-package,anysafe_e1,AnySafe E1))
$(eval $(call generate-ipq-wifi-package,cmiot_ax18,CMIOT AX18)) $(eval $(call generate-ipq-wifi-package,cmiot_ax18,CMIOT AX18))
$(eval $(call generate-ipq-wifi-package,jdcloud_re-ss-01,JDCloud RE-SS-01)) $(eval $(call generate-ipq-wifi-package,jdcloud_re-ss-01,JDCloud RE-SS-01))

View File

@ -13,7 +13,7 @@ include $(INCLUDE_DIR)/kernel.mk
PKG_NAME:=linux PKG_NAME:=linux
PKG_PATCHVER:=6.6 PKG_PATCHVER:=6.12
# Manually include kernel version and hash from kernel details file # Manually include kernel version and hash from kernel details file
GENERIC_PLATFORM_DIR := $(CURDIR)/../../../target/linux/generic GENERIC_PLATFORM_DIR := $(CURDIR)/../../../target/linux/generic
@ -67,6 +67,10 @@ define Build/Patch
$(Kernel/Patch/Default) $(Kernel/Patch/Default)
endef endef
define Quilt/Refresh/Package
$(Quilt/Refresh/Kernel)
endef
BPF_DOC = $(PKG_BUILD_DIR)/scripts/bpf_doc.py BPF_DOC = $(PKG_BUILD_DIR)/scripts/bpf_doc.py
define Build/Configure/64 define Build/Configure/64

View File

@ -1,6 +1,6 @@
--- a/arch/mips/Kconfig --- a/arch/mips/Kconfig
+++ b/arch/mips/Kconfig +++ b/arch/mips/Kconfig
@@ -2820,6 +2820,9 @@ choice @@ -2809,6 +2809,9 @@ choice
config HZ_256 config HZ_256
bool "256 HZ" if SYS_SUPPORTS_256HZ || SYS_SUPPORTS_ARBIT_HZ bool "256 HZ" if SYS_SUPPORTS_256HZ || SYS_SUPPORTS_ARBIT_HZ
@ -10,7 +10,7 @@
config HZ_1000 config HZ_1000
bool "1000 HZ" if SYS_SUPPORTS_1000HZ || SYS_SUPPORTS_ARBIT_HZ bool "1000 HZ" if SYS_SUPPORTS_1000HZ || SYS_SUPPORTS_ARBIT_HZ
@@ -2871,6 +2874,7 @@ config HZ @@ -2860,6 +2863,7 @@ config HZ
default 128 if HZ_128 default 128 if HZ_128
default 250 if HZ_250 default 250 if HZ_250
default 256 if HZ_256 default 256 if HZ_256

View File

@ -72,7 +72,7 @@ extern u64 uevent_next_seqnum(void);
.name = (_name), \ .name = (_name), \
} }
static struct bh_map button_map[] = { static const struct bh_map button_map[] = {
BH_MAP(BTN_0, "BTN_0"), BH_MAP(BTN_0, "BTN_0"),
BH_MAP(BTN_1, "BTN_1"), BH_MAP(BTN_1, "BTN_1"),
BH_MAP(BTN_2, "BTN_2"), BH_MAP(BTN_2, "BTN_2"),

View File

@ -72,7 +72,7 @@ extern u64 uevent_next_seqnum(void);
.name = (_name), \ .name = (_name), \
} }
static struct bh_map button_map[] = { static const struct bh_map button_map[] = {
BH_MAP(BTN_0, "BTN_0"), BH_MAP(BTN_0, "BTN_0"),
BH_MAP(BTN_1, "BTN_1"), BH_MAP(BTN_1, "BTN_1"),
BH_MAP(BTN_2, "BTN_2"), BH_MAP(BTN_2, "BTN_2"),
@ -463,13 +463,12 @@ static int gpio_keys_button_probe(struct platform_device *pdev,
return -EINVAL; return -EINVAL;
} }
buttons = devm_kzalloc(dev, pdata->nbuttons * sizeof(struct gpio_keys_button), buttons = devm_kmemdup_array(dev, pdata->buttons, pdata->nbuttons, sizeof(struct gpio_keys_button),
GFP_KERNEL); GFP_KERNEL);
if (!buttons) { if (!buttons) {
dev_err(dev, "no memory for button data\n"); dev_err(dev, "no memory for button data\n");
return -ENOMEM; return -ENOMEM;
} }
memcpy(buttons, pdata->buttons, pdata->nbuttons * sizeof(struct gpio_keys_button));
bdev = devm_kzalloc(dev, sizeof(struct gpio_keys_button_dev) + bdev = devm_kzalloc(dev, sizeof(struct gpio_keys_button_dev) +
pdata->nbuttons * sizeof(struct gpio_keys_button_data), pdata->nbuttons * sizeof(struct gpio_keys_button_data),

View File

@ -1286,8 +1286,7 @@ IFX_MEI_RunAdslModem (DSL_DEV_Device_t *pDev)
// DSL_DEV_WinHost_Message_t m; // DSL_DEV_WinHost_Message_t m;
if (mei_arc_swap_buff == NULL) { if (mei_arc_swap_buff == NULL) {
mei_arc_swap_buff = mei_arc_swap_buff = kmalloc (MAXSWAPSIZE * 4, GFP_KERNEL);
(u32 *) kmalloc (MAXSWAPSIZE * 4, GFP_KERNEL);
if (mei_arc_swap_buff == NULL) { if (mei_arc_swap_buff == NULL) {
IFX_MEI_EMSG (">>> malloc fail for codeswap buff!!! <<<\n"); IFX_MEI_EMSG (">>> malloc fail for codeswap buff!!! <<<\n");
return DSL_DEV_MEI_ERR_FAILURE; return DSL_DEV_MEI_ERR_FAILURE;

View File

@ -418,7 +418,7 @@ typedef struct _arc_img_hdr {
u32 size; // Size of binary image in bytes u32 size; // Size of binary image in bytes
u32 checksum; // Checksum for image u32 checksum; // Checksum for image
u32 count; // Count of swp pages in image u32 count; // Count of swp pages in image
ARC_SWP_PAGE_HDR page[1]; // Should be "count" pages - '1' to make compiler happy ARC_SWP_PAGE_HDR page[]; // Should be "count" pages - '1' to make compiler happy
} ARC_IMG_HDR; } ARC_IMG_HDR;
typedef struct smmu_mem_info { typedef struct smmu_mem_info {

View File

@ -224,8 +224,8 @@ static inline int pp32_download_code(u32 *code_src, unsigned int code_dword_len,
{ {
volatile u32 *dest; volatile u32 *dest;
if ( code_src == 0 || ((unsigned long)code_src & 0x03) != 0 if (!code_src || ((unsigned long)code_src & 0x03) != 0
|| data_src == 0 || ((unsigned long)data_src & 0x03) != 0 ) || !data_src || ((unsigned long)data_src & 0x03) != 0 )
return -1; return -1;
if ( code_dword_len <= CDM_CODE_MEMORYn_DWLEN(0) ) if ( code_dword_len <= CDM_CODE_MEMORYn_DWLEN(0) )

View File

@ -163,8 +163,8 @@ static inline int pp32_download_code(u32 *code_src, unsigned int code_dword_len,
{ {
volatile u32 *dest; volatile u32 *dest;
if ( code_src == 0 || ((unsigned long)code_src & 0x03) != 0 if (!code_src || ((unsigned long)code_src & 0x03) != 0
|| data_src == 0 || ((unsigned long)data_src & 0x03) != 0 ) || !data_src || ((unsigned long)data_src & 0x03) != 0 )
return -1; return -1;
if ( code_dword_len <= CDM_CODE_MEMORYn_DWLEN(0) ) if ( code_dword_len <= CDM_CODE_MEMORYn_DWLEN(0) )

View File

@ -110,8 +110,8 @@ static inline int danube_pp32_download_code(u32 *code_src, unsigned int code_dwo
{ {
volatile u32 *dest; volatile u32 *dest;
if ( code_src == 0 || ((unsigned long)code_src & 0x03) != 0 if (!code_src || ((unsigned long)code_src & 0x03) != 0
|| data_src == 0 || ((unsigned long)data_src & 0x03) != 0 ) || !data_src || ((unsigned long)data_src & 0x03) != 0 )
return -1; return -1;
if ( code_dword_len <= CDM_CODE_MEMORYn_DWLEN(0) ) if ( code_dword_len <= CDM_CODE_MEMORYn_DWLEN(0) )

View File

@ -34,7 +34,7 @@
#define ATM_FW_VER_MINOR 16 #define ATM_FW_VER_MINOR 16
static unsigned int firmware_binary_code[] = { static const unsigned int firmware_binary_code[] = {
0x800004b8, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x800004b8, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x8000ffe0, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x8000ffe0, 0x00000000, 0x00000000, 0x00000000,
0xc1000002, 0xd90c00f8, 0xc2000002, 0xda0800f9, 0x80004cc8, 0xc2000000, 0xda0800f9, 0x80004330, 0xc1000002, 0xd90c00f8, 0xc2000002, 0xda0800f9, 0x80004cc8, 0xc2000000, 0xda0800f9, 0x80004330,
@ -450,7 +450,7 @@ static unsigned int firmware_binary_code[] = {
0x9d000000, 0xcd4000f8, 0x00000000, 0x00000000, 0x9d000000, 0x4158a000, 0xcd4000f8, 0x00000000, 0x9d000000, 0xcd4000f8, 0x00000000, 0x00000000, 0x9d000000, 0x4158a000, 0xcd4000f8, 0x00000000,
}; };
static unsigned int firmware_binary_data[] = { static const unsigned int firmware_binary_data[] = {
}; };

View File

@ -32,7 +32,7 @@
#define ATM_FW_VER_MINOR 16 #define ATM_FW_VER_MINOR 16
static unsigned int ar9_fw_bin[] = { static const unsigned int ar9_fw_bin[] = {
0x800004b8, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x800004b8, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x8000ffe0, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x8000ffe0, 0x00000000, 0x00000000, 0x00000000,
0xc1000002, 0xd90c00f8, 0xc2000002, 0xda0800f9, 0x80004980, 0xc2000000, 0xda0800f9, 0x80003fe8, 0xc1000002, 0xd90c00f8, 0xc2000002, 0xda0800f9, 0x80004980, 0xc2000000, 0xda0800f9, 0x80003fe8,
@ -432,7 +432,7 @@ static unsigned int ar9_fw_bin[] = {
0xcd4000f8, 0x00000000, 0xcd4000f8, 0x00000000,
}; };
static unsigned int ar9_fw_data[] = { static const unsigned int ar9_fw_data[] = {
}; };

View File

@ -32,7 +32,7 @@
#define ATM_FW_VER_MINOR 15 #define ATM_FW_VER_MINOR 15
static unsigned int firmware_binary_code[] = { static const unsigned int firmware_binary_code[] = {
0x800004B8, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x800004B8, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x8000FFE0, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x8000FFE0, 0x00000000, 0x00000000, 0x00000000,
0xC1000002, 0xD90C00F8, 0xC2000002, 0xDA0800F9, 0xC0001B50, 0x8C100000, 0x00000000, 0x00000000, 0xC1000002, 0xD90C00F8, 0xC2000002, 0xDA0800F9, 0xC0001B50, 0x8C100000, 0x00000000, 0x00000000,
@ -604,7 +604,7 @@ static unsigned int firmware_binary_code[] = {
0xCDC000F8, 0xC1C00000, 0xC0004734, 0x9CC00000, 0xCDC000F8, 0xC0004732, 0xCD8000F8, 0xCDC000F8, 0xC1C00000, 0xC0004734, 0x9CC00000, 0xCDC000F8, 0xC0004732, 0xCD8000F8,
}; };
static unsigned int firmware_binary_data[] = { static const unsigned int firmware_binary_data[] = {
}; };

View File

@ -35,7 +35,7 @@
// add multiple queue per PVC feature // add multiple queue per PVC feature
static unsigned int danube_fw_bin[] = { static const unsigned int danube_fw_bin[] = {
0x800004A0, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x800004A0, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x8000FFC8, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x8000FFC8, 0x00000000, 0x00000000, 0x00000000,
0xC1000002, 0xD90C0000, 0xC2000002, 0xDA080001, 0x80004968, 0xC2000000, 0xDA080001, 0x80003FD0, 0xC1000002, 0xD90C0000, 0xC2000002, 0xDA080001, 0x80004968, 0xC2000000, 0xDA080001, 0x80003FD0,
@ -435,7 +435,7 @@ static unsigned int danube_fw_bin[] = {
0xCD400000, 0x00000000, 0xCD400000, 0x00000000,
}; };
static unsigned int danube_fw_data[] = { static const unsigned int danube_fw_data[] = {
}; };

View File

@ -33,7 +33,7 @@
#define ATM_FW_VER_MINOR 15 #define ATM_FW_VER_MINOR 15
static unsigned int firmware_binary_code[] = { static const unsigned int firmware_binary_code[] = {
0x800004A0, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x800004A0, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x8000FFC8, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x8000FFC8, 0x00000000, 0x00000000, 0x00000000,
0xC1000002, 0xD90C0000, 0xC2000002, 0xDA080001, 0xC0001B50, 0x8C100000, 0x00000000, 0x00000000, 0xC1000002, 0xD90C0000, 0xC2000002, 0xDA080001, 0xC0001B50, 0x8C100000, 0x00000000, 0x00000000,
@ -605,7 +605,7 @@ static unsigned int firmware_binary_code[] = {
0xCDC00000, 0xC1C00000, 0xC0004734, 0x9CC00000, 0xCDC00000, 0xC0004732, 0xCD800000, 0xCDC00000, 0xC1C00000, 0xC0004734, 0x9CC00000, 0xCDC00000, 0xC0004732, 0xCD800000,
}; };
static unsigned int firmware_binary_data[] = { static const unsigned int firmware_binary_data[] = {
}; };

View File

@ -32,7 +32,7 @@
#define ATM_FW_VER_MINOR 24 #define ATM_FW_VER_MINOR 24
static u32 vr9_fw_bin[] = { static const u32 vr9_fw_bin[] = {
0x800004B8, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x800004B8, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x8000FFE0, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x8000FFE0, 0x00000000, 0x00000000, 0x00000000,
0xC1000002, 0xD90C00F8, 0xC2000002, 0xDA0800F9, 0x80004390, 0xC2000000, 0xDA0800F9, 0x80003A10, 0xC1000002, 0xD90C00F8, 0xC2000002, 0xDA0800F9, 0x80004390, 0xC2000000, 0xDA0800F9, 0x80003A10,
@ -419,7 +419,7 @@ static u32 vr9_fw_bin[] = {
0xCE0000F8, 0xC000697E, 0xCE4000F8, 0x9D000000, 0x4158A000, 0xCD4000F8, 0x00000000, 0xCE0000F8, 0xC000697E, 0xCE4000F8, 0x9D000000, 0x4158A000, 0xCD4000F8, 0x00000000,
}; };
static u32 vr9_fw_data[] = { static const u32 vr9_fw_data[] = {
}; };

View File

@ -96,8 +96,8 @@ static inline int vr9_pp32_download_code(int pp32, u32 *code_src, unsigned int c
unsigned int clr, set; unsigned int clr, set;
volatile u32 *dest; volatile u32 *dest;
if ( code_src == 0 || ((unsigned long)code_src & 0x03) != 0 if (!code_src || ((unsigned long)code_src & 0x03) != 0
|| data_src == 0 || ((unsigned long)data_src & 0x03) != 0 ) || !data_src || ((unsigned long)data_src & 0x03) != 0 )
return -1; return -1;
clr = pp32 ? 0xF0 : 0x0F; clr = pp32 ? 0xF0 : 0x0F;

View File

@ -1503,17 +1503,10 @@ static inline void clear_priv_data(void)
} }
} }
if ( g_atm_priv_data.tx_skb_base != NULL ) kfree(g_atm_priv_data.tx_skb_base);
kfree(g_atm_priv_data.tx_skb_base); kfree(g_atm_priv_data.tx_desc_base);
kfree(g_atm_priv_data.oam_buf_base);
if ( g_atm_priv_data.tx_desc_base != NULL ) kfree(g_atm_priv_data.oam_desc_base);
kfree(g_atm_priv_data.tx_desc_base);
if ( g_atm_priv_data.oam_buf_base != NULL )
kfree(g_atm_priv_data.oam_buf_base);
if ( g_atm_priv_data.oam_desc_base != NULL )
kfree(g_atm_priv_data.oam_desc_base);
if ( g_atm_priv_data.aal_desc_base != NULL ) { if ( g_atm_priv_data.aal_desc_base != NULL ) {
for ( i = 0; i < dma_rx_descriptor_length; i++ ) { for ( i = 0; i < dma_rx_descriptor_length; i++ ) {
@ -1522,8 +1515,9 @@ static inline void clear_priv_data(void)
dev_kfree_skb_any(skb); dev_kfree_skb_any(skb);
} }
} }
kfree(g_atm_priv_data.aal_desc_base);
} }
kfree(g_atm_priv_data.aal_desc_base);
} }
static inline void init_rx_tables(void) static inline void init_rx_tables(void)

View File

@ -276,7 +276,7 @@ void ifx_deu_aes (void *ctx_arg, u8 *out_arg, const u8 *in_arg,
aes->IV2R = DEU_ENDIAN_SWAP(*((u32 *) iv_arg + 1)); aes->IV2R = DEU_ENDIAN_SWAP(*((u32 *) iv_arg + 1));
aes->IV1R = DEU_ENDIAN_SWAP(*((u32 *) iv_arg + 2)); aes->IV1R = DEU_ENDIAN_SWAP(*((u32 *) iv_arg + 2));
aes->IV0R = DEU_ENDIAN_SWAP(*((u32 *) iv_arg + 3)); aes->IV0R = DEU_ENDIAN_SWAP(*((u32 *) iv_arg + 3));
}; }
i = 0; i = 0;
@ -1529,7 +1529,7 @@ static int aes_cbcmac_init_tfm(struct crypto_tfm *tfm)
{ {
struct aes_ctx *mctx = crypto_tfm_ctx(tfm); struct aes_ctx *mctx = crypto_tfm_ctx(tfm);
mctx->temp = kzalloc(AES_BLOCK_SIZE * AES_CBCMAC_DBN_TEMP_SIZE, GFP_KERNEL); mctx->temp = kzalloc(AES_BLOCK_SIZE * AES_CBCMAC_DBN_TEMP_SIZE, GFP_KERNEL);
if (IS_ERR(mctx->temp)) return PTR_ERR(mctx->temp); if (!mctx->temp) return -ENOMEM;
return 0; return 0;
} }

View File

@ -234,7 +234,7 @@ static int lq_deu_aes_core (void *ctx_arg, u8 *out_arg, const u8 *in_arg,
aes->IV2R = DEU_ENDIAN_SWAP(*((u32 *) iv_arg + 1)); aes->IV2R = DEU_ENDIAN_SWAP(*((u32 *) iv_arg + 1));
aes->IV1R = DEU_ENDIAN_SWAP(*((u32 *) iv_arg + 2)); aes->IV1R = DEU_ENDIAN_SWAP(*((u32 *) iv_arg + 2));
aes->IV0R = DEU_ENDIAN_SWAP(*((u32 *) iv_arg + 3)); aes->IV0R = DEU_ENDIAN_SWAP(*((u32 *) iv_arg + 3));
}; }
/* Prepare Rx buf length used in dma psuedo interrupt */ /* Prepare Rx buf length used in dma psuedo interrupt */
@ -251,7 +251,7 @@ static int lq_deu_aes_core (void *ctx_arg, u8 *out_arg, const u8 *in_arg,
while (aes->controlr.BUS) { while (aes->controlr.BUS) {
// wait for AES to be ready // wait for AES to be ready
}; }
deu_priv->outcopy = (u32 *) DEU_DWORD_REORDERING(out_arg, aes_buff_out, BUFFER_OUT, nbytes); deu_priv->outcopy = (u32 *) DEU_DWORD_REORDERING(out_arg, aes_buff_out, BUFFER_OUT, nbytes);
deu_priv->event_src = AES_ASYNC_EVENT; deu_priv->event_src = AES_ASYNC_EVENT;
@ -576,10 +576,7 @@ static int lq_aes_queue_mgr(struct aes_ctx *ctx, struct ablkcipher_request *areq
u32 remain, inc, nbytes = areq->nbytes; u32 remain, inc, nbytes = areq->nbytes;
u32 chunk_bytes = src->length; u32 chunk_bytes = src->length;
aes_con = kmalloc(sizeof(struct aes_container), GFP_KERNEL);
aes_con = (struct aes_container *)kmalloc(sizeof(struct aes_container),
GFP_KERNEL);
if (!(aes_con)) { if (!(aes_con)) {
printk("Cannot allocate memory for AES container, fn %s, ln %d\n", printk("Cannot allocate memory for AES container, fn %s, ln %d\n",
__func__, __LINE__); __func__, __LINE__);
@ -959,7 +956,7 @@ struct lq_aes_alg {
}; };
/* AES supported algo array */ /* AES supported algo array */
static struct lq_aes_alg aes_drivers_alg[] = { static const struct lq_aes_alg aes_drivers_alg[] = {
{ {
.alg = { .alg = {
.cra_name = "aes", .cra_name = "aes",

View File

@ -254,7 +254,7 @@ static int lq_deu_des_core (void *ctx_arg, u8 *out_arg, const u8 *in_arg,
if (mode > 0) { if (mode > 0) {
des->IVHR = DEU_ENDIAN_SWAP(*(u32 *) iv_arg); des->IVHR = DEU_ENDIAN_SWAP(*(u32 *) iv_arg);
des->IVLR = DEU_ENDIAN_SWAP(*((u32 *) iv_arg + 1)); des->IVLR = DEU_ENDIAN_SWAP(*((u32 *) iv_arg + 1));
}; }
/* memory alignment issue */ /* memory alignment issue */
dword_mem_aligned_in = (u32 *) DEU_DWORD_REORDERING(in_arg, des_buff_in, BUFFER_IN, nbytes); dword_mem_aligned_in = (u32 *) DEU_DWORD_REORDERING(in_arg, des_buff_in, BUFFER_IN, nbytes);
@ -268,7 +268,7 @@ static int lq_deu_des_core (void *ctx_arg, u8 *out_arg, const u8 *in_arg,
dma->controlr.EN = 1; dma->controlr.EN = 1;
while (des->controlr.BUS) { while (des->controlr.BUS) {
}; }
wlen = dma_device_write (dma_device, (u8 *) dword_mem_aligned_in, nbytes, NULL); wlen = dma_device_write (dma_device, (u8 *) dword_mem_aligned_in, nbytes, NULL);
if (wlen != nbytes) { if (wlen != nbytes) {
@ -287,7 +287,7 @@ static int lq_deu_des_core (void *ctx_arg, u8 *out_arg, const u8 *in_arg,
if (mode > 0) { if (mode > 0) {
*(u32 *) iv_arg = DEU_ENDIAN_SWAP(des->IVHR); *(u32 *) iv_arg = DEU_ENDIAN_SWAP(des->IVHR);
*((u32 *) iv_arg + 1) = DEU_ENDIAN_SWAP(des->IVLR); *((u32 *) iv_arg + 1) = DEU_ENDIAN_SWAP(des->IVLR);
}; }
CRTCL_SECT_END; CRTCL_SECT_END;
@ -578,9 +578,7 @@ static int lq_queue_mgr(struct des_ctx *ctx, struct ablkcipher_request *areq,
u32 remain, inc, nbytes = areq->nbytes; u32 remain, inc, nbytes = areq->nbytes;
u32 chunk_bytes = src->length; u32 chunk_bytes = src->length;
des_con = (struct des_container *)kmalloc(sizeof(struct des_container), des_con = kmalloc(sizeof(struct des_container), GFP_KERNEL);
GFP_KERNEL);
if (!(des_con)) { if (!(des_con)) {
printk("Cannot allocate memory for AES container, fn %s, ln %d\n", printk("Cannot allocate memory for AES container, fn %s, ln %d\n",
__func__, __LINE__); __func__, __LINE__);
@ -756,7 +754,7 @@ struct lq_des_alg {
}; };
/* DES Supported algo array */ /* DES Supported algo array */
static struct lq_des_alg des_drivers_alg [] = { static const struct lq_des_alg des_drivers_alg [] = {
{ {
.alg = { .alg = {
.cra_name = "des", .cra_name = "des",

View File

@ -229,7 +229,7 @@ void ifx_deu_des (void *ctx_arg, u8 *out_arg, const u8 *in_arg,
if (mode > 0) { if (mode > 0) {
des->IVHR = DEU_ENDIAN_SWAP(*(u32 *) iv_arg); des->IVHR = DEU_ENDIAN_SWAP(*(u32 *) iv_arg);
des->IVLR = DEU_ENDIAN_SWAP(*((u32 *) iv_arg + 1)); des->IVLR = DEU_ENDIAN_SWAP(*((u32 *) iv_arg + 1));
}; }
nblocks = nbytes / 4; nblocks = nbytes / 4;
@ -260,7 +260,7 @@ void ifx_deu_des (void *ctx_arg, u8 *out_arg, const u8 *in_arg,
if (mode > 0) { if (mode > 0) {
*(u32 *) iv_arg = DEU_ENDIAN_SWAP(des->IVHR); *(u32 *) iv_arg = DEU_ENDIAN_SWAP(des->IVHR);
*((u32 *) iv_arg + 1) = DEU_ENDIAN_SWAP(des->IVLR); *((u32 *) iv_arg + 1) = DEU_ENDIAN_SWAP(des->IVLR);
}; }
CRTCL_SECT_END; CRTCL_SECT_END;
} }

View File

@ -87,8 +87,8 @@
volatile struct aes_t *aes = (volatile struct aes_t *) AES_START; \ volatile struct aes_t *aes = (volatile struct aes_t *) AES_START; \
for (i = 0; i < 10; i++) \ for (i = 0; i < 10; i++) \
udelay(DELAY_PERIOD); \ udelay(DELAY_PERIOD); \
while (dma->controlr.BSY) {}; \ while (dma->controlr.BSY) {} \
while (aes->controlr.BUS) {}; \ while (aes->controlr.BUS) {} \
} while (0) } while (0)
#define WAIT_DES_DMA_READY() \ #define WAIT_DES_DMA_READY() \
@ -98,8 +98,8 @@
volatile struct des_t *des = (struct des_t *) DES_3DES_START; \ volatile struct des_t *des = (struct des_t *) DES_3DES_START; \
for (i = 0; i < 10; i++) \ for (i = 0; i < 10; i++) \
udelay(DELAY_PERIOD); \ udelay(DELAY_PERIOD); \
while (dma->controlr.BSY) {}; \ while (dma->controlr.BSY) {} \
while (des->controlr.BUS) {}; \ while (des->controlr.BUS) {} \
} while (0) } while (0)
#define AES_DMA_MISC_CONFIG() \ #define AES_DMA_MISC_CONFIG() \

View File

@ -81,8 +81,8 @@
volatile struct aes_t *aes = (volatile struct aes_t *) AES_START; \ volatile struct aes_t *aes = (volatile struct aes_t *) AES_START; \
for (i = 0; i < 10; i++) \ for (i = 0; i < 10; i++) \
udelay(DELAY_PERIOD); \ udelay(DELAY_PERIOD); \
while (dma->controlr.BSY) {}; \ while (dma->controlr.BSY) {} \
while (aes->controlr.BUS) {}; \ while (aes->controlr.BUS) {} \
} while (0) } while (0)
#define WAIT_DES_DMA_READY() \ #define WAIT_DES_DMA_READY() \
@ -92,8 +92,8 @@
volatile struct des_t *des = (struct des_t *) DES_3DES_START; \ volatile struct des_t *des = (struct des_t *) DES_3DES_START; \
for (i = 0; i < 10; i++) \ for (i = 0; i < 10; i++) \
udelay(DELAY_PERIOD); \ udelay(DELAY_PERIOD); \
while (dma->controlr.BSY) {}; \ while (dma->controlr.BSY) {} \
while (des->controlr.BUS) {}; \ while (des->controlr.BUS) {} \
} while (0) } while (0)
#define SHA_HASH_INIT \ #define SHA_HASH_INIT \

View File

@ -102,8 +102,8 @@
volatile struct aes_t *aes = (volatile struct aes_t *) AES_START; \ volatile struct aes_t *aes = (volatile struct aes_t *) AES_START; \
for (i = 0; i < 10; i++) \ for (i = 0; i < 10; i++) \
udelay(DELAY_PERIOD); \ udelay(DELAY_PERIOD); \
while (dma->controlr.BSY) {}; \ while (dma->controlr.BSY) {} \
while (aes->controlr.BUS) {}; \ while (aes->controlr.BUS) {} \
} while (0) } while (0)
#define WAIT_DES_DMA_READY() \ #define WAIT_DES_DMA_READY() \
@ -113,8 +113,8 @@
volatile struct des_t *des = (struct des_t *) DES_3DES_START; \ volatile struct des_t *des = (struct des_t *) DES_3DES_START; \
for (i = 0; i < 10; i++) \ for (i = 0; i < 10; i++) \
udelay(DELAY_PERIOD); \ udelay(DELAY_PERIOD); \
while (dma->controlr.BSY) {}; \ while (dma->controlr.BSY) {} \
while (des->controlr.BUS) {}; \ while (des->controlr.BUS) {} \
} while (0) } while (0)
#define AES_DMA_MISC_CONFIG() \ #define AES_DMA_MISC_CONFIG() \

View File

@ -107,7 +107,7 @@ static void md5_transform(struct md5_ctx *mctx, u32 *hash, u32 const *in)
for (i = 0; i < 16; i++) { for (i = 0; i < 16; i++) {
hashs->MR = in[i]; hashs->MR = in[i];
// printk("in[%d]: %08x\n", i, in[i]); // printk("in[%d]: %08x\n", i, in[i]);
}; }
//wait for processing //wait for processing
while (hashs->controlr.BSY) { while (hashs->controlr.BSY) {

View File

@ -308,7 +308,7 @@ static int md5_hmac_final_impl(struct shash_desc *desc, u8 *out, bool hash_final
{ {
for (i = 0; i < 16; i++) { for (i = 0; i < 16; i++) {
hashs->MR = in[i]; hashs->MR = in[i];
}; }
hashs->controlr.GO = 1; hashs->controlr.GO = 1;
asm("sync"); asm("sync");
@ -355,9 +355,9 @@ static int md5_hmac_init_tfm(struct crypto_tfm *tfm)
{ {
struct md5_hmac_ctx *mctx = crypto_tfm_ctx(tfm); struct md5_hmac_ctx *mctx = crypto_tfm_ctx(tfm);
mctx->temp = kzalloc(4 * MD5_HMAC_DBN_TEMP_SIZE, GFP_KERNEL); mctx->temp = kzalloc(4 * MD5_HMAC_DBN_TEMP_SIZE, GFP_KERNEL);
if (IS_ERR(mctx->temp)) return PTR_ERR(mctx->temp); if (!mctx->temp) return -ENOMEM;
mctx->desc = kzalloc(sizeof(struct shash_desc), GFP_KERNEL); mctx->desc = kzalloc(sizeof(struct shash_desc), GFP_KERNEL);
if (IS_ERR(mctx->desc)) return PTR_ERR(mctx->desc); if (!mctx->desc) return -ENOMEM;
return 0; return 0;
} }

View File

@ -119,7 +119,7 @@ static void sha1_transform1 (struct sha1_ctx *sctx, u32 *state, const u32 *in)
for (i = 0; i < 16; i++) { for (i = 0; i < 16; i++) {
hashs->MR = in[i]; hashs->MR = in[i];
}; }
//wait for processing //wait for processing
while (hashs->controlr.BSY) { while (hashs->controlr.BSY) {

View File

@ -325,7 +325,7 @@ static int sha1_hmac_final_impl(struct shash_desc *desc, u8 *out, bool hash_fina
{ {
for (i = 0; i < 16; i++) { for (i = 0; i < 16; i++) {
hashs->MR = in[i]; hashs->MR = in[i];
}; }
hashs->controlr.GO = 1; hashs->controlr.GO = 1;
asm("sync"); asm("sync");
@ -376,9 +376,9 @@ static int sha1_hmac_init_tfm(struct crypto_tfm *tfm)
{ {
struct sha1_hmac_ctx *sctx = crypto_tfm_ctx(tfm); struct sha1_hmac_ctx *sctx = crypto_tfm_ctx(tfm);
sctx->temp = kzalloc(4 * SHA1_HMAC_DBN_TEMP_SIZE, GFP_KERNEL); sctx->temp = kzalloc(4 * SHA1_HMAC_DBN_TEMP_SIZE, GFP_KERNEL);
if (IS_ERR(sctx->temp)) return PTR_ERR(sctx->temp); if (!sctx->temp) return -ENOMEM;
sctx->desc = kzalloc(sizeof(struct shash_desc), GFP_KERNEL); sctx->desc = kzalloc(sizeof(struct shash_desc), GFP_KERNEL);
if (IS_ERR(sctx->desc)) return PTR_ERR(sctx->desc); if (!sctx->desc) return -ENOMEM;
return 0; return 0;
} }

View File

@ -38,7 +38,7 @@ static int alg_speed_test(const char *alg, const char *driver,
struct cipher_speed_template *t, struct cipher_speed_template *t,
unsigned int tcount, u8 *keysize); unsigned int tcount, u8 *keysize);
static struct cipher_speed_template des3_speed_template[] = { static const struct cipher_speed_template des3_speed_template[] = {
{ {
.key = "\x01\x23\x45\x67\x89\xab\xcd\xef" .key = "\x01\x23\x45\x67\x89\xab\xcd\xef"
"\x55\x55\x55\x55\x55\x55\x55\x55" "\x55\x55\x55\x55\x55\x55\x55\x55"
@ -50,18 +50,18 @@ static struct cipher_speed_template des3_speed_template[] = {
/* /*
* Cipher speed tests * Cipher speed tests
*/ */
static u8 speed_template_8[] = {8, 0}; static const u8 speed_template_8[] = {8, 0};
static u8 speed_template_24[] = {24, 0}; static const u8 speed_template_24[] = {24, 0};
static u8 speed_template_8_32[] = {8, 32, 0}; static const u8 speed_template_8_32[] = {8, 32, 0};
static u8 speed_template_16_32[] = {16, 32, 0}; static const u8 speed_template_16_32[] = {16, 32, 0};
static u8 speed_template_16_24_32[] = {16, 24, 32, 0}; static const u8 speed_template_16_24_32[] = {16, 24, 32, 0};
static u8 speed_template_32_40_48[] = {32, 40, 48, 0}; static const u8 speed_template_32_40_48[] = {32, 40, 48, 0};
static u8 speed_template_32_48_64[] = {32, 48, 64, 0}; static const u8 speed_template_32_48_64[] = {32, 48, 64, 0};
/* /*
* Digest speed tests * Digest speed tests
*/ */
static struct hash_speed generic_hash_speed_template[] = { static const struct hash_speed generic_hash_speed_template[] = {
{ .blen = 16, .plen = 16, }, { .blen = 16, .plen = 16, },
{ .blen = 64, .plen = 16, }, { .blen = 64, .plen = 16, },
{ .blen = 64, .plen = 64, }, { .blen = 64, .plen = 64, },

View File

@ -1360,14 +1360,9 @@ static INLINE void clear_priv_data(void)
} }
} }
if ( g_ptm_priv_data.rx_desc_base != NULL ) kfree(g_ptm_priv_data.rx_desc_base);
kfree(g_ptm_priv_data.rx_desc_base); kfree(g_ptm_priv_data.tx_desc_base);
kfree(g_ptm_priv_data.tx_skb_base);
if ( g_ptm_priv_data.tx_desc_base != NULL )
kfree(g_ptm_priv_data.tx_desc_base);
if ( g_ptm_priv_data.tx_skb_base != NULL )
kfree(g_ptm_priv_data.tx_skb_base);
} }
static INLINE void init_tables(void) static INLINE void init_tables(void)

View File

@ -223,8 +223,8 @@ static inline int pp32_download_code(u32 *code_src, unsigned int code_dword_len,
{ {
volatile u32 *dest; volatile u32 *dest;
if ( code_src == 0 || ((unsigned long)code_src & 0x03) != 0 if (!code_src || ((unsigned long)code_src & 0x03) != 0
|| data_src == 0 || ((unsigned long)data_src & 0x03) != 0 ) || !data_src || ((unsigned long)data_src & 0x03) != 0 )
return -1; return -1;
if ( code_dword_len <= CDM_CODE_MEMORYn_DWLEN(0) ) if ( code_dword_len <= CDM_CODE_MEMORYn_DWLEN(0) )

View File

@ -246,8 +246,8 @@ static inline int pp32_download_code(u32 *code_src, unsigned int code_dword_len,
{ {
volatile u32 *dest; volatile u32 *dest;
if ( code_src == 0 || ((unsigned long)code_src & 0x03) != 0 if (!code_src || ((unsigned long)code_src & 0x03) != 0
|| data_src == 0 || ((unsigned long)data_src & 0x03) != 0 ) || !data_src || ((unsigned long)data_src & 0x03) != 0 )
return -1; return -1;
if ( code_dword_len <= CDM_CODE_MEMORYn_DWLEN(0) ) if ( code_dword_len <= CDM_CODE_MEMORYn_DWLEN(0) )

View File

@ -218,8 +218,8 @@ static inline int pp32_download_code(u32 *code_src, unsigned int code_dword_len,
{ {
volatile u32 *dest; volatile u32 *dest;
if ( code_src == 0 || ((unsigned long)code_src & 0x03) != 0 if (!code_src || ((unsigned long)code_src & 0x03) != 0
|| data_src == 0 || ((unsigned long)data_src & 0x03) != 0 ) || !data_src || ((unsigned long)data_src & 0x03) != 0 )
return -1; return -1;
if ( code_dword_len <= CDM_CODE_MEMORYn_DWLEN(0) ) if ( code_dword_len <= CDM_CODE_MEMORYn_DWLEN(0) )

View File

@ -32,7 +32,7 @@
#define PTM_FW_VER_MINOR 17 #define PTM_FW_VER_MINOR 17
static unsigned int firmware_binary_code[] = { static const unsigned int firmware_binary_code[] = {
0x800004b8, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x800004b8, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x8000ffe0, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x8000ffe0, 0x00000000, 0x00000000, 0x00000000,
0xc1000002, 0xd90c00f8, 0xc2000002, 0xda0800f9, 0x800055e0, 0xc2000000, 0xda0800f9, 0x80005580, 0xc1000002, 0xd90c00f8, 0xc2000002, 0xda0800f9, 0x800055e0, 0xc2000000, 0xda0800f9, 0x80005580,
@ -486,7 +486,7 @@ static unsigned int firmware_binary_code[] = {
0xcd4000f8, 0x00000000, 0x00000000, 0xcd4000f8, 0x00000000, 0x00000000,
}; };
static unsigned int firmware_binary_data[] = { static const unsigned int firmware_binary_data[] = {
}; };

View File

@ -30,7 +30,7 @@
#define PTM_FW_VER_MINOR 17 #define PTM_FW_VER_MINOR 17
static unsigned int firmware_binary_code[] = { static const unsigned int firmware_binary_code[] = {
0x800004b8, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x800004b8, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x8000ffe0, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x8000ffe0, 0x00000000, 0x00000000, 0x00000000,
0xc1000002, 0xd90c00f8, 0xc2000002, 0xda0800f9, 0x80005270, 0xc2000000, 0xda0800f9, 0x80005210, 0xc1000002, 0xd90c00f8, 0xc2000002, 0xda0800f9, 0x80005270, 0xc2000000, 0xda0800f9, 0x80005210,
@ -466,7 +466,7 @@ static unsigned int firmware_binary_code[] = {
0x4194a000, 0x5d940040, 0x88000012, 0xc59400f8, 0x9d000000, 0xcd4000f8, 0x00000000, 0x00000000, 0x4194a000, 0x5d940040, 0x88000012, 0xc59400f8, 0x9d000000, 0xcd4000f8, 0x00000000, 0x00000000,
}; };
static unsigned int firmware_binary_data[] = { static const unsigned int firmware_binary_data[] = {
}; };

View File

@ -31,7 +31,7 @@
#define PTM_FW_VER_MINOR 17 #define PTM_FW_VER_MINOR 17
static unsigned int firmware_binary_code[] = { static const unsigned int firmware_binary_code[] = {
0x800004a0, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x800004a0, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x8000ffc8, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x8000ffc8, 0x00000000, 0x00000000, 0x00000000,
0xc1000002, 0xd90c0000, 0xc2000002, 0xda080001, 0x80005618, 0xc2000000, 0xda080001, 0x800055b8, 0xc1000002, 0xd90c0000, 0xc2000002, 0xda080001, 0x80005618, 0xc2000000, 0xda080001, 0x800055b8,
@ -482,7 +482,7 @@ static unsigned int firmware_binary_code[] = {
0x4194a000, 0x5d940040, 0x8800fffa, 0xc5940000, 0x9d000000, 0xcd400000, 0x00000000, 0x00000000, 0x4194a000, 0x5d940040, 0x8800fffa, 0xc5940000, 0x9d000000, 0xcd400000, 0x00000000, 0x00000000,
}; };
static unsigned int firmware_binary_data[] = { static const unsigned int firmware_binary_data[] = {
}; };

View File

@ -28,7 +28,7 @@
** 01/08/2014 Lantiq PPE FW Team VR9 E1 PPE Firmware Binary ** 01/08/2014 Lantiq PPE FW Team VR9 E1 PPE Firmware Binary
*******************************************************************************/ *******************************************************************************/
static unsigned int firmware_binary_code[] = { static const unsigned int firmware_binary_code[] = {
0x80000980, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x80000980, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x8000ffe0, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x8000ffe0, 0x00000000, 0x00000000, 0x00000000,
0x94000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x94000001, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000,
@ -471,7 +471,7 @@ static unsigned int firmware_binary_code[] = {
0x84009b42, 0x6f9d0010, 0x739da000, 0x6f9e0010, 0x735da000, 0x6f9f0010, 0x735da000, 0xc1c0001e, 0x84009b42, 0x6f9d0010, 0x739da000, 0x6f9e0010, 0x735da000, 0x6f9f0010, 0x735da000, 0xc1c0001e,
0x775da000, 0xc000e440, 0xcf4000f8, 0x80009ae8, 0x00000000, 0x00000000, 0x00000000,}; 0x775da000, 0xc000e440, 0xcf4000f8, 0x80009ae8, 0x00000000, 0x00000000, 0x00000000,};
static unsigned int firmware_binary_data[] = { static const unsigned int firmware_binary_data[] = {
}; };

View File

@ -207,8 +207,8 @@ static inline int pp32_download_code(int pp32, u32 *code_src, unsigned int code_
unsigned int clr, set; unsigned int clr, set;
volatile u32 *dest; volatile u32 *dest;
if ( code_src == 0 || ((unsigned long)code_src & 0x03) != 0 if (!code_src || ((unsigned long)code_src & 0x03) != 0
|| data_src == 0 || ((unsigned long)data_src & 0x03) != 0 ) || !data_src || ((unsigned long)data_src & 0x03) != 0 )
return -1; return -1;
clr = pp32 ? 0xF0 : 0x0F; clr = pp32 ? 0xF0 : 0x0F;

View File

@ -418,21 +418,6 @@ endef
$(eval $(call KernelPackage,md-raid456)) $(eval $(call KernelPackage,md-raid456))
define KernelPackage/md-multipath
$(call KernelPackage/md/Depends,@LINUX_6_6)
TITLE:=MD Multipath Module
KCONFIG:=CONFIG_MD_MULTIPATH
FILES:=$(LINUX_DIR)/drivers/md/multipath.ko
AUTOLOAD:=$(call AutoLoad,29,multipath)
endef
define KernelPackage/md-multipath/description
Multipath driver module (multipath.ko)
endef
$(eval $(call KernelPackage,md-multipath))
define KernelPackage/libsas define KernelPackage/libsas
SUBMENU:=$(BLOCK_MENU) SUBMENU:=$(BLOCK_MENU)
DEPENDS:=@TARGET_x86 DEPENDS:=@TARGET_x86

View File

@ -97,7 +97,7 @@ define KernelPackage/btmtk
SUBMENU:=$(BLUETOOTH_MENU) SUBMENU:=$(BLUETOOTH_MENU)
TITLE:=MTK Bluetooth support TITLE:=MTK Bluetooth support
HIDDEN:=1 HIDDEN:=1
DEPENDS:=+kmod-bluetooth +!LINUX_6_6&&USB_SUPPORT:kmod-usb-core DEPENDS:=+kmod-bluetooth +USB_SUPPORT:kmod-usb-core
KCONFIG:=CONFIG_BT_MTK KCONFIG:=CONFIG_BT_MTK
FILES:=$(LINUX_DIR)/drivers/bluetooth/btmtk.ko FILES:=$(LINUX_DIR)/drivers/bluetooth/btmtk.ko
endef endef

View File

@ -31,7 +31,7 @@ define KernelPackage/fs-afs
SUBMENU:=$(FS_MENU) SUBMENU:=$(FS_MENU)
TITLE:=Andrew FileSystem client TITLE:=Andrew FileSystem client
DEFAULT:=n DEFAULT:=n
DEPENDS:=+kmod-rxrpc +kmod-dnsresolver +LINUX_6_6:kmod-fs-fscache +!LINUX_6_6:kmod-fs-netfs DEPENDS:=+kmod-rxrpc +kmod-dnsresolver +kmod-fs-netfs
KCONFIG:=\ KCONFIG:=\
CONFIG_AFS_FS=m \ CONFIG_AFS_FS=m \
CONFIG_AFS_DEBUG=n \ CONFIG_AFS_DEBUG=n \
@ -86,7 +86,7 @@ $(eval $(call KernelPackage,fs-btrfs))
define KernelPackage/fs-cachefiles define KernelPackage/fs-cachefiles
SUBMENU:=$(FS_MENU) SUBMENU:=$(FS_MENU)
TITLE:=Filesystem caching on files TITLE:=Filesystem caching on files
DEPENDS:=LINUX_6_6:kmod-fs-fscache !LINUX_6_6:kmod-fs-netfs DEPENDS:=kmod-fs-netfs
KCONFIG:=\ KCONFIG:=\
CONFIG_CACHEFILES \ CONFIG_CACHEFILES \
CONFIG_CACHEFILES_DEBUG=n \ CONFIG_CACHEFILES_DEBUG=n \
@ -275,21 +275,6 @@ endef
$(eval $(call KernelPackage,fs-f2fs)) $(eval $(call KernelPackage,fs-f2fs))
define KernelPackage/fs-fscache
SUBMENU:=$(FS_MENU)
TITLE:=General filesystem local cache manager
DEPENDS:=@LINUX_6_6 +kmod-fs-netfs
KCONFIG:=\
CONFIG_FSCACHE \
CONFIG_FSCACHE_STATS=y \
CONFIG_FSCACHE_DEBUG=n
FILES:= $(LINUX_DIR)/fs/fscache/fscache.ko
AUTOLOAD:=$(call AutoLoad,29,fscache)
endef
$(eval $(call KernelPackage,fs-fscache))
define KernelPackage/fs-hfs define KernelPackage/fs-hfs
SUBMENU:=$(FS_MENU) SUBMENU:=$(FS_MENU)
TITLE:=HFS filesystem support TITLE:=HFS filesystem support
@ -431,8 +416,8 @@ define KernelPackage/fs-netfs
TITLE:=Network Filesystems support TITLE:=Network Filesystems support
KCONFIG:= \ KCONFIG:= \
CONFIG_NETFS_SUPPORT \ CONFIG_NETFS_SUPPORT \
CONFIG_FSCACHE=y@ge6.12 \ CONFIG_FSCACHE=y \
CONFIG_FSCACHE_STATS=y@ge6.12 CONFIG_FSCACHE_STATS=y
FILES:=$(LINUX_DIR)/fs/netfs/netfs.ko FILES:=$(LINUX_DIR)/fs/netfs/netfs.ko
AUTOLOAD:=$(call AutoLoad,28,netfs) AUTOLOAD:=$(call AutoLoad,28,netfs)
endef endef
@ -589,24 +574,6 @@ endef
$(eval $(call KernelPackage,fs-nfsd)) $(eval $(call KernelPackage,fs-nfsd))
define KernelPackage/fs-ntfs
SUBMENU:=$(FS_MENU)
TITLE:=NTFS filesystem read-only (old driver) support
DEPENDS:=@LINUX_6_6
KCONFIG:=CONFIG_NTFS_FS
FILES:=$(LINUX_DIR)/fs/ntfs/ntfs.ko
AUTOLOAD:=$(call AutoLoad,30,ntfs)
$(call AddDepends/nls)
endef
define KernelPackage/fs-ntfs/description
Kernel module for limited NTFS filesystem support. Support for writing
is extremely limited and disabled as a result.
endef
$(eval $(call KernelPackage,fs-ntfs))
define KernelPackage/fs-ntfs3 define KernelPackage/fs-ntfs3
SUBMENU:=$(FS_MENU) SUBMENU:=$(FS_MENU)
TITLE:=NTFS filesystem read & write (new driver) support TITLE:=NTFS filesystem read & write (new driver) support

View File

@ -141,7 +141,7 @@ $(eval $(call KernelPackage,gpio-pcf857x))
define KernelPackage/gpio-pwm define KernelPackage/gpio-pwm
SUBMENU:=$(GPIO_MENU) SUBMENU:=$(GPIO_MENU)
DEPENDS:=@GPIO_SUPPORT @PWM_SUPPORT @!LINUX_6_6 DEPENDS:=@GPIO_SUPPORT @PWM_SUPPORT
TITLE:=PWM GPIO support TITLE:=PWM GPIO support
KCONFIG:=CONFIG_PWM_GPIO KCONFIG:=CONFIG_PWM_GPIO
FILES:=$(LINUX_DIR)/drivers/pwm/pwm-gpio.ko FILES:=$(LINUX_DIR)/drivers/pwm/pwm-gpio.ko

View File

@ -9,7 +9,7 @@ HWMON_MENU:=Hardware Monitoring Support
define KernelPackage/hwmon-core define KernelPackage/hwmon-core
SUBMENU:=$(HWMON_MENU) SUBMENU:=$(HWMON_MENU)
DEPENDS:=+!LINUX_6_6:kmod-i2c-core DEPENDS:=+kmod-i2c-core
TITLE:=Hardware monitoring support TITLE:=Hardware monitoring support
KCONFIG:= \ KCONFIG:= \
CONFIG_HWMON \ CONFIG_HWMON \
@ -362,7 +362,7 @@ define KernelPackage/hwmon-lm92
KCONFIG:=CONFIG_SENSORS_LM92 KCONFIG:=CONFIG_SENSORS_LM92
FILES:=$(LINUX_DIR)/drivers/hwmon/lm92.ko FILES:=$(LINUX_DIR)/drivers/hwmon/lm92.ko
AUTOLOAD:=$(call AutoProbe,lm92) AUTOLOAD:=$(call AutoProbe,lm92)
$(call AddDepends/hwmon,+kmod-i2c-core +!LINUX_6_6:kmod-regmap-core) $(call AddDepends/hwmon,+kmod-i2c-core +kmod-regmap-core)
endef endef
define KernelPackage/hwmon-lm92/description define KernelPackage/hwmon-lm92/description
@ -402,27 +402,12 @@ endef
$(eval $(call KernelPackage,hwmon-ltc4151)) $(eval $(call KernelPackage,hwmon-ltc4151))
define KernelPackage/hwmon-max6642
TITLE:=MAX6642 monitoring support
KCONFIG:=CONFIG_SENSORS_MAX6642
FILES:=$(LINUX_DIR)/drivers/hwmon/max6642.ko
AUTOLOAD:=$(call AutoLoad,60,max6642 max6642)
$(call AddDepends/hwmon,@LINUX_6_6 +kmod-i2c-core)
endef
define KernelPackage/hwmon-max6642/description
Kernel module for Maxim MAX6642 temperature monitor
endef
$(eval $(call KernelPackage,hwmon-max6642))
define KernelPackage/hwmon-max6697 define KernelPackage/hwmon-max6697
TITLE:=MAX6697 monitoring support TITLE:=MAX6697 monitoring support
KCONFIG:=CONFIG_SENSORS_MAX6697 KCONFIG:=CONFIG_SENSORS_MAX6697
FILES:=$(LINUX_DIR)/drivers/hwmon/max6697.ko FILES:=$(LINUX_DIR)/drivers/hwmon/max6697.ko
AUTOLOAD:=$(call AutoProbe,max6697) AUTOLOAD:=$(call AutoProbe,max6697)
$(call AddDepends/hwmon,+kmod-i2c-core +!LINUX_6_6:kmod-regmap-i2c) $(call AddDepends/hwmon,+kmod-i2c-core +kmod-regmap-i2c)
endef endef
define KernelPackage/hwmon-max6697/description define KernelPackage/hwmon-max6697/description
@ -548,7 +533,7 @@ define KernelPackage/hwmon-sch5627
$(LINUX_DIR)/drivers/hwmon/sch5627.ko \ $(LINUX_DIR)/drivers/hwmon/sch5627.ko \
$(LINUX_DIR)/drivers/hwmon/sch56xx-common.ko $(LINUX_DIR)/drivers/hwmon/sch56xx-common.ko
AUTOLOAD:=$(call AutoProbe,sch5627) AUTOLOAD:=$(call AutoProbe,sch5627)
$(call AddDepends/hwmon,+kmod-i2c-core +!LINUX_6_6:kmod-regmap-core) $(call AddDepends/hwmon,+kmod-i2c-core +kmod-regmap-core)
endef endef
define KernelPackage/hwmon-sch5627/description define KernelPackage/hwmon-sch5627/description

View File

@ -9,7 +9,7 @@ IIO_MENU:=Industrial I/O Modules
define KernelPackage/iio-core define KernelPackage/iio-core
SUBMENU:=$(IIO_MENU) SUBMENU:=$(IIO_MENU)
TITLE:=Industrial IO core TITLE:=Industrial IO core
DEPENDS:=+!LINUX_6_6:kmod-dma-buf DEPENDS:=+kmod-dma-buf
KCONFIG:= \ KCONFIG:= \
CONFIG_IIO \ CONFIG_IIO \
CONFIG_IIO_BUFFER=y \ CONFIG_IIO_BUFFER=y \
@ -287,7 +287,7 @@ $(eval $(call KernelPackage,iio-bme680-spi))
define KernelPackage/iio-bmp280 define KernelPackage/iio-bmp280
TITLE:=BMP180/BMP280/BME280 pressure/temperatur sensor TITLE:=BMP180/BMP280/BME280 pressure/temperatur sensor
DEPENDS:=+kmod-regmap-core +!LINUX_6_6:kmod-industrialio-triggered-buffer DEPENDS:=+kmod-regmap-core +kmod-industrialio-triggered-buffer
KCONFIG:=CONFIG_BMP280 KCONFIG:=CONFIG_BMP280
FILES:=$(LINUX_DIR)/drivers/iio/pressure/bmp280.ko FILES:=$(LINUX_DIR)/drivers/iio/pressure/bmp280.ko
$(call AddDepends/iio) $(call AddDepends/iio)

View File

@ -55,22 +55,6 @@ endef
$(eval $(call KernelPackage,ledtrig-activity)) $(eval $(call KernelPackage,ledtrig-activity))
define KernelPackage/ledtrig-audio
SUBMENU:=$(LEDS_MENU)
TITLE:=LED Audio Mute Trigger
DEPENDS:=@LINUX_6_6
KCONFIG:=CONFIG_LEDS_TRIGGER_AUDIO
FILES:=$(LED_TRIGGER_DIR)/ledtrig-audio.ko
AUTOLOAD:=$(call AutoLoad,50,ledtrig-audio)
endef
define KernelPackage/ledtrig-audio/description
Kernel module that allows LEDs to be controlled by audio drivers
to follow audio mute and mic-mute changes.
endef
$(eval $(call KernelPackage,ledtrig-audio))
define KernelPackage/ledtrig-gpio define KernelPackage/ledtrig-gpio
SUBMENU:=$(LEDS_MENU) SUBMENU:=$(LEDS_MENU)
TITLE:=LED GPIO Trigger TITLE:=LED GPIO Trigger

View File

@ -123,7 +123,7 @@ $(eval $(call KernelPackage,atl1e))
define KernelPackage/libie define KernelPackage/libie
SUBMENU:=$(NETWORK_DEVICES_MENU) SUBMENU:=$(NETWORK_DEVICES_MENU)
TITLE:=Intel Ethernet library TITLE:=Intel Ethernet library
DEPENDS:=@!LINUX_6_6 +kmod-libeth DEPENDS:=+kmod-libeth
KCONFIG:=CONFIG_LIBIE KCONFIG:=CONFIG_LIBIE
HIDDEN:=1 HIDDEN:=1
FILES:=$(LINUX_DIR)/drivers/net/ethernet/intel/libie/libie.ko FILES:=$(LINUX_DIR)/drivers/net/ethernet/intel/libie/libie.ko
@ -139,7 +139,6 @@ $(eval $(call KernelPackage,libie))
define KernelPackage/libeth define KernelPackage/libeth
SUBMENU:=$(NETWORK_DEVICES_MENU) SUBMENU:=$(NETWORK_DEVICES_MENU)
TITLE:=Common Intel Ethernet library TITLE:=Common Intel Ethernet library
DEPENDS:=@!LINUX_6_6
KCONFIG:=CONFIG_LIBETH KCONFIG:=CONFIG_LIBETH
HIDDEN:=1 HIDDEN:=1
FILES:=$(LINUX_DIR)/drivers/net/ethernet/intel/libeth/libeth.ko FILES:=$(LINUX_DIR)/drivers/net/ethernet/intel/libeth/libeth.ko
@ -610,7 +609,7 @@ $(eval $(call KernelPackage,phy-airoha-en8811h))
define KernelPackage/phy-aquantia define KernelPackage/phy-aquantia
SUBMENU:=$(NETWORK_DEVICES_MENU) SUBMENU:=$(NETWORK_DEVICES_MENU)
TITLE:=Aquantia Ethernet PHYs TITLE:=Aquantia Ethernet PHYs
DEPENDS:=+kmod-libphy +kmod-hwmon-core +LINUX_6_6:kmod-lib-crc-ccitt +!LINUX_6_6:kmod-lib-crc-itu-t DEPENDS:=+kmod-libphy +kmod-hwmon-core +kmod-lib-crc-itu-t
KCONFIG:=CONFIG_AQUANTIA_PHY KCONFIG:=CONFIG_AQUANTIA_PHY
FILES:=$(LINUX_DIR)/drivers/net/phy/aquantia/aquantia.ko FILES:=$(LINUX_DIR)/drivers/net/phy/aquantia/aquantia.ko
AUTOLOAD:=$(call AutoLoad,18,aquantia,1) AUTOLOAD:=$(call AutoLoad,18,aquantia,1)
@ -813,7 +812,7 @@ $(eval $(call KernelPackage,dsa-rtl8365mb))
define KernelPackage/dsa-ks8995 define KernelPackage/dsa-ks8995
SUBMENU:=$(NETWORK_DEVICES_MENU) SUBMENU:=$(NETWORK_DEVICES_MENU)
TITLE:=Micrel/Kendin KS8995 Ethernet DSA Switch TITLE:=Micrel/Kendin KS8995 Ethernet DSA Switch
DEPENDS:=@!LINUX_6_6 +kmod-dsa +kmod-dsa-notag DEPENDS:=+kmod-dsa +kmod-dsa-notag
FILES:= $(LINUX_DIR)/drivers/net/dsa/ks8995.ko FILES:= $(LINUX_DIR)/drivers/net/dsa/ks8995.ko
KCONFIG:= CONFIG_NET_DSA_KS8995 \ KCONFIG:= CONFIG_NET_DSA_KS8995 \
CONFIG_SPI=y \ CONFIG_SPI=y \
@ -831,7 +830,7 @@ $(eval $(call KernelPackage,dsa-ks8995))
define KernelPackage/dsa-vsc73xx define KernelPackage/dsa-vsc73xx
SUBMENU:=$(NETWORK_DEVICES_MENU) SUBMENU:=$(NETWORK_DEVICES_MENU)
TITLE:=Vitesse VSC73XX DSA switch family support TITLE:=Vitesse VSC73XX DSA switch family support
DEPENDS:=@!LINUX_6_6 +kmod-dsa +kmod-phy-vitesse +kmod-fixed-phy DEPENDS:=+kmod-dsa +kmod-phy-vitesse +kmod-fixed-phy
KCONFIG:= \ KCONFIG:= \
CONFIG_NET_DSA_VITESSE_VSC73XX \ CONFIG_NET_DSA_VITESSE_VSC73XX \
CONFIG_NET_DSA_TAG_VSC73XX_8021Q CONFIG_NET_DSA_TAG_VSC73XX_8021Q
@ -850,7 +849,7 @@ $(eval $(call KernelPackage,dsa-vsc73xx))
define KernelPackage/dsa-vsc73xx-spi define KernelPackage/dsa-vsc73xx-spi
SUBMENU:=$(NETWORK_DEVICES_MENU) SUBMENU:=$(NETWORK_DEVICES_MENU)
TITLE:=Vitesse VSC73XX SPI support TITLE:=Vitesse VSC73XX SPI support
DEPENDS:=@!LINUX_6_6 +kmod-dsa-vsc73xx DEPENDS:=+kmod-dsa-vsc73xx
KCONFIG:= CONFIG_NET_DSA_VITESSE_VSC73XX_SPI KCONFIG:= CONFIG_NET_DSA_VITESSE_VSC73XX_SPI
FILES:= $(LINUX_DIR)/drivers/net/dsa/vitesse-vsc73xx-spi.ko FILES:= $(LINUX_DIR)/drivers/net/dsa/vitesse-vsc73xx-spi.ko
AUTOLOAD:=$(call AutoProbe,vitesse-vsc73xx-spi) AUTOLOAD:=$(call AutoProbe,vitesse-vsc73xx-spi)
@ -866,7 +865,7 @@ $(eval $(call KernelPackage,dsa-vsc73xx-spi))
define KernelPackage/dsa-vsc73xx-platform define KernelPackage/dsa-vsc73xx-platform
SUBMENU:=$(NETWORK_DEVICES_MENU) SUBMENU:=$(NETWORK_DEVICES_MENU)
TITLE:=Vitesse VSC73XX platform support TITLE:=Vitesse VSC73XX platform support
DEPENDS:=@!LINUX_6_6 +kmod-dsa-vsc73xx DEPENDS:=+kmod-dsa-vsc73xx
KCONFIG:= CONFIG_NET_DSA_VITESSE_VSC73XX_PLATFORM KCONFIG:= CONFIG_NET_DSA_VITESSE_VSC73XX_PLATFORM
FILES:= $(LINUX_DIR)/drivers/net/dsa/vitesse-vsc73xx-platform.ko FILES:= $(LINUX_DIR)/drivers/net/dsa/vitesse-vsc73xx-platform.ko
AUTOLOAD:=$(call AutoProbe,vitesse-vsc73xx-platform) AUTOLOAD:=$(call AutoProbe,vitesse-vsc73xx-platform)
@ -1364,7 +1363,7 @@ $(eval $(call KernelPackage,ixgbevf))
define KernelPackage/i40e define KernelPackage/i40e
SUBMENU:=$(NETWORK_DEVICES_MENU) SUBMENU:=$(NETWORK_DEVICES_MENU)
TITLE:=Intel(R) Ethernet Controller XL710 Family support TITLE:=Intel(R) Ethernet Controller XL710 Family support
DEPENDS:=@PCI_SUPPORT +kmod-ptp +!LINUX_6_6:kmod-libie DEPENDS:=@PCI_SUPPORT +kmod-ptp +kmod-libie
KCONFIG:=CONFIG_I40E \ KCONFIG:=CONFIG_I40E \
CONFIG_I40E_DCB=y CONFIG_I40E_DCB=y
FILES:=$(LINUX_DIR)/drivers/net/ethernet/intel/i40e/i40e.ko FILES:=$(LINUX_DIR)/drivers/net/ethernet/intel/i40e/i40e.ko
@ -1381,7 +1380,7 @@ $(eval $(call KernelPackage,i40e))
define KernelPackage/ice define KernelPackage/ice
SUBMENU:=$(NETWORK_DEVICES_MENU) SUBMENU:=$(NETWORK_DEVICES_MENU)
TITLE:=Intel(R) Ethernet Controller E810 Series support TITLE:=Intel(R) Ethernet Controller E810 Series support
DEPENDS:=@PCI_SUPPORT +kmod-ptp +!LINUX_6_6:kmod-hwmon-core +!LINUX_6_6:kmod-libie DEPENDS:=@PCI_SUPPORT +kmod-ptp +kmod-hwmon-core +kmod-libie
KCONFIG:=CONFIG_ICE \ KCONFIG:=CONFIG_ICE \
CONFIG_ICE_HWMON=y \ CONFIG_ICE_HWMON=y \
CONFIG_ICE_HWTS=y \ CONFIG_ICE_HWTS=y \
@ -1400,7 +1399,7 @@ $(eval $(call KernelPackage,ice))
define KernelPackage/iavf define KernelPackage/iavf
SUBMENU:=$(NETWORK_DEVICES_MENU) SUBMENU:=$(NETWORK_DEVICES_MENU)
TITLE:=Intel(R) Ethernet Adaptive Virtual Function support TITLE:=Intel(R) Ethernet Adaptive Virtual Function support
DEPENDS:=@PCI_SUPPORT +!LINUX_6_6:kmod-libie DEPENDS:=@PCI_SUPPORT +kmod-libie
KCONFIG:= \ KCONFIG:= \
CONFIG_I40EVF \ CONFIG_I40EVF \
CONFIG_IAVF CONFIG_IAVF
@ -1723,24 +1722,6 @@ endef
$(eval $(call KernelPackage,vmxnet3)) $(eval $(call KernelPackage,vmxnet3))
define KernelPackage/spi-ks8995
SUBMENU:=$(NETWORK_DEVICES_MENU)
TITLE:=Micrel/Kendin KS8995 Ethernet switch control
DEPENDS:=@LINUX_6_6
FILES:=$(LINUX_DIR)/drivers/net/phy/spi_ks8995.ko
KCONFIG:=CONFIG_MICREL_KS8995MA \
CONFIG_SPI=y \
CONFIG_SPI_MASTER=y
AUTOLOAD:=$(call AutoLoad,50,spi_ks8995)
endef
define KernelPackage/spi-ks8995/description
Kernel module for Micrel/Kendin KS8995 ethernet switch
endef
$(eval $(call KernelPackage,spi-ks8995))
define KernelPackage/ethoc define KernelPackage/ethoc
SUBMENU:=$(NETWORK_DEVICES_MENU) SUBMENU:=$(NETWORK_DEVICES_MENU)
TITLE:=Opencore.org ethoc driver TITLE:=Opencore.org ethoc driver
@ -2109,7 +2090,7 @@ $(eval $(call KernelPackage,pcs-qcom-ipq9574))
define KernelPackage/pcs-xpcs define KernelPackage/pcs-xpcs
SUBMENU:=$(NETWORK_DEVICES_MENU) SUBMENU:=$(NETWORK_DEVICES_MENU)
TITLE:=Synopsis DesignWare PCS driver TITLE:=Synopsis DesignWare PCS driver
DEPENDS:=@(TARGET_x86_64||TARGET_armsr) +kmod-phylink +!LINUX_6_6:kmod-mdio-devres DEPENDS:=@(TARGET_x86_64||TARGET_armsr) +kmod-phylink +kmod-mdio-devres
KCONFIG:=CONFIG_PCS_XPCS KCONFIG:=CONFIG_PCS_XPCS
FILES:=$(LINUX_DIR)/drivers/net/pcs/pcs_xpcs.ko FILES:=$(LINUX_DIR)/drivers/net/pcs/pcs_xpcs.ko
AUTOLOAD:=$(call AutoLoad,20,pcs_xpcs) AUTOLOAD:=$(call AutoLoad,20,pcs_xpcs)
@ -2329,7 +2310,7 @@ $(eval $(call KernelPackage,atlantic))
define KernelPackage/lan743x define KernelPackage/lan743x
SUBMENU:=$(NETWORK_DEVICES_MENU) SUBMENU:=$(NETWORK_DEVICES_MENU)
TITLE:=Microchip LAN743x PCI Express Gigabit Ethernet NIC TITLE:=Microchip LAN743x PCI Express Gigabit Ethernet NIC
DEPENDS:=@PCI_SUPPORT +kmod-ptp +kmod-mdio-devres +kmod-fixed-phy +!LINUX_6_6:kmod-phylink DEPENDS:=@PCI_SUPPORT +kmod-ptp +kmod-mdio-devres +kmod-fixed-phy +kmod-phylink
KCONFIG:=CONFIG_LAN743X KCONFIG:=CONFIG_LAN743X
FILES:=$(LINUX_DIR)/drivers/net/ethernet/microchip/lan743x.ko FILES:=$(LINUX_DIR)/drivers/net/ethernet/microchip/lan743x.ko
AUTOLOAD:=$(call AutoProbe,lan743x) AUTOLOAD:=$(call AutoProbe,lan743x)

View File

@ -778,22 +778,6 @@ endef
$(eval $(call KernelPackage,sched-act-sample)) $(eval $(call KernelPackage,sched-act-sample))
define KernelPackage/sched-act-ipt
SUBMENU:=$(NETWORK_SUPPORT_MENU)
TITLE:=IPtables targets
DEPENDS:=@LINUX_6_6 +kmod-ipt-core +kmod-sched-core
KCONFIG:=CONFIG_NET_ACT_IPT
FILES:=$(LINUX_DIR)/net/sched/act_ipt.ko
AUTOLOAD:=$(call AutoProbe, act_ipt)
endef
define KernelPackage/sched-act-ipt/description
Allows to invoke iptables targets after successful classification.
endef
$(eval $(call KernelPackage,sched-act-ipt))
define KernelPackage/sched-act-vlan define KernelPackage/sched-act-vlan
SUBMENU:=$(NETWORK_SUPPORT_MENU) SUBMENU:=$(NETWORK_SUPPORT_MENU)
TITLE:=Traffic VLAN manipulation TITLE:=Traffic VLAN manipulation
@ -1376,7 +1360,7 @@ $(eval $(call KernelPackage,mpls))
define KernelPackage/9pnet define KernelPackage/9pnet
SUBMENU:=$(NETWORK_SUPPORT_MENU) SUBMENU:=$(NETWORK_SUPPORT_MENU)
TITLE:=Plan 9 Resource Sharing Support (9P2000) TITLE:=Plan 9 Resource Sharing Support (9P2000)
DEPENDS:=+!LINUX_6_6:kmod-fs-netfs DEPENDS:=+kmod-fs-netfs
KCONFIG:= \ KCONFIG:= \
CONFIG_NET_9P \ CONFIG_NET_9P \
CONFIG_NET_9P_DEBUG=n \ CONFIG_NET_9P_DEBUG=n \

View File

@ -737,49 +737,46 @@ endef
define KernelPackage/zram/config define KernelPackage/zram/config
if PACKAGE_kmod-zram if PACKAGE_kmod-zram
if !LINUX_6_6 config KERNEL_ZRAM_BACKEND_LZO
config KERNEL_ZRAM_BACKEND_LZO bool "lzo and lzo-rle compression support"
bool "lzo and lzo-rle compression support"
config KERNEL_ZRAM_BACKEND_LZ4 config KERNEL_ZRAM_BACKEND_LZ4
bool "lz4 compression support" bool "lz4 compression support"
config KERNEL_ZRAM_BACKEND_LZ4HC config KERNEL_ZRAM_BACKEND_LZ4HC
bool "lz4hc compression support" bool "lz4hc compression support"
config KERNEL_ZRAM_BACKEND_ZSTD config KERNEL_ZRAM_BACKEND_ZSTD
bool "zstd compression support" bool "zstd compression support"
config KERNEL_ZRAM_BACKEND_FORCE_LZO config KERNEL_ZRAM_BACKEND_FORCE_LZO
def_bool !KERNEL_ZRAM_BACKEND_LZ4 && \ def_bool !KERNEL_ZRAM_BACKEND_LZ4 && \
!KERNEL_ZRAM_BACKEND_LZ4HC && \ !KERNEL_ZRAM_BACKEND_LZ4HC && \
!KERNEL_ZRAM_BACKEND_ZSTD !KERNEL_ZRAM_BACKEND_ZSTD
select KERNEL_ZRAM_BACKEND_LZO select KERNEL_ZRAM_BACKEND_LZO
endif
choice choice
prompt "ZRAM Default compressor" prompt "ZRAM Default compressor"
default KERNEL_ZRAM_DEF_COMP_LZORLE default KERNEL_ZRAM_DEF_COMP_LZORLE
config KERNEL_ZRAM_DEF_COMP_LZORLE config KERNEL_ZRAM_DEF_COMP_LZORLE
bool "lzo-rle" bool "lzo-rle"
depends on KERNEL_ZRAM_BACKEND_LZO || LINUX_6_6 depends on KERNEL_ZRAM_BACKEND_LZO
config KERNEL_ZRAM_DEF_COMP_LZO config KERNEL_ZRAM_DEF_COMP_LZO
bool "lzo" bool "lzo"
depends on KERNEL_ZRAM_BACKEND_LZO || LINUX_6_6 depends on KERNEL_ZRAM_BACKEND_LZO
config KERNEL_ZRAM_DEF_COMP_LZ4 config KERNEL_ZRAM_DEF_COMP_LZ4
bool "lz4" bool "lz4"
depends on KERNEL_ZRAM_BACKEND_LZ4 || LINUX_6_6 depends on KERNEL_ZRAM_BACKEND_LZ4
config KERNEL_ZRAM_DEF_COMP_LZ4HC config KERNEL_ZRAM_DEF_COMP_LZ4HC
bool "lz4-hc" bool "lz4-hc"
depends on KERNEL_ZRAM_BACKEND_LZ4HC || LINUX_6_6 depends on KERNEL_ZRAM_BACKEND_LZ4HC
config KERNEL_ZRAM_DEF_COMP_ZSTD config KERNEL_ZRAM_DEF_COMP_ZSTD
bool "zstd" bool "zstd"
depends on KERNEL_ZRAM_BACKEND_ZSTD || LINUX_6_6 depends on KERNEL_ZRAM_BACKEND_ZSTD
endchoice endchoice
endif endif

View File

@ -361,7 +361,6 @@ $(eval $(call KernelPackage,sound-dummy))
define KernelPackage/sound-hda-core define KernelPackage/sound-hda-core
SUBMENU:=$(SOUND_MENU) SUBMENU:=$(SOUND_MENU)
TITLE:=HD Audio Sound Core Support TITLE:=HD Audio Sound Core Support
DEPENDS:=+LINUX_6_6:kmod-ledtrig-audio
KCONFIG:= \ KCONFIG:= \
CONFIG_SND_HDA_CORE \ CONFIG_SND_HDA_CORE \
CONFIG_SND_HDA_HWDEP=y \ CONFIG_SND_HDA_HWDEP=y \
@ -386,7 +385,6 @@ $(eval $(call KernelPackage,sound-hda-core))
define KernelPackage/snd-hda-scodec-component define KernelPackage/snd-hda-scodec-component
SUBMENU:=$(SOUND_MENU) SUBMENU:=$(SOUND_MENU)
TITLE:= HD Audio Codec Component TITLE:= HD Audio Codec Component
DEPENDS:=@!LINUX_6_6
KCONFIG:= \ KCONFIG:= \
CONFIG_SND_HDA_SCODEC_COMPONENT CONFIG_SND_HDA_SCODEC_COMPONENT
FILES:= \ FILES:= \
@ -405,7 +403,7 @@ define KernelPackage/sound-hda-codec-realtek
FILES:= \ FILES:= \
$(LINUX_DIR)/sound/pci/hda/snd-hda-codec-realtek.ko $(LINUX_DIR)/sound/pci/hda/snd-hda-codec-realtek.ko
AUTOLOAD:=$(call AutoProbe,snd-hda-codec-realtek) AUTOLOAD:=$(call AutoProbe,snd-hda-codec-realtek)
$(call AddDepends/sound,kmod-sound-hda-core +!LINUX_6_6:kmod-snd-hda-scodec-component) $(call AddDepends/sound,kmod-sound-hda-core +kmod-snd-hda-scodec-component)
endef endef
define KernelPackage/sound-hda-codec-realtek/description define KernelPackage/sound-hda-codec-realtek/description

View File

@ -1490,7 +1490,7 @@ $(eval $(call KernelPackage,usb-net-rtl8150))
define KernelPackage/usb-net-rtl8152 define KernelPackage/usb-net-rtl8152
TITLE:=Kernel module for USB-to-Ethernet Realtek convertors TITLE:=Kernel module for USB-to-Ethernet Realtek convertors
DEPENDS:=+r8152-firmware +kmod-crypto-sha256 +kmod-mii +!LINUX_6_6:kmod-libphy DEPENDS:=+r8152-firmware +kmod-crypto-sha256 +kmod-mii +kmod-libphy
KCONFIG:=CONFIG_USB_RTL8152 KCONFIG:=CONFIG_USB_RTL8152
FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/r8152.ko FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/r8152.ko
AUTOLOAD:=$(call AutoProbe,r8152) AUTOLOAD:=$(call AutoProbe,r8152)

View File

@ -63,7 +63,7 @@ $(eval $(call KernelPackage,acpi-video))
define KernelPackage/backlight define KernelPackage/backlight
SUBMENU:=$(VIDEO_MENU) SUBMENU:=$(VIDEO_MENU)
TITLE:=Backlight support TITLE:=Backlight support
DEPENDS:=@DISPLAY_SUPPORT +!LINUX_6_6:kmod-fb DEPENDS:=@DISPLAY_SUPPORT +kmod-fb
HIDDEN:=1 HIDDEN:=1
KCONFIG:=CONFIG_BACKLIGHT_CLASS_DEVICE \ KCONFIG:=CONFIG_BACKLIGHT_CLASS_DEVICE \
CONFIG_BACKLIGHT_LCD_SUPPORT=y \ CONFIG_BACKLIGHT_LCD_SUPPORT=y \
@ -102,7 +102,7 @@ $(eval $(call KernelPackage,backlight-pwm))
define KernelPackage/fb define KernelPackage/fb
SUBMENU:=$(VIDEO_MENU) SUBMENU:=$(VIDEO_MENU)
TITLE:=Framebuffer and framebuffer console support TITLE:=Framebuffer and framebuffer console support
DEPENDS:=@DISPLAY_SUPPORT +LINUX_6_6:kmod-fb-io-fops DEPENDS:=@DISPLAY_SUPPORT
KCONFIG:= \ KCONFIG:= \
CONFIG_FB \ CONFIG_FB \
CONFIG_FB_DEVICE=y \ CONFIG_FB_DEVICE=y \
@ -137,9 +137,8 @@ define KernelPackage/fb/description
endef endef
define KernelPackage/fb/x86 define KernelPackage/fb/x86
FILES+=$(LINUX_DIR)/arch/x86/video/fbdev.ko@lt6.12 \ FILES+=$(LINUX_DIR)/arch/x86/video/video-common.ko
$(LINUX_DIR)/arch/x86/video/video-common.ko@ge6.12 AUTOLOAD:=$(call AutoLoad,06,video-common fb font)
AUTOLOAD:=$(call AutoLoad,06,fbdev@lt6.12 video-common@ge6.12 fb font)
endef endef
$(eval $(call KernelPackage,fb)) $(eval $(call KernelPackage,fb))
@ -209,8 +208,7 @@ define KernelPackage/fb-sys-fops
TITLE:=Framebuffer software sys ops support TITLE:=Framebuffer software sys ops support
DEPENDS:=+kmod-fb DEPENDS:=+kmod-fb
KCONFIG:= \ KCONFIG:= \
CONFIG_FB_SYS_FOPS@lt6.12 \ CONFIG_FB_SYSMEM_FOPS
CONFIG_FB_SYSMEM_FOPS@ge6.12
FILES:=$(LINUX_DIR)/drivers/video/fbdev/core/fb_sys_fops.ko FILES:=$(LINUX_DIR)/drivers/video/fbdev/core/fb_sys_fops.ko
AUTOLOAD:=$(call AutoLoad,07,fb_sys_fops) AUTOLOAD:=$(call AutoLoad,07,fb_sys_fops)
endef endef
@ -461,7 +459,7 @@ define KernelPackage/drm-ttm-helper
SUBMENU:=$(VIDEO_MENU) SUBMENU:=$(VIDEO_MENU)
TITLE:=Helpers for ttm-based gem objects TITLE:=Helpers for ttm-based gem objects
HIDDEN:=1 HIDDEN:=1
DEPENDS:=@DISPLAY_SUPPORT +kmod-drm-ttm +!LINUX_6_6:kmod-drm-kms-helper DEPENDS:=@DISPLAY_SUPPORT +kmod-drm-ttm +kmod-drm-kms-helper
KCONFIG:=CONFIG_DRM_TTM_HELPER KCONFIG:=CONFIG_DRM_TTM_HELPER
FILES:=$(LINUX_DIR)/drivers/gpu/drm/drm_ttm_helper.ko FILES:=$(LINUX_DIR)/drivers/gpu/drm/drm_ttm_helper.ko
AUTOLOAD:=$(call AutoProbe,drm_ttm_helper) AUTOLOAD:=$(call AutoProbe,drm_ttm_helper)
@ -808,7 +806,7 @@ define KernelPackage/drm-radeon
DEPENDS:=@TARGET_x86 @DISPLAY_SUPPORT +kmod-backlight +kmod-drm-kms-helper \ DEPENDS:=@TARGET_x86 @DISPLAY_SUPPORT +kmod-backlight +kmod-drm-kms-helper \
+kmod-drm-ttm +kmod-drm-ttm-helper +kmod-i2c-algo-bit +radeon-firmware \ +kmod-drm-ttm +kmod-drm-ttm-helper +kmod-i2c-algo-bit +radeon-firmware \
+kmod-drm-display-helper +kmod-acpi-video +kmod-drm-suballoc-helper \ +kmod-drm-display-helper +kmod-acpi-video +kmod-drm-suballoc-helper \
+!LINUX_6_6:kmod-fb-io-fops +kmod-fb-io-fops
KCONFIG:=CONFIG_DRM_RADEON KCONFIG:=CONFIG_DRM_RADEON
FILES:=$(LINUX_DIR)/drivers/gpu/drm/radeon/radeon.ko FILES:=$(LINUX_DIR)/drivers/gpu/drm/radeon/radeon.ko
AUTOLOAD:=$(call AutoProbe,radeon) AUTOLOAD:=$(call AutoProbe,radeon)
@ -1555,10 +1553,8 @@ define KernelPackage/video-coda
CONFIG_VIDEO_CODA \ CONFIG_VIDEO_CODA \
CONFIG_VIDEO_IMX_VDOA CONFIG_VIDEO_IMX_VDOA
FILES:= \ FILES:= \
$(LINUX_DIR)/drivers/media/$(V4L2_MEM2MEM_DIR)/chips-media/coda-vpu.ko@lt6.12 \ $(LINUX_DIR)/drivers/media/$(V4L2_MEM2MEM_DIR)/chips-media/coda/coda-vpu.ko \
$(LINUX_DIR)/drivers/media/$(V4L2_MEM2MEM_DIR)/chips-media/imx-vdoa.ko@lt6.12 \ $(LINUX_DIR)/drivers/media/$(V4L2_MEM2MEM_DIR)/chips-media/coda/imx-vdoa.ko \
$(LINUX_DIR)/drivers/media/$(V4L2_MEM2MEM_DIR)/chips-media/coda/coda-vpu.ko@ge6.12 \
$(LINUX_DIR)/drivers/media/$(V4L2_MEM2MEM_DIR)/chips-media/coda/imx-vdoa.ko@ge6.12 \
$(LINUX_DIR)/drivers/media/$(V4L2_DIR)/v4l2-jpeg.ko $(LINUX_DIR)/drivers/media/$(V4L2_DIR)/v4l2-jpeg.ko
AUTOLOAD:=$(call AutoProbe,coda-vpu imx-vdoa v4l2-jpeg) AUTOLOAD:=$(call AutoProbe,coda-vpu imx-vdoa v4l2-jpeg)
$(call AddDepends/video) $(call AddDepends/video)

View File

@ -23,7 +23,7 @@ Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
+ size_t len = rt2x00dev->ops->eeprom_size; + size_t len = rt2x00dev->ops->eeprom_size;
+ int i; + int i;
+ +
+ if (!of_find_property(np, "ralink,eeprom-swap", NULL)) + if (!of_property_present(np, "ralink,eeprom-swap"))
+ return; + return;
+ +
+ for (i = 0; i < len / sizeof(u16); i++) + for (i = 0; i < len / sizeof(u16); i++)

View File

@ -23,7 +23,7 @@ include $(INCLUDE_DIR)/package.mk
define KernelPackage/usb-net-rtl8152-vendor define KernelPackage/usb-net-rtl8152-vendor
TITLE:=Kernel module for USB-to-Ethernet Realtek convertors TITLE:=Kernel module for USB-to-Ethernet Realtek convertors
SUBMENU:=USB Support SUBMENU:=USB Support
DEPENDS:=+kmod-usb-core +!LINUX_6_6:kmod-libphy DEPENDS:=+kmod-usb-core +kmod-libphy
CONFLICTS:=kmod-usb-net-rtl8152 CONFLICTS:=kmod-usb-net-rtl8152
FILES:=$(PKG_BUILD_DIR)/r8152.ko FILES:=$(PKG_BUILD_DIR)/r8152.ko
AUTOLOAD:=$(call AutoProbe,r8152,1) AUTOLOAD:=$(call AutoProbe,r8152,1)

View File

@ -174,13 +174,13 @@ static int i2c_outb(int c)
if (sclhi() < 0) { /* timed out */ if (sclhi() < 0) { /* timed out */
sdahi(); /* we don't want to block the net */ sdahi(); /* we don't want to block the net */
return -ETIMEDOUT; return -ETIMEDOUT;
}; }
scllo(); scllo();
} }
sdahi(); sdahi();
if (sclhi() < 0) { if (sclhi() < 0) {
return -ETIMEDOUT; return -ETIMEDOUT;
}; }
/* read ack: SDA should be pulled down by slave */ /* read ack: SDA should be pulled down by slave */
ack = getsda() == 0; /* ack: sda is pulled low ->success. */ ack = getsda() == 0; /* ack: sda is pulled low ->success. */
scllo(); scllo();
@ -204,7 +204,7 @@ static int i2c_inb(int ack)
for (i = 0; i < 8; i++) { for (i = 0; i < 8; i++) {
if (sclhi() < 0) { if (sclhi() < 0) {
return -ETIMEDOUT; return -ETIMEDOUT;
}; }
indata *= 2; indata *= 2;
if (getsda()) if (getsda())
indata |= 0x01; indata |= 0x01;

View File

@ -14,6 +14,7 @@ PKG_FIXUP:=autoreconf
PKG_INSTALL:=1 PKG_INSTALL:=1
include $(INCLUDE_DIR)/package.mk include $(INCLUDE_DIR)/package.mk
include $(INCLUDE_DIR)/meson.mk
define Package/libtraceevent define Package/libtraceevent
SECTION:=libs SECTION:=libs
@ -32,28 +33,27 @@ define Package/libtraceevent-extra
SECTION:=libs SECTION:=libs
CATEGORY:=Libraries CATEGORY:=Libraries
TITLE:=Extra plugins for libtraceevent TITLE:=Extra plugins for libtraceevent
DEPENDS:= DEPENDS:=+libtraceevent
endef endef
CONFIGURE_ARGS+= \ MESON_ARGS += \
--enable-shared \ -Ddoc=false
--enable-static
PLUGINS_DIR := $(PKG_BUILD_DIR)/plugins PLUGINS_DIR := $(PKG_INSTALL_DIR)/usr/lib/traceevent/plugins
PLUGINS_MAIN := function hrtimer mac80211 sched_switch PLUGINS_MAIN := function hrtimer mac80211 sched_switch
define Build/InstallDev define Build/InstallDev
$(INSTALL_DIR) $(1)/usr/include $(INSTALL_DIR) $(1)/usr/include
$(CP) $(PKG_BUILD_DIR)/include/traceevent $(1)/usr/include/ $(CP) $(PKG_INSTALL_DIR)/usr/include/traceevent $(1)/usr/include/
$(INSTALL_DIR) $(1)/usr/lib $(INSTALL_DIR) $(1)/usr/lib
$(CP) $(PKG_BUILD_DIR)/lib/libtraceevent.{a,so*} $(1)/usr/lib/ $(CP) $(PKG_INSTALL_DIR)/usr/lib/libtraceevent.{a,so*} $(1)/usr/lib/
$(INSTALL_DIR) $(1)/usr/lib/pkgconfig $(INSTALL_DIR) $(1)/usr/lib/pkgconfig
$(CP) $(PKG_BUILD_DIR)/libtraceevent.pc $(1)/usr/lib/pkgconfig/ $(CP) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/libtraceevent.pc $(1)/usr/lib/pkgconfig/
endef endef
define Package/libtraceevent/install define Package/libtraceevent/install
$(INSTALL_DIR) $(1)/usr/lib/traceevent/plugins $(INSTALL_DIR) $(1)/usr/lib/traceevent/plugins
$(CP) $(PKG_BUILD_DIR)/lib/libtraceevent.so.* $(1)/usr/lib/ $(CP) $(PKG_INSTALL_DIR)/usr/lib/libtraceevent.so.* $(1)/usr/lib/
$(INSTALL_DIR) $(1)/usr/lib $(INSTALL_DIR) $(1)/usr/lib
$(CP) \ $(CP) \
$(patsubst %,$(PLUGINS_DIR)/plugin_%.so,$(PLUGINS_MAIN)) \ $(patsubst %,$(PLUGINS_DIR)/plugin_%.so,$(PLUGINS_MAIN)) \

View File

@ -0,0 +1,62 @@
From: Felix Fietkau <nbd@nbd.name>
Date: Mon, 1 Dec 2025 16:22:17 +0000
Subject: [PATCH] providers/implementations/ciphers: fix AES-GCM-SIV and
AES-SIV with zero-length messages
When ossl_aes_gcm_siv_cipher() or siv_cipher() is called with in=NULL
for zero-length input, the hw->cipher function interprets this as a
finalization request and calls the finish function instead of
encrypt/decrypt. This causes the authentication tag to never be computed
for zero-length messages, resulting in decryption verification failures.
Fix this by substituting a static empty byte address when in is NULL,
ensuring hw->cipher always receives a non-NULL pointer from Update calls
and correctly routes to the encrypt/decrypt path.
For AES-GCM-SIV, this is a different fix than upstream commit
f1a4f0368b73 ("make aes-gcm-siv work with zero-length messages") which
removed early-return and length checks that don't exist in 3.5.x.
Signed-off-by: Felix Fietkau <nbd@nbd.name>
---
--- a/providers/implementations/ciphers/cipher_aes_gcm_siv.c
+++ b/providers/implementations/ciphers/cipher_aes_gcm_siv.c
@@ -140,6 +140,7 @@ static int ossl_aes_gcm_siv_cipher(void
{
PROV_AES_GCM_SIV_CTX *ctx = (PROV_AES_GCM_SIV_CTX *)vctx;
int error = 0;
+ static const unsigned char empty;
if (!ossl_prov_is_running())
return 0;
@@ -149,6 +150,9 @@ static int ossl_aes_gcm_siv_cipher(void
return 0;
}
+ if (in == NULL)
+ in = &empty;
+
error |= !ctx->hw->cipher(ctx, out, in, inl);
if (outl != NULL && !error)
--- a/providers/implementations/ciphers/cipher_aes_siv.c
+++ b/providers/implementations/ciphers/cipher_aes_siv.c
@@ -114,6 +114,7 @@ static int siv_cipher(void *vctx, unsign
size_t outsize, const unsigned char *in, size_t inl)
{
PROV_AES_SIV_CTX *ctx = (PROV_AES_SIV_CTX *)vctx;
+ static const unsigned char empty;
if (!ossl_prov_is_running())
return 0;
@@ -123,6 +124,9 @@ static int siv_cipher(void *vctx, unsign
return 0;
}
+ if (in == NULL)
+ in = &empty;
+
if (ctx->hw->cipher(ctx, out, in, inl) <= 0)
return 0;

View File

@ -165,6 +165,10 @@
"basic_rate": { "basic_rate": {
"type": "array" "type": "array"
}, },
"beacon_prot": {
"description": "Management frame protection for Beacon frames",
"type": "boolean"
},
"bss_load_update_period": { "bss_load_update_period": {
"description": "BSS Load update period (in BUs)", "description": "BSS Load update period (in BUs)",
"type": "number", "type": "number",
@ -343,6 +347,10 @@
"description": "DHCP server for FILS HLP. Set to '*' for automatic lookup.", "description": "DHCP server for FILS HLP. Set to '*' for automatic lookup.",
"type": "string" "type": "string"
}, },
"ft_iface": {
"description": "Inter-AP communication interface for 802.11r",
"type": "string"
},
"ft_over_ds": { "ft_over_ds": {
"description": "Whether to enable FT-over-DS", "description": "Whether to enable FT-over-DS",
"type": "boolean", "type": "boolean",
@ -989,6 +997,10 @@
"type": "boolean", "type": "boolean",
"default": false "default": false
}, },
"spp_amsdu": {
"description": "Signaling and Payload Protected A-MSDU",
"type": "boolean"
},
"ssid": { "ssid": {
"type": "string" "type": "string"
}, },

View File

@ -5,9 +5,12 @@
"type": "object", "type": "object",
"properties": { "properties": {
"mac": { "mac": {
"description": "The stations MAC", "description": "The station's MAC addresses",
"type": "string", "type": "array",
"default": "00:00:00:00:00:00" "items": {
"type": "string"
},
"default": ["00:00:00:00:00:00"]
}, },
"key": { "key": {
"description": "The passphrase that shall be used", "description": "The passphrase that shall be used",

View File

@ -57,7 +57,7 @@ function iface_setup(config) {
'disassoc_low_ack', 'skip_inactivity_poll', 'ignore_broadcast_ssid', 'uapsd_advertisement_enabled', 'disassoc_low_ack', 'skip_inactivity_poll', 'ignore_broadcast_ssid', 'uapsd_advertisement_enabled',
'utf8_ssid', 'multi_ap', 'multi_ap_vlanid', 'multi_ap_profile', 'tdls_prohibit', 'bridge', 'utf8_ssid', 'multi_ap', 'multi_ap_vlanid', 'multi_ap_profile', 'tdls_prohibit', 'bridge',
'wds_sta', 'wds_bridge', 'snoop_iface', 'vendor_elements', 'nas_identifier', 'radius_acct_interim_interval', 'wds_sta', 'wds_bridge', 'snoop_iface', 'vendor_elements', 'nas_identifier', 'radius_acct_interim_interval',
'ocv', 'multicast_to_unicast', 'preamble', 'proxy_arp', 'per_sta_vif', 'mbo', 'ocv', 'beacon_prot', 'spp_amsdu', 'multicast_to_unicast', 'preamble', 'proxy_arp', 'per_sta_vif', 'mbo',
'bss_transition', 'wnm_sleep_mode', 'wnm_sleep_mode_no_keys', 'qos_map_set', 'max_listen_int', 'bss_transition', 'wnm_sleep_mode', 'wnm_sleep_mode_no_keys', 'qos_map_set', 'max_listen_int',
'dtim_period', 'wmm_enabled', 'start_disabled', 'na_mcast_to_ucast', 'dtim_period', 'wmm_enabled', 'start_disabled', 'na_mcast_to_ucast',
]); ]);
@ -312,10 +312,12 @@ function iface_wpa_stations(config, stas) {
let file = fs.open(path, 'w'); let file = fs.open(path, 'w');
for (let k, sta in stas) for (let k, sta in stas)
if (sta.config.mac && sta.config.key) { if (sta.config.mac && sta.config.key) {
let station = `${sta.config.mac} ${sta.config.key}\n`; for (let mac in sta.config.mac) {
if (sta.config.vid) let station = `${mac} ${sta.config.key}\n`;
station = `vlanid=${sta.config.vid} ` + station; if (sta.config.vid)
file.write(station); station = `vlanid=${sta.config.vid} ` + station;
file.write(station);
}
} }
file.close(); file.close();
@ -328,15 +330,16 @@ function iface_sae_stations(config, stas) {
let file = fs.open(path, 'w'); let file = fs.open(path, 'w');
for (let k, sta in stas) for (let k, sta in stas)
if (sta.config.mac && sta.config.key) { if (sta.config.mac && sta.config.key) {
let mac = sta.config.mac; for (let mac in sta.config.mac) {
if (mac == '00:00:00:00:00:00') if (mac == '00:00:00:00:00:00')
mac = 'ff:ff:ff:ff:ff:ff'; mac = 'ff:ff:ff:ff:ff:ff';
let station = `${sta.config.key}|mac=${mac}`; let station = `${sta.config.key}|mac=${mac}`;
if (sta.config.vid) if (sta.config.vid)
station = station + `|vlanid=${sta.config.vid}`; station = station + `|vlanid=${sta.config.vid}`;
station = station + '\n'; station = station + '\n';
file.write(station); file.write(station);
}
} }
file.close(); file.close();

View File

@ -176,7 +176,7 @@ function setup_sta(data, config) {
network_append_string_vars(config, [ 'ssid' ]); network_append_string_vars(config, [ 'ssid' ]);
network_append_vars(config, [ network_append_vars(config, [
'rsn_overriding', 'scan_ssid', 'noscan', 'disabled', 'multi_ap_profile', 'multi_ap_backhaul_sta', 'rsn_overriding', 'scan_ssid', 'noscan', 'disabled', 'multi_ap_profile', 'multi_ap_backhaul_sta',
'ocv', 'key_mgmt', 'sae_pwe', 'psk', 'sae_password', 'pairwise', 'group', 'bssid', 'ocv', 'beacon_prot', 'key_mgmt', 'sae_pwe', 'psk', 'sae_password', 'pairwise', 'group', 'bssid',
'proto', 'mesh_fwding', 'mesh_rssi_threshold', 'frequency', 'fixed_freq', 'proto', 'mesh_fwding', 'mesh_rssi_threshold', 'frequency', 'fixed_freq',
'disable_ht', 'disable_ht40', 'disable_vht', 'vht', 'max_oper_chwidth', 'disable_ht', 'disable_ht40', 'disable_vht', 'vht', 'max_oper_chwidth',
'ht40', 'beacon_int', 'ieee80211w', 'basic_rate', 'mcast_rate', 'ht40', 'beacon_int', 'ieee80211w', 'basic_rate', 'mcast_rate',

View File

@ -347,7 +347,7 @@ hostapd_common_add_bss_config() {
config_add_boolean ieee80211r pmk_r1_push ft_psk_generate_local ft_over_ds config_add_boolean ieee80211r pmk_r1_push ft_psk_generate_local ft_over_ds
config_add_int r0_key_lifetime reassociation_deadline config_add_int r0_key_lifetime reassociation_deadline
config_add_string mobility_domain r1_key_holder rxkh_file config_add_string mobility_domain r1_key_holder rxkh_file ft_iface
config_add_array r0kh r1kh config_add_array r0kh r1kh
config_add_int ieee80211w_max_timeout ieee80211w_retry_timeout config_add_int ieee80211w_max_timeout ieee80211w_retry_timeout
@ -403,6 +403,7 @@ hostapd_common_add_bss_config() {
config_add_string fils_dhcp config_add_string fils_dhcp
config_add_int ocv config_add_int ocv
config_add_boolean beacon_prot spp_amsdu
config_add_boolean apup config_add_boolean apup
config_add_string apup_peer_ifname_prefix config_add_string apup_peer_ifname_prefix
@ -428,10 +429,13 @@ hostapd_set_psk_file() {
local vlan="$2" local vlan="$2"
local vlan_id="" local vlan_id=""
json_get_vars mac vid key json_get_vars vid key
set_default mac "00:00:00:00:00:00" json_get_values mac_list mac
set_default mac_list "00:00:00:00:00:00"
[ -n "$vid" ] && vlan_id="vlanid=$vid " [ -n "$vid" ] && vlan_id="vlanid=$vid "
echo "${vlan_id} ${mac} ${key}" >> /var/run/hostapd-${ifname}.psk for mac in $mac_list; do
echo "${vlan_id} ${mac} ${key}" >> /var/run/hostapd-${ifname}.psk
done
} }
hostapd_set_psk() { hostapd_set_psk() {
@ -450,11 +454,14 @@ hostapd_set_sae_file() {
local vlan="$2" local vlan="$2"
local vlan_id="" local vlan_id=""
json_get_vars mac vid key json_get_vars vid key
set_default mac "ff:ff:ff:ff:ff:ff" json_get_values mac_list mac
[ -n "$mac" ] && mac="|mac=$mac" set_default mac_list "ff:ff:ff:ff:ff:ff"
[ -n "$vid" ] && vlan_id="|vlanid=$vid" [ -n "$vid" ] && vlan_id="|vlanid=$vid"
printf '%s%s%s\n' "${key}" "${mac}" "${vlan_id}" >> /var/run/hostapd-${ifname}.sae for mac in $mac_list; do
mac="|mac=$mac"
printf '%s%s%s\n' "${key}" "${mac}" "${vlan_id}" >> /var/run/hostapd-${ifname}.sae
done
} }
hostapd_set_sae() { hostapd_set_sae() {
@ -558,7 +565,7 @@ hostapd_set_bss_options() {
ppsk airtime_bss_weight airtime_bss_limit airtime_sta_weight \ ppsk airtime_bss_weight airtime_bss_limit airtime_sta_weight \
multicast_to_unicast_all proxy_arp per_sta_vif na_mcast_to_ucast \ multicast_to_unicast_all proxy_arp per_sta_vif na_mcast_to_ucast \
eap_server eap_user_file ca_cert server_cert private_key private_key_passwd server_id radius_server_clients radius_server_auth_port \ eap_server eap_user_file ca_cert server_cert private_key private_key_passwd server_id radius_server_clients radius_server_auth_port \
vendor_elements fils ocv apup rsn_override vendor_elements fils ocv beacon_prot spp_amsdu apup rsn_override
set_default rsn_override 1 set_default rsn_override 1
set_default fils 0 set_default fils 0
@ -630,6 +637,8 @@ hostapd_set_bss_options() {
json_for_each_item append_radius_acct_req_attr radius_acct_req_attr json_for_each_item append_radius_acct_req_attr radius_acct_req_attr
[ -n "$ocv" ] && append bss_conf "ocv=$ocv" "$N" [ -n "$ocv" ] && append bss_conf "ocv=$ocv" "$N"
[ -n "$beacon_prot" ] && append bss_conf "beacon_prot=$beacon_prot" "$N"
[ -n "$spp_amsdu" ] && append bss_conf "spp_amsdu=$spp_amsdu" "$N"
case "$auth_type" in case "$auth_type" in
sae|owe|eap2|eap192) sae|owe|eap2|eap192)
@ -918,11 +927,12 @@ hostapd_set_bss_options() {
if [ "$wpa" -ge "2" ]; then if [ "$wpa" -ge "2" ]; then
if [ "$ieee80211r" -gt "0" ]; then if [ "$ieee80211r" -gt "0" ]; then
json_get_vars mobility_domain ft_psk_generate_local ft_over_ds reassociation_deadline json_get_vars mobility_domain ft_psk_generate_local ft_over_ds reassociation_deadline ft_iface
set_default mobility_domain "$(echo -n "$ssid" | md5sum | head -c 4)" set_default mobility_domain "$(echo -n "$ssid" | md5sum | head -c 4)"
set_default ft_over_ds 0 set_default ft_over_ds 0
set_default reassociation_deadline 20000 set_default reassociation_deadline 20000
[ -n "$network_ifname" ] && set_default ft_iface "$network_ifname"
case "$auth_type" in case "$auth_type" in
psk) psk)
@ -933,7 +943,7 @@ hostapd_set_bss_options() {
;; ;;
esac esac
[ -n "$network_ifname" ] && append bss_conf "ft_iface=$network_ifname" "$N" [ -n "$ft_iface" ] && append bss_conf "ft_iface=$ft_iface" "$N"
append bss_conf "mobility_domain=$mobility_domain" "$N" append bss_conf "mobility_domain=$mobility_domain" "$N"
append bss_conf "ft_psk_generate_local=$ft_psk_generate_local" "$N" append bss_conf "ft_psk_generate_local=$ft_psk_generate_local" "$N"
append bss_conf "ft_over_ds=$ft_over_ds" "$N" append bss_conf "ft_over_ds=$ft_over_ds" "$N"
@ -1326,7 +1336,7 @@ wpa_supplicant_add_network() {
json_get_vars \ json_get_vars \
ssid bssid key rsn_override \ ssid bssid key rsn_override \
mcast_rate \ mcast_rate \
ieee80211w ieee80211r fils ocv \ ieee80211w ieee80211r fils ocv beacon_prot \
multi_ap \ multi_ap \
default_disabled default_disabled
@ -1384,6 +1394,7 @@ wpa_supplicant_add_network() {
} }
[ -n "$ocv" ] && append network_data "ocv=$ocv" "$N$T" [ -n "$ocv" ] && append network_data "ocv=$ocv" "$N$T"
[ -n "$beacon_prot" ] && append network_data "beacon_prot=$beacon_prot" "$N$T"
rsn_overriding=0 rsn_overriding=0
case "$htmode" in case "$htmode" in

View File

@ -399,7 +399,8 @@ _wdev_common_vlan_config() {
} }
_wdev_common_station_config() { _wdev_common_station_config() {
config_add_string mac key vid iface config_add_string key vid iface
config_add_array mac
} }
init_wireless_driver() { init_wireless_driver() {

View File

@ -12,9 +12,9 @@ PKG_RELEASE:=1
PKG_SOURCE_PROTO:=git PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL=$(PROJECT_GIT)/project/odhcp6c.git PKG_SOURCE_URL=$(PROJECT_GIT)/project/odhcp6c.git
PKG_SOURCE_DATE:=2025-11-14 PKG_SOURCE_DATE:=2025-11-24
PKG_SOURCE_VERSION:=cbc8ff0e62261a5681dab1aa6d0e503545178354 PKG_SOURCE_VERSION:=f98b6ec82362607a01b7421935d99f54068a80e0
PKG_MIRROR_HASH:=3c3b73c9b74c45900128d91ad443d4411a5ba3f9246b97a562d9acaf7a9f01f3 PKG_MIRROR_HASH:=c9abe17fcfad0c4ff08c7c311e5ed160f97e0a03064d4140012c2ab62d3d3d1c
PKG_MAINTAINER:=Hans Dedecker <dedeckeh@gmail.com> PKG_MAINTAINER:=Hans Dedecker <dedeckeh@gmail.com>
PKG_LICENSE:=GPL-2.0 PKG_LICENSE:=GPL-2.0

View File

@ -12,9 +12,9 @@ PKG_RELEASE:=1
PKG_SOURCE_PROTO:=git PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL=$(PROJECT_GIT)/project/odhcpd.git PKG_SOURCE_URL=$(PROJECT_GIT)/project/odhcpd.git
PKG_MIRROR_HASH:=cdf61fc424b23811aaefc7b47fb24aef94013ef1d299e1cbac94cbd029c1e099 PKG_MIRROR_HASH:=1b9d5324c377f99e2cec3a92a71e9e979a1e4cf16023fea59b5799bcbdbb36d5
PKG_SOURCE_DATE:=2025-11-23 PKG_SOURCE_DATE:=2025-11-27
PKG_SOURCE_VERSION:=650a5df88ebae82d956831c2f87c7c6eedd8c283 PKG_SOURCE_VERSION:=d21e504b38ab4c880c43b7f1649104bb2f0d2d8b
PKG_MAINTAINER:=Álvaro Fernández Rojas <noltari@gmail.com> PKG_MAINTAINER:=Álvaro Fernández Rojas <noltari@gmail.com>
PKG_LICENSE:=GPL-2.0 PKG_LICENSE:=GPL-2.0

View File

@ -58,9 +58,7 @@ CONFIGURE_ARGS += --disable-netlink --disable-pretty-dump
endif endif
# enable support for input_xfrm with kernels newer than 6.6 # enable support for input_xfrm with kernels newer than 6.6
ifeq ($(CONFIG_LINUX_6_6),)
CONFIGURE_ARGS += --enable-rss-input-xfrm CONFIGURE_ARGS += --enable-rss-input-xfrm
endif
define Package/ethtool/install define Package/ethtool/install
$(INSTALL_DIR) $(1)/usr/sbin $(INSTALL_DIR) $(1)/usr/sbin

View File

@ -270,10 +270,13 @@ proto_qmi_setup() {
echo "Waiting for network registration" echo "Waiting for network registration"
sleep 5 sleep 5
local registration_timeout=0 local registration_timeout=0
local serving_system=""
local registration_state="" local registration_state=""
while true; do while true; do
registration_state=$(uqmi -s -d "$device" -t 1000 --get-serving-system 2>/dev/null | jsonfilter -e "@.registration" 2>/dev/null) serving_system="$(uqmi -s -d "$device" -t 1000 --get-serving-system 2>/dev/null)"
registration_state=$(echo "$serving_system" | jsonfilter -e "@.registration" 2>/dev/null)
[ "$serving_system" = "\"Invalid QMI command\"" ] && break
[ "$registration_state" = "registered" ] && break [ "$registration_state" = "registered" ] && break
if [ "$registration_state" = "searching" ] || [ "$registration_state" = "not_registered" ]; then if [ "$registration_state" = "searching" ] || [ "$registration_state" = "not_registered" ]; then

View File

@ -8,8 +8,8 @@ include $(TOPDIR)/rules.mk
PKG_NAME:=selinux-policy PKG_NAME:=selinux-policy
PKG_SOURCE_PROTO:=git PKG_SOURCE_PROTO:=git
PKG_SOURCE_URL:=https://git.defensec.nl/selinux-policy.git PKG_SOURCE_URL:=https://git.defensec.nl/selinux-policy.git
PKG_VERSION:=2.8.3 PKG_VERSION:=2.8.4
PKG_MIRROR_HASH:=accbb1c7bebfbe48d46ac4060d12a06434ed28d6834b0fb4e22d25d329b277ef PKG_MIRROR_HASH:=5ee24ac072414bb2a8a93cefeeb827a11123d7a61313d4389fce554ef2fb94ce
PKG_SOURCE_VERSION:=v$(PKG_VERSION) PKG_SOURCE_VERSION:=v$(PKG_VERSION)
PKG_BUILD_DEPENDS:=secilc/host policycoreutils/host PKG_BUILD_DEPENDS:=secilc/host policycoreutils/host

View File

@ -0,0 +1,44 @@
#
# Copyright (c) 2025 Pascal Beleiu <pascal@beleiu.de>
# Copyright (c) 2025 Eric Schäfer <eric@es86.de>
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#
include $(TOPDIR)/rules.mk
PKG_NAME:=zyxel-bootconfig-ipq807x
PKG_RELEASE:=1
PKG_FLAGS:=nonshared
include $(INCLUDE_DIR)/package.mk
define Package/zyxel-bootconfig-ipq807x
SECTION:=utils
CATEGORY:=Base system
TITLE:=Utility for handling Zyxel bootconfig settings on ipq807x devices
MAINTAINER:=Pascal Beleiu <pascal@beleiu.de>
DEPENDS:=@TARGET_qualcommax_ipq807x
endef
define Package/zyxel-bootconfig-ipq807x/description
This package contains an utility for handling Zyxel bootconfig settings on ipq807x devices.
endef
define Build/Prepare
endef
define Build/Configure
endef
define Build/Compile
endef
define Package/zyxel-bootconfig-ipq807x/install
$(INSTALL_DIR) $(1)/usr/bin $(1)/lib/preinit
$(INSTALL_BIN) ./files/zyxel-bootconfig-ipq807x $(1)/usr/bin/
$(CP) ./files/95_apply_bootconfig $(1)/lib/preinit/95_apply_bootconfig
endef
$(eval $(call BuildPackage,zyxel-bootconfig-ipq807x))

View File

@ -0,0 +1,12 @@
apply_bootconfig() {
. /lib/functions.sh
case $(board_name) in
zyxel,nwa210ax)
status="$(zyxel-bootconfig-ipq807x show | awk '/image0:/ {print $2}')"
[ "$status" != "selected" ] && zyxel-bootconfig-ipq807x --force set image0
;;
esac
}
[ "$INITRAMFS" = "1" ] || boot_hook_add preinit_main apply_bootconfig

View File

@ -0,0 +1,145 @@
#!/bin/sh
. /lib/functions.sh
BOOTCONFIG_MTD="$(find_mtd_part 0:bootconfig || true)"
BOOTCONFIG1_MTD="$(find_mtd_part 0:bootconfig1 || true)"
OFFSET=4
FORCE=0
usage() {
cat <<-EOF
Usage: $0 [--force] {show | set image0 | set image1}
Options:
--force Skip all confirmation prompts (non-interactive mode)
Commands:
show Display current and next boot image status
set image0 Set image0 as active for next boot
set image1 Set image1 as active for next boot
EOF
exit 1
}
if [ "${1:-}" = "--force" ]; then
FORCE=1
shift
fi
require_mtd() {
if [ -z "$BOOTCONFIG_MTD" ] || [ -z "$BOOTCONFIG1_MTD" ]; then
printf "ERROR: bootconfig MTD partitions not found.\n" >&2
exit 1
fi
}
read_status() {
local dev="$1"
hexdump -v -e '1/1 "%01x"' -n 1 -s "$OFFSET" "$dev" 2>/dev/null
}
write_status() {
local dev="$1" val="$2"
printf "\\x$val" | dd of="$dev" bs=1 seek=$OFFSET count=1 conv=notrunc 2>/dev/null
}
status_string() {
case "$1" in
0) printf "none" ;;
1) printf "backup" ;;
2) printf "selected" ;;
*) printf "unknown" ;;
esac
}
show_status() {
printf "Currently booted:\n image%s\n" \
"$(awk -F 'bootImage=' '{print $2}' /proc/cmdline | awk '{print $1}')"
STATUS0="$(read_status "$BOOTCONFIG_MTD")"
STATUS1="$(read_status "$BOOTCONFIG1_MTD")"
printf "At next reboot:\n"
printf " image0: %s\n" "$(status_string "$STATUS0")"
printf " image1: %s\n" "$(status_string "$STATUS1")"
}
check_selected() {
local old="$1"
local img="$2"
if [ "$old" = "0" ]; then
printf "\nWARNING: image%s is currently 'none'. Booting might fail.\n" "$img" >&2
if [ "$FORCE" -ne 1 ]; then
read -rp "Proceed anyway? (yes/no) " confirm >&2
[ "$confirm" != "yes" ] && return 1
fi
fi
printf "02"
}
check_backup() {
local old="$1"
local img="$2"
if [ "$old" = "0" ]; then
printf "\nINFO: Kept image%s as 'none'.\n" "$img" >&2
printf "00"
else
printf "01"
fi
}
set_image() {
local img="$1"
local new0 new1
printf "OLD CONFIGURATION\n"
show_status
if [ "$STATUS0" = "1" ] && [ "$STATUS1" = "1" ] && [ "$FORCE" -ne 1 ]; then
printf "WARNING: Both images are marked as selected!\n" >&2
read -rp "Proceed anyway? (yes/no) " confirm >&2
[ "$confirm" != "yes" ] && exit 1
fi
case "$img" in
0)
new0="$(check_selected "$STATUS0" "0")" || exit 1
new1="$(check_backup "$STATUS1" "1")"
;;
1)
new0="$(check_backup "$STATUS0" "0")"
new1="$(check_selected "$STATUS1" "1")" || exit 1
;;
*)
printf "ERROR: Invalid image selection.\n" >&2
exit 1
;;
esac
printf "\nUpdating image selection...\n"
write_status "$BOOTCONFIG_MTD" "$new0"
write_status "$BOOTCONFIG1_MTD" "$new1"
printf "Done.\n"
printf "\nNEW CONFIGURATION\n"
show_status
}
require_mtd
case "${1:-}" in
show)
show_status
;;
set)
[ -z "${2:-}" ] && usage
set_image "${2#image}"
;;
*)
usage
;;
esac

View File

@ -8,7 +8,7 @@
static int spinand_read_reg_op(struct spinand_device *spinand, u8 reg, u8 *val) static int spinand_read_reg_op(struct spinand_device *spinand, u8 reg, u8 *val)
{ {
@@ -1574,6 +1575,7 @@ static int spinand_probe(struct spi_mem @@ -1575,6 +1576,7 @@ static int spinand_probe(struct spi_mem
if (ret) if (ret)
return ret; return ret;
@ -16,7 +16,7 @@
ret = mtd_device_register(mtd, NULL, 0); ret = mtd_device_register(mtd, NULL, 0);
if (ret) if (ret)
goto err_spinand_cleanup; goto err_spinand_cleanup;
@@ -1581,6 +1583,7 @@ static int spinand_probe(struct spi_mem @@ -1582,6 +1584,7 @@ static int spinand_probe(struct spi_mem
return 0; return 0;
err_spinand_cleanup: err_spinand_cleanup:
@ -24,7 +24,7 @@
spinand_cleanup(spinand); spinand_cleanup(spinand);
return ret; return ret;
@@ -1599,6 +1602,7 @@ static int spinand_remove(struct spi_mem @@ -1600,6 +1603,7 @@ static int spinand_remove(struct spi_mem
if (ret) if (ret)
return ret; return ret;

View File

@ -176,7 +176,6 @@ CONFIG_NVMEM=y
CONFIG_NVMEM_LAYOUTS=y CONFIG_NVMEM_LAYOUTS=y
CONFIG_NVMEM_LAYOUT_U_BOOT_ENV=y CONFIG_NVMEM_LAYOUT_U_BOOT_ENV=y
CONFIG_NVMEM_SYSFS=y CONFIG_NVMEM_SYSFS=y
CONFIG_NVMEM_U_BOOT_ENV=y
CONFIG_OF=y CONFIG_OF=y
CONFIG_OF_ADDRESS=y CONFIG_OF_ADDRESS=y
CONFIG_OF_EARLY_FLATTREE=y CONFIG_OF_EARLY_FLATTREE=y

View File

@ -273,7 +273,7 @@ static int number(int num, int base, int size,
putc(tmp[i]); putc(tmp[i]);
while (size-- > 0) while (size-- > 0)
putc(' ');; putc(' ');
return 1; return 1;
} }

View File

@ -166,7 +166,7 @@ int read_dataflash(unsigned long addr, unsigned long size, char *result)
AT91PS_DataFlash pFlash = &DataFlashInst; AT91PS_DataFlash pFlash = &DataFlashInst;
pFlash = AT91F_DataflashSelect (pFlash, &AddrToRead); pFlash = AT91F_DataflashSelect (pFlash, &AddrToRead);
if (pFlash == 0) if (!pFlash)
return -1; return -1;
return (AT91F_DataFlashRead(pFlash, AddrToRead, size, result)); return (AT91F_DataFlashRead(pFlash, AddrToRead, size, result));

View File

@ -153,7 +153,6 @@ CONFIG_NVMEM=y
CONFIG_NVMEM_LAYOUTS=y CONFIG_NVMEM_LAYOUTS=y
CONFIG_NVMEM_LAYOUT_U_BOOT_ENV=y CONFIG_NVMEM_LAYOUT_U_BOOT_ENV=y
CONFIG_NVMEM_SYSFS=y CONFIG_NVMEM_SYSFS=y
CONFIG_NVMEM_U_BOOT_ENV=y
CONFIG_OF=y CONFIG_OF=y
CONFIG_OF_ADDRESS=y CONFIG_OF_ADDRESS=y
CONFIG_OF_EARLY_FLATTREE=y CONFIG_OF_EARLY_FLATTREE=y

View File

@ -11,6 +11,7 @@
compatible = "sitecom,wlr-7100", "qca,ar9344"; compatible = "sitecom,wlr-7100", "qca,ar9344";
aliases { aliases {
label-mac-device = &eth0;
led-boot = &led_power; led-boot = &led_power;
led-failsafe = &led_power; led-failsafe = &led_power;
led-running = &led_power; led-running = &led_power;
@ -47,12 +48,6 @@
gpios = <&gpio 2 GPIO_ACTIVE_LOW>; gpios = <&gpio 2 GPIO_ACTIVE_LOW>;
default-state = "on"; default-state = "on";
}; };
wlan2g {
label = "blue:wlan2g";
gpios = <&gpio 14 GPIO_ACTIVE_LOW>;
linux,default-trigger = "phy1tpt";
};
}; };
}; };
@ -64,6 +59,9 @@
phy-mode = "rgmii"; phy-mode = "rgmii";
phy-handle = <&phy0>; phy-handle = <&phy0>;
nvmem-cells = <&macaddr_uboot_ethaddr 0>;
nvmem-cell-names = "mac-address";
gmac-config { gmac-config {
device = <&gmac>; device = <&gmac>;
rgmii-gmac0 = <1>; rgmii-gmac0 = <1>;
@ -95,8 +93,8 @@
wifi@0,0 { wifi@0,0 {
compatible = "qcom,ath10k"; compatible = "qcom,ath10k";
reg = <0x0000 0 0 0 0>; reg = <0x0000 0 0 0 0>;
nvmem-cells = <&cal_art_5000>; nvmem-cells = <&cal_art_5000>, <&macaddr_uboot_ethaddr 1>;
nvmem-cell-names = "calibration"; nvmem-cell-names = "calibration", "mac-address";
}; };
}; };
@ -127,6 +125,14 @@
label = "u-boot-env"; label = "u-boot-env";
reg = <0x030000 0x010000>; reg = <0x030000 0x010000>;
read-only; read-only;
nvmem-layout {
compatible = "u-boot,env";
macaddr_uboot_ethaddr: ethaddr {
#nvmem-cell-cells = <1>;
};
};
}; };
partition@40000 { partition@40000 {
@ -157,6 +163,10 @@
#address-cells = <1>; #address-cells = <1>;
#size-cells = <1>; #size-cells = <1>;
cal_art_1000: calibration@1000 {
reg = <0x1000 0x440>;
};
cal_art_5000: calibration@5000 { cal_art_5000: calibration@5000 {
reg = <0x5000 0x844>; reg = <0x5000 0x844>;
}; };
@ -177,5 +187,11 @@
&wmac { &wmac {
status = "okay"; status = "okay";
qca,no-eeprom; nvmem-cells = <&cal_art_1000>, <&macaddr_uboot_ethaddr 0>;
nvmem-cell-names = "calibration", "mac-address";
led {
led-sources = <14>;
led-active-low;
};
}; };

View File

@ -49,22 +49,6 @@
}; };
}; };
ath9k-leds {
compatible = "gpio-leds";
wifi_2g_green {
label = "green:wlan2g";
gpios = <&ath9k0 5 GPIO_ACTIVE_LOW>;
linux,default-trigger = "phy0tpt";
};
wifi_5g_green {
label = "green:wlan5g";
gpios = <&ath9k1 5 GPIO_ACTIVE_LOW>;
linux,default-trigger = "phy1tpt";
};
};
keys { keys {
compatible = "gpio-keys"; compatible = "gpio-keys";
@ -97,22 +81,28 @@
&pcie0 { &pcie0 {
status = "okay"; status = "okay";
ath9k0: wifi@11,0 { /* 2.4 GHz */ wifi@11,0 { /* 2.4 GHz */
compatible = "pci168c,0029"; compatible = "pci168c,0029";
reg = <0x8800 0 0 0 0>;
nvmem-cells = <&macaddr_hwinfo_1c 1>; nvmem-cells = <&macaddr_hwinfo_1c 1>;
nvmem-cell-names = "mac-address"; nvmem-cell-names = "mac-address";
reg = <0x8800 0 0 0 0>;
#gpio-cells = <2>; led {
gpio-controller; led-sources = <5>;
led-active-low;
};
}; };
ath9k1: wifi@12,0 { /* 5 GHz */ wifi@12,0 { /* 5 GHz */
compatible = "pci168c,0029"; compatible = "pci168c,0029";
reg = <0x9000 0 0 0 0>;
nvmem-cells = <&macaddr_hwinfo_1c 2>; nvmem-cells = <&macaddr_hwinfo_1c 2>;
nvmem-cell-names = "mac-address"; nvmem-cell-names = "mac-address";
reg = <0x9000 0 0 0 0>;
#gpio-cells = <2>; led {
gpio-controller; led-sources = <5>;
led-active-low;
};
}; };
}; };

View File

@ -58,22 +58,6 @@
}; };
}; };
ath9k-leds {
compatible = "gpio-leds";
wlan2g {
label = "blue:wlan2g";
gpios = <&ath9k0 5 GPIO_ACTIVE_LOW>;
linux,default-trigger = "phy0tpt";
};
wlan5g {
label = "blue:wlan5g";
gpios = <&ath9k1 5 GPIO_ACTIVE_LOW>;
linux,default-trigger = "phy1tpt";
};
};
keys { keys {
compatible = "gpio-keys"; compatible = "gpio-keys";
@ -146,8 +130,11 @@
reg = <0x8800 0 0 0 0>; reg = <0x8800 0 0 0 0>;
nvmem-cells = <&macaddr_lan 0>, <&cal_art_1000>; nvmem-cells = <&macaddr_lan 0>, <&cal_art_1000>;
nvmem-cell-names = "mac-address", "calibration"; nvmem-cell-names = "mac-address", "calibration";
#gpio-cells = <2>;
gpio-controller; led {
led-sources = <5>;
led-active-low;
};
}; };
ath9k1: wifi@12,0 { ath9k1: wifi@12,0 {
@ -155,8 +142,11 @@
reg = <0x9000 0 0 0 0>; reg = <0x9000 0 0 0 0>;
nvmem-cells = <&macaddr_wan 1>, <&cal_art_5000>; nvmem-cells = <&macaddr_wan 1>, <&cal_art_5000>;
nvmem-cell-names = "mac-address", "calibration"; nvmem-cell-names = "mac-address", "calibration";
#gpio-cells = <2>;
gpio-controller; led {
led-sources = <5>;
led-active-low;
};
}; };
}; };

View File

@ -27,22 +27,6 @@
}; };
}; };
ath9k-leds {
compatible = "gpio-leds";
wifi_2g_green {
label = "green:wlan2g";
gpios = <&ath9k0 5 GPIO_ACTIVE_LOW>;
linux,default-trigger = "phy0tpt";
};
wifi_5g_green {
label = "green:wlan5g";
gpios = <&ath9k1 5 GPIO_ACTIVE_LOW>;
linux,default-trigger = "phy1tpt";
};
};
keys { keys {
compatible = "gpio-keys"; compatible = "gpio-keys";
@ -149,21 +133,27 @@
&pcie0 { &pcie0 {
status = "okay"; status = "okay";
ath9k0: wifi@11,0 { wifi@11,0 {
compatible = "pci168c,0029"; compatible = "pci168c,0029";
reg = <0x8800 0 0 0 0>; reg = <0x8800 0 0 0 0>;
nvmem-cells = <&macaddr_art_120c>, <&calibration_art_1000>; nvmem-cells = <&macaddr_art_120c>, <&calibration_art_1000>;
nvmem-cell-names = "mac-address", "calibration"; nvmem-cell-names = "mac-address", "calibration";
#gpio-cells = <2>;
gpio-controller; led {
led-sources = <5>;
led-active-low;
};
}; };
ath9k1: wifi@12,0 { wifi@12,0 {
compatible = "pci168c,0029"; compatible = "pci168c,0029";
reg = <0x9000 0 0 0 0>; reg = <0x9000 0 0 0 0>;
nvmem-cells = <&macaddr_art_520c 1>, <&calibration_art_5000>; nvmem-cells = <&macaddr_art_520c 1>, <&calibration_art_5000>;
nvmem-cell-names = "mac-address", "calibration"; nvmem-cell-names = "mac-address", "calibration";
#gpio-cells = <2>;
gpio-controller; led {
led-sources = <5>;
led-active-low;
};
}; };
}; };

View File

@ -90,17 +90,6 @@
gpios = <&gpio 17 GPIO_ACTIVE_LOW>; gpios = <&gpio 17 GPIO_ACTIVE_LOW>;
}; };
}; };
ath9k-leds {
compatible = "gpio-leds";
wlan {
function = LED_FUNCTION_WLAN;
color = <LED_COLOR_ID_GREEN>;
gpios = <&ath9k 1 GPIO_ACTIVE_LOW>;
linux,default-trigger = "phy0tpt";
};
};
}; };
&spi { &spi {
@ -160,13 +149,16 @@
&pcie { &pcie {
status = "okay"; status = "okay";
ath9k: wifi@0,0 { wifi@0,0 {
compatible = "pci168c,002e"; compatible = "pci168c,002e";
reg = <0x0000 0 0 0 0>; reg = <0x0000 0 0 0 0>;
nvmem-cells = <&cal_art_1000>; nvmem-cells = <&cal_art_1000>;
nvmem-cell-names = "calibration"; nvmem-cell-names = "calibration";
#gpio-cells = <2>;
gpio-controller; led {
led-sources = <1>;
led-actice-low;
};
}; };
}; };

View File

@ -49,17 +49,6 @@
gpios = <&gpio 0 GPIO_ACTIVE_LOW>; gpios = <&gpio 0 GPIO_ACTIVE_LOW>;
}; };
}; };
ath9k-leds {
compatible = "gpio-leds";
wlan {
function = LED_FUNCTION_WLAN;
color = <LED_COLOR_ID_GREEN>;
gpios = <&ath9k 1 GPIO_ACTIVE_LOW>;
linux,default-trigger = "phy0tpt";
};
};
}; };
&spi { &spi {
@ -128,8 +117,11 @@
reg = <0x0000 0 0 0 0>; reg = <0x0000 0 0 0 0>;
nvmem-cells = <&macaddr_uboot_1fc00 0>, <&calibration_art_1000>; nvmem-cells = <&macaddr_uboot_1fc00 0>, <&calibration_art_1000>;
nvmem-cell-names = "mac-address", "calibration"; nvmem-cell-names = "mac-address", "calibration";
#gpio-cells = <2>;
gpio-controller; led {
led-sources = <1>;
led-active-low;
};
}; };
}; };

Some files were not shown because too many files have changed in this diff Show More