-
-
Notifications
You must be signed in to change notification settings - Fork 1.9k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
bcm47xx: add testing support for kernel 6.1
Tested on Luxul XWR-1750 (BCM4706). Working: switch (LAN, WAN), LEDs, sysupgrade. Signed-off-by: Rafał Miłecki <[email protected]>
- Loading branch information
Rafał Miłecki
committed
Mar 28, 2024
1 parent
d4a4082
commit 8583a97
Showing
23 changed files
with
2,229 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,176 @@ | ||
CONFIG_ARCH_32BIT_OFF_T=y | ||
CONFIG_ARCH_HIBERNATION_POSSIBLE=y | ||
CONFIG_ARCH_KEEP_MEMBLOCK=y | ||
CONFIG_ARCH_MMAP_RND_BITS_MAX=15 | ||
CONFIG_ARCH_MMAP_RND_COMPAT_BITS_MAX=15 | ||
CONFIG_ARCH_SUSPEND_POSSIBLE=y | ||
CONFIG_BCM47XX=y | ||
CONFIG_BCM47XX_BCMA=y | ||
CONFIG_BCM47XX_NVRAM=y | ||
CONFIG_BCM47XX_SPROM=y | ||
CONFIG_BCM47XX_SSB=y | ||
CONFIG_BCM47XX_WDT=y | ||
CONFIG_BCMA=y | ||
CONFIG_BCMA_BLOCKIO=y | ||
CONFIG_BCMA_DEBUG=y | ||
CONFIG_BCMA_DRIVER_GMAC_CMN=y | ||
CONFIG_BCMA_DRIVER_GPIO=y | ||
CONFIG_BCMA_DRIVER_MIPS=y | ||
CONFIG_BCMA_DRIVER_PCI=y | ||
CONFIG_BCMA_DRIVER_PCI_HOSTMODE=y | ||
CONFIG_BCMA_HOST_PCI=y | ||
CONFIG_BCMA_HOST_PCI_POSSIBLE=y | ||
CONFIG_BCMA_HOST_SOC=y | ||
CONFIG_BCMA_NFLASH=y | ||
CONFIG_BCMA_PFLASH=y | ||
CONFIG_BCMA_SFLASH=y | ||
# CONFIG_BGMAC_BCMA is not set | ||
CONFIG_BLK_MQ_PCI=y | ||
CONFIG_CEVT_R4K=y | ||
CONFIG_CLONE_BACKWARDS=y | ||
CONFIG_CMDLINE="noinitrd console=ttyS0,115200" | ||
CONFIG_CMDLINE_BOOL=y | ||
# CONFIG_CMDLINE_OVERRIDE is not set | ||
# CONFIG_COMMON_CLK is not set | ||
CONFIG_COMPAT_32BIT_TIME=y | ||
# CONFIG_CPU_BMIPS is not set | ||
CONFIG_CPU_GENERIC_DUMP_TLB=y | ||
CONFIG_CPU_HAS_PREFETCH=y | ||
CONFIG_CPU_HAS_SYNC=y | ||
CONFIG_CPU_LITTLE_ENDIAN=y | ||
CONFIG_CPU_MIPS32=y | ||
CONFIG_CPU_MIPS32_R1=y | ||
# CONFIG_CPU_MIPS32_R2 is not set | ||
CONFIG_CPU_MIPSR1=y | ||
CONFIG_CPU_MIPSR2_IRQ_VI=y | ||
CONFIG_CPU_NEEDS_NO_SMARTMIPS_OR_MICROMIPS=y | ||
CONFIG_CPU_R4K_CACHE_TLB=y | ||
CONFIG_CPU_SUPPORTS_32BIT_KERNEL=y | ||
CONFIG_CPU_SUPPORTS_HIGHMEM=y | ||
CONFIG_CRYPTO_LIB_BLAKE2S_GENERIC=y | ||
CONFIG_CRYPTO_LIB_POLY1305_RSIZE=2 | ||
CONFIG_CRYPTO_RNG2=y | ||
CONFIG_CSRC_R4K=y | ||
CONFIG_DMA_NONCOHERENT=y | ||
# CONFIG_EARLY_PRINTK is not set | ||
CONFIG_FIXED_PHY=y | ||
CONFIG_FW_LOADER_PAGED_BUF=y | ||
CONFIG_GENERIC_ATOMIC64=y | ||
CONFIG_GENERIC_CLOCKEVENTS=y | ||
CONFIG_GENERIC_CMOS_UPDATE=y | ||
CONFIG_GENERIC_CPU_AUTOPROBE=y | ||
CONFIG_GENERIC_FIND_FIRST_BIT=y | ||
CONFIG_GENERIC_GETTIMEOFDAY=y | ||
CONFIG_GENERIC_IOMAP=y | ||
CONFIG_GENERIC_IRQ_CHIP=y | ||
CONFIG_GENERIC_IRQ_EFFECTIVE_AFF_MASK=y | ||
CONFIG_GENERIC_IRQ_SHOW=y | ||
CONFIG_GENERIC_LIB_ASHLDI3=y | ||
CONFIG_GENERIC_LIB_ASHRDI3=y | ||
CONFIG_GENERIC_LIB_CMPDI2=y | ||
CONFIG_GENERIC_LIB_LSHRDI3=y | ||
CONFIG_GENERIC_LIB_UCMPDI2=y | ||
CONFIG_GENERIC_PCI_IOMAP=y | ||
CONFIG_GENERIC_SCHED_CLOCK=y | ||
CONFIG_GENERIC_SMP_IDLE_THREAD=y | ||
CONFIG_GENERIC_TIME_VSYSCALL=y | ||
CONFIG_GPIOLIB_IRQCHIP=y | ||
CONFIG_GPIO_CDEV=y | ||
CONFIG_GPIO_WDT=y | ||
CONFIG_HANDLE_DOMAIN_IRQ=y | ||
CONFIG_HARDWARE_WATCHPOINTS=y | ||
CONFIG_HAS_DMA=y | ||
CONFIG_HAS_IOMEM=y | ||
CONFIG_HAS_IOPORT_MAP=y | ||
CONFIG_HW_RANDOM=y | ||
CONFIG_HZ_PERIODIC=y | ||
CONFIG_INITRAMFS_SOURCE="" | ||
CONFIG_IRQ_DOMAIN=y | ||
CONFIG_IRQ_FORCED_THREADING=y | ||
CONFIG_IRQ_MIPS_CPU=y | ||
CONFIG_IRQ_WORK=y | ||
CONFIG_LEDS_GPIO_REGISTER=y | ||
CONFIG_LOCK_DEBUGGING_SUPPORT=y | ||
CONFIG_MDIO_BUS=y | ||
CONFIG_MDIO_DEVICE=y | ||
CONFIG_MDIO_DEVRES=y | ||
CONFIG_MEMFD_CREATE=y | ||
CONFIG_MIGRATION=y | ||
CONFIG_MIPS=y | ||
CONFIG_MIPS_ASID_BITS=8 | ||
CONFIG_MIPS_ASID_SHIFT=0 | ||
CONFIG_MIPS_CLOCK_VSYSCALL=y | ||
# CONFIG_MIPS_CMDLINE_BUILTIN_EXTEND is not set | ||
CONFIG_MIPS_CMDLINE_FROM_BOOTLOADER=y | ||
CONFIG_MIPS_EBPF_JIT=y | ||
CONFIG_MIPS_L1_CACHE_SHIFT=5 | ||
CONFIG_MIPS_LD_CAN_LINK_VDSO=y | ||
CONFIG_MODULES_USE_ELF_REL=y | ||
CONFIG_MTD_BCM47XXSFLASH=y | ||
CONFIG_MTD_BCM47XX_PARTS=y | ||
CONFIG_MTD_NAND_BCM47XXNFLASH=y | ||
CONFIG_MTD_NAND_BRCMNAND=y | ||
CONFIG_MTD_NAND_BRCMNAND_BCMA=y | ||
CONFIG_MTD_NAND_CORE=y | ||
CONFIG_MTD_NAND_ECC=y | ||
CONFIG_MTD_PARSER_TRX=y | ||
CONFIG_MTD_PHYSMAP=y | ||
CONFIG_MTD_RAW_NAND=y | ||
CONFIG_NEED_DMA_MAP_STATE=y | ||
CONFIG_NEED_PER_CPU_KM=y | ||
CONFIG_NET_SELFTESTS=y | ||
CONFIG_NO_EXCEPT_FILL=y | ||
CONFIG_NO_GENERIC_PCI_IOPORT_MAP=y | ||
# CONFIG_OF is not set | ||
CONFIG_PCI=y | ||
CONFIG_PCI_DISABLE_COMMON_QUIRKS=y | ||
CONFIG_PCI_DOMAINS=y | ||
CONFIG_PCI_DRIVERS_LEGACY=y | ||
CONFIG_PERF_USE_VMALLOC=y | ||
CONFIG_PGTABLE_LEVELS=2 | ||
CONFIG_PHYLIB=y | ||
CONFIG_PTP_1588_CLOCK_OPTIONAL=y | ||
CONFIG_SERIAL_8250_EXTENDED=y | ||
CONFIG_SERIAL_8250_SHARE_IRQ=y | ||
CONFIG_SERIAL_MCTRL_GPIO=y | ||
CONFIG_SRCU=y | ||
CONFIG_SSB=y | ||
CONFIG_SSB_B43_PCI_BRIDGE=y | ||
CONFIG_SSB_BLOCKIO=y | ||
CONFIG_SSB_DRIVER_EXTIF=y | ||
CONFIG_SSB_DRIVER_GIGE=y | ||
CONFIG_SSB_DRIVER_GPIO=y | ||
CONFIG_SSB_DRIVER_MIPS=y | ||
CONFIG_SSB_DRIVER_PCICORE=y | ||
CONFIG_SSB_DRIVER_PCICORE_POSSIBLE=y | ||
CONFIG_SSB_EMBEDDED=y | ||
CONFIG_SSB_HOST_SOC=y | ||
CONFIG_SSB_PCICORE_HOSTMODE=y | ||
CONFIG_SSB_PCIHOST=y | ||
CONFIG_SSB_PCIHOST_POSSIBLE=y | ||
CONFIG_SSB_SERIAL=y | ||
CONFIG_SSB_SFLASH=y | ||
CONFIG_SSB_SPROM=y | ||
CONFIG_SWCONFIG=y | ||
CONFIG_SWCONFIG_B53=y | ||
CONFIG_SWCONFIG_B53_PHY_DRIVER=y | ||
CONFIG_SWCONFIG_B53_PHY_FIXUP=y | ||
CONFIG_SWPHY=y | ||
CONFIG_SYSCTL_EXCEPTION_TRACE=y | ||
CONFIG_SYS_HAS_CPU_BMIPS=y | ||
CONFIG_SYS_HAS_CPU_BMIPS32_3300=y | ||
CONFIG_SYS_HAS_CPU_MIPS32_R1=y | ||
CONFIG_SYS_HAS_CPU_MIPS32_R2=y | ||
CONFIG_SYS_HAS_EARLY_PRINTK=y | ||
CONFIG_SYS_SUPPORTS_32BIT_KERNEL=y | ||
CONFIG_SYS_SUPPORTS_ARBIT_HZ=y | ||
CONFIG_SYS_SUPPORTS_HIGHMEM=y | ||
CONFIG_SYS_SUPPORTS_LITTLE_ENDIAN=y | ||
CONFIG_SYS_SUPPORTS_MIPS16=y | ||
CONFIG_SYS_SUPPORTS_ZBOOT=y | ||
CONFIG_TARGET_ISA_REV=1 | ||
CONFIG_TICK_CPU_ACCOUNTING=y | ||
CONFIG_TINY_SRCU=y | ||
CONFIG_USB_SUPPORT=y | ||
CONFIG_USE_GENERIC_EARLY_PRINTK_8250=y | ||
CONFIG_WATCHDOG_CORE=y |
65 changes: 65 additions & 0 deletions
65
...et/linux/bcm47xx/patches-6.1/030-v6.3-MIPS-BCM47XX-Add-support-for-Linksys-E2500-V3.patch
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,65 @@ | ||
From fc605b914167de75432c3b5aae239fb191e84a31 Mon Sep 17 00:00:00 2001 | ||
From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= <[email protected]> | ||
Date: Wed, 8 Feb 2023 08:03:01 +0100 | ||
Subject: [PATCH] MIPS: BCM47XX: Add support for Linksys E2500 V3 | ||
MIME-Version: 1.0 | ||
Content-Type: text/plain; charset=UTF-8 | ||
Content-Transfer-Encoding: 8bit | ||
|
||
It's a BCM5358 based home WiFi router. 16 MiB flash, 64 MiB RAM, BCM5325 | ||
switch, on-SoC 802.11n radio. | ||
|
||
Signed-off-by: Rafał Miłecki <[email protected]> | ||
Reviewed-by: Florian Fainelli <[email protected]> | ||
Signed-off-by: Thomas Bogendoerfer <[email protected]> | ||
--- | ||
arch/mips/bcm47xx/board.c | 1 + | ||
arch/mips/bcm47xx/buttons.c | 9 +++++++++ | ||
arch/mips/include/asm/mach-bcm47xx/bcm47xx_board.h | 1 + | ||
3 files changed, 11 insertions(+) | ||
|
||
--- a/arch/mips/bcm47xx/board.c | ||
+++ b/arch/mips/bcm47xx/board.c | ||
@@ -130,6 +130,7 @@ struct bcm47xx_board_type_list2 bcm47xx_ | ||
{{BCM47XX_BOARD_LINKSYS_E1000V21, "Linksys E1000 V2.1"}, "E1000", "2.1"}, | ||
{{BCM47XX_BOARD_LINKSYS_E1200V2, "Linksys E1200 V2"}, "E1200", "2.0"}, | ||
{{BCM47XX_BOARD_LINKSYS_E2000V1, "Linksys E2000 V1"}, "Linksys E2000", "1.0"}, | ||
+ {{BCM47XX_BOARD_LINKSYS_E2500V3, "Linksys E2500 V3"}, "E2500", "1.0"}, | ||
/* like WRT610N v2.0 */ | ||
{{BCM47XX_BOARD_LINKSYS_E3000V1, "Linksys E3000 V1"}, "E300", "1.0"}, | ||
{{BCM47XX_BOARD_LINKSYS_E3200V1, "Linksys E3200 V1"}, "E3200", "1.0"}, | ||
--- a/arch/mips/bcm47xx/buttons.c | ||
+++ b/arch/mips/bcm47xx/buttons.c | ||
@@ -223,6 +223,12 @@ bcm47xx_buttons_linksys_e2000v1[] __init | ||
}; | ||
|
||
static const struct gpio_keys_button | ||
+bcm47xx_buttons_linksys_e2500v3[] __initconst = { | ||
+ BCM47XX_GPIO_KEY(9, KEY_WPS_BUTTON), | ||
+ BCM47XX_GPIO_KEY(10, KEY_RESTART), | ||
+}; | ||
+ | ||
+static const struct gpio_keys_button | ||
bcm47xx_buttons_linksys_e3000v1[] __initconst = { | ||
BCM47XX_GPIO_KEY(4, KEY_WPS_BUTTON), | ||
BCM47XX_GPIO_KEY(6, KEY_RESTART), | ||
@@ -617,6 +623,9 @@ int __init bcm47xx_buttons_register(void | ||
case BCM47XX_BOARD_LINKSYS_E2000V1: | ||
err = bcm47xx_copy_bdata(bcm47xx_buttons_linksys_e2000v1); | ||
break; | ||
+ case BCM47XX_BOARD_LINKSYS_E2500V3: | ||
+ err = bcm47xx_copy_bdata(bcm47xx_buttons_linksys_e2500v3); | ||
+ break; | ||
case BCM47XX_BOARD_LINKSYS_E3000V1: | ||
err = bcm47xx_copy_bdata(bcm47xx_buttons_linksys_e3000v1); | ||
break; | ||
--- a/arch/mips/include/asm/mach-bcm47xx/bcm47xx_board.h | ||
+++ b/arch/mips/include/asm/mach-bcm47xx/bcm47xx_board.h | ||
@@ -61,6 +61,7 @@ enum bcm47xx_board { | ||
BCM47XX_BOARD_LINKSYS_E1000V21, | ||
BCM47XX_BOARD_LINKSYS_E1200V2, | ||
BCM47XX_BOARD_LINKSYS_E2000V1, | ||
+ BCM47XX_BOARD_LINKSYS_E2500V3, | ||
BCM47XX_BOARD_LINKSYS_E3000V1, | ||
BCM47XX_BOARD_LINKSYS_E3200V1, | ||
BCM47XX_BOARD_LINKSYS_E4200V1, |
61 changes: 61 additions & 0 deletions
61
target/linux/bcm47xx/patches-6.1/130-MIPS-BCM47XX-Add-support-for-Huawei-B593u-12.patch
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,61 @@ | ||
From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= <[email protected]> | ||
Date: Mon, 27 Feb 2023 07:44:38 +0100 | ||
Subject: [PATCH] MIPS: BCM47XX: Add support for Huawei B593u-12 | ||
MIME-Version: 1.0 | ||
Content-Type: text/plain; charset=UTF-8 | ||
Content-Transfer-Encoding: 8bit | ||
|
||
It's a BCM5358 based home router. One of very few bcm47xx devices with | ||
cellular modems (here: LTE). | ||
|
||
Signed-off-by: Rafał Miłecki <[email protected]> | ||
--- | ||
arch/mips/bcm47xx/board.c | 1 + | ||
arch/mips/bcm47xx/leds.c | 8 ++++++++ | ||
arch/mips/include/asm/mach-bcm47xx/bcm47xx_board.h | 1 + | ||
3 files changed, 10 insertions(+) | ||
|
||
--- a/arch/mips/bcm47xx/board.c | ||
+++ b/arch/mips/bcm47xx/board.c | ||
@@ -193,6 +193,7 @@ struct bcm47xx_board_type_list1 bcm47xx_ | ||
/* boardtype, boardnum, boardrev */ | ||
static const | ||
struct bcm47xx_board_type_list3 bcm47xx_board_list_board[] __initconst = { | ||
+ {{BCM47XX_BOARD_HUAWEI_B593U_12, "Huawei B593u-12"}, "0x053d", "1234", "0x1301"}, | ||
{{BCM47XX_BOARD_HUAWEI_E970, "Huawei E970"}, "0x048e", "0x5347", "0x11"}, | ||
{{BCM47XX_BOARD_PHICOMM_M1, "Phicomm M1"}, "0x0590", "80", "0x1104"}, | ||
{{BCM47XX_BOARD_ZTE_H218N, "ZTE H218N"}, "0x053d", "1234", "0x1305"}, | ||
--- a/arch/mips/bcm47xx/leds.c | ||
+++ b/arch/mips/bcm47xx/leds.c | ||
@@ -223,6 +223,11 @@ bcm47xx_leds_dlink_dir330[] __initconst | ||
/* Huawei */ | ||
|
||
static const struct gpio_led | ||
+bcm47xx_leds_huawei_b593u_12[] __initconst = { | ||
+ BCM47XX_GPIO_LED(5, "blue", "wlan", 0, LEDS_GPIO_DEFSTATE_OFF), | ||
+}; | ||
+ | ||
+static const struct gpio_led | ||
bcm47xx_leds_huawei_e970[] __initconst = { | ||
BCM47XX_GPIO_LED(0, "unk", "wlan", 0, LEDS_GPIO_DEFSTATE_OFF), | ||
}; | ||
@@ -672,6 +677,9 @@ void __init bcm47xx_leds_register(void) | ||
bcm47xx_set_pdata(bcm47xx_leds_dlink_dir330); | ||
break; | ||
|
||
+ case BCM47XX_BOARD_HUAWEI_B593U_12: | ||
+ bcm47xx_set_pdata(bcm47xx_leds_huawei_b593u_12); | ||
+ break; | ||
case BCM47XX_BOARD_HUAWEI_E970: | ||
bcm47xx_set_pdata(bcm47xx_leds_huawei_e970); | ||
break; | ||
--- a/arch/mips/include/asm/mach-bcm47xx/bcm47xx_board.h | ||
+++ b/arch/mips/include/asm/mach-bcm47xx/bcm47xx_board.h | ||
@@ -53,6 +53,7 @@ enum bcm47xx_board { | ||
BCM47XX_BOARD_DLINK_DIR130, | ||
BCM47XX_BOARD_DLINK_DIR330, | ||
|
||
+ BCM47XX_BOARD_HUAWEI_B593U_12, | ||
BCM47XX_BOARD_HUAWEI_E970, | ||
|
||
BCM47XX_BOARD_LINKSYS_E900V1, |
Oops, something went wrong.