mirror of
https://github.com/openwrt/openwrt.git
synced 2024-12-21 22:47:56 +00:00
bcm53xx: remove support for kernel 4.14
We currently support three kernel versions on this target, let's just get rid of the oldest one. Cc: Rafał Miłecki <rafal@milecki.pl> Cc: John Crispin <john@phrozen.org> Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
This commit is contained in:
parent
06feb09e54
commit
c3742ce38c
@ -1,363 +0,0 @@
|
||||
CONFIG_ALIGNMENT_TRAP=y
|
||||
CONFIG_ARCH_BCM=y
|
||||
CONFIG_ARCH_BCM_5301X=y
|
||||
CONFIG_ARCH_BCM_53573=y
|
||||
CONFIG_ARCH_BCM_IPROC=y
|
||||
CONFIG_ARCH_CLOCKSOURCE_DATA=y
|
||||
CONFIG_ARCH_HAS_DEBUG_VIRTUAL=y
|
||||
CONFIG_ARCH_HAS_ELF_RANDOMIZE=y
|
||||
CONFIG_ARCH_HAS_GCOV_PROFILE_ALL=y
|
||||
CONFIG_ARCH_HAS_SET_MEMORY=y
|
||||
CONFIG_ARCH_HAS_SG_CHAIN=y
|
||||
CONFIG_ARCH_HAS_STRICT_KERNEL_RWX=y
|
||||
CONFIG_ARCH_HAS_STRICT_MODULE_RWX=y
|
||||
CONFIG_ARCH_HAS_TICK_BROADCAST=y
|
||||
CONFIG_ARCH_HAVE_CUSTOM_GPIO_H=y
|
||||
CONFIG_ARCH_HIBERNATION_POSSIBLE=y
|
||||
CONFIG_ARCH_MIGHT_HAVE_PC_PARPORT=y
|
||||
CONFIG_ARCH_MULTIPLATFORM=y
|
||||
# CONFIG_ARCH_MULTI_CPU_AUTO is not set
|
||||
CONFIG_ARCH_MULTI_V6_V7=y
|
||||
CONFIG_ARCH_MULTI_V7=y
|
||||
CONFIG_ARCH_NR_GPIO=0
|
||||
CONFIG_ARCH_OPTIONAL_KERNEL_RWX=y
|
||||
CONFIG_ARCH_OPTIONAL_KERNEL_RWX_DEFAULT=y
|
||||
# CONFIG_ARCH_SELECT_MEMORY_MODEL is not set
|
||||
# CONFIG_ARCH_SPARSEMEM_DEFAULT is not set
|
||||
CONFIG_ARCH_SUPPORTS_ATOMIC_RMW=y
|
||||
CONFIG_ARCH_SUPPORTS_UPROBES=y
|
||||
CONFIG_ARCH_SUSPEND_POSSIBLE=y
|
||||
CONFIG_ARCH_USE_BUILTIN_BSWAP=y
|
||||
CONFIG_ARCH_USE_CMPXCHG_LOCKREF=y
|
||||
CONFIG_ARCH_WANT_GENERAL_HUGETLB=y
|
||||
CONFIG_ARCH_WANT_IPC_PARSE_VERSION=y
|
||||
CONFIG_ARM=y
|
||||
CONFIG_ARM_AMBA=y
|
||||
CONFIG_ARM_APPENDED_DTB=y
|
||||
CONFIG_ARM_ARCH_TIMER=y
|
||||
CONFIG_ARM_ARCH_TIMER_EVTSTREAM=y
|
||||
# CONFIG_ARM_ATAG_DTB_COMPAT is not set
|
||||
# CONFIG_ARM_CPU_SUSPEND is not set
|
||||
CONFIG_ARM_ERRATA_754322=y
|
||||
CONFIG_ARM_ERRATA_764369=y
|
||||
CONFIG_ARM_ERRATA_775420=y
|
||||
CONFIG_ARM_GIC=y
|
||||
CONFIG_ARM_GLOBAL_TIMER=y
|
||||
CONFIG_ARM_HAS_SG_CHAIN=y
|
||||
CONFIG_ARM_HEAVY_MB=y
|
||||
CONFIG_ARM_L1_CACHE_SHIFT=6
|
||||
CONFIG_ARM_L1_CACHE_SHIFT_6=y
|
||||
# CONFIG_ARM_LPAE is not set
|
||||
CONFIG_ARM_PATCH_IDIV=y
|
||||
CONFIG_ARM_PATCH_PHYS_VIRT=y
|
||||
# CONFIG_ARM_SP805_WATCHDOG is not set
|
||||
CONFIG_ARM_THUMB=y
|
||||
# CONFIG_ARM_THUMBEE is not set
|
||||
CONFIG_ARM_VIRT_EXT=y
|
||||
CONFIG_ATAGS=y
|
||||
CONFIG_AUTO_ZRELADDR=y
|
||||
CONFIG_BCM47XX_NVRAM=y
|
||||
CONFIG_BCM47XX_SPROM=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_PCI=y
|
||||
CONFIG_BCMA_HOST_PCI=y
|
||||
CONFIG_BCMA_HOST_PCI_POSSIBLE=y
|
||||
CONFIG_BCMA_HOST_SOC=y
|
||||
CONFIG_BCMA_SFLASH=y
|
||||
CONFIG_BCM_NET_PHYLIB=y
|
||||
CONFIG_BCM_NS_THERMAL=y
|
||||
CONFIG_BGMAC=y
|
||||
CONFIG_BGMAC_BCMA=y
|
||||
# CONFIG_BGMAC_PLATFORM is not set
|
||||
CONFIG_BLK_MQ_PCI=y
|
||||
CONFIG_BOUNCE=y
|
||||
CONFIG_BROADCOM_PHY=y
|
||||
CONFIG_CACHE_L2X0=y
|
||||
CONFIG_CLKDEV_LOOKUP=y
|
||||
CONFIG_CLKSRC_ARM_GLOBAL_TIMER_SCHED_CLOCK=y
|
||||
CONFIG_CLKSRC_MMIO=y
|
||||
# CONFIG_CLK_BCM_NS2 is not set
|
||||
CONFIG_CLK_BCM_NSP=y
|
||||
# CONFIG_CLK_BCM_SR is not set
|
||||
CONFIG_CLONE_BACKWARDS=y
|
||||
CONFIG_COMMON_CLK=y
|
||||
CONFIG_COMMON_CLK_IPROC=y
|
||||
CONFIG_CPU_32v6K=y
|
||||
CONFIG_CPU_32v7=y
|
||||
CONFIG_CPU_ABRT_EV7=y
|
||||
# CONFIG_CPU_BPREDICT_DISABLE is not set
|
||||
CONFIG_CPU_CACHE_V7=y
|
||||
CONFIG_CPU_CACHE_VIPT=y
|
||||
CONFIG_CPU_COPY_V6=y
|
||||
CONFIG_CPU_CP15=y
|
||||
CONFIG_CPU_CP15_MMU=y
|
||||
CONFIG_CPU_HAS_ASID=y
|
||||
# CONFIG_CPU_ICACHE_DISABLE is not set
|
||||
CONFIG_CPU_PABRT_V7=y
|
||||
CONFIG_CPU_RMAP=y
|
||||
CONFIG_CPU_THUMB_CAPABLE=y
|
||||
CONFIG_CPU_TLB_V7=y
|
||||
CONFIG_CPU_V7=y
|
||||
CONFIG_CRC16=y
|
||||
CONFIG_CRYPTO_ACOMP2=y
|
||||
CONFIG_CRYPTO_AEAD=y
|
||||
CONFIG_CRYPTO_AEAD2=y
|
||||
CONFIG_CRYPTO_DEFLATE=y
|
||||
CONFIG_CRYPTO_HASH2=y
|
||||
CONFIG_CRYPTO_LZO=y
|
||||
CONFIG_CRYPTO_MANAGER=y
|
||||
CONFIG_CRYPTO_MANAGER2=y
|
||||
CONFIG_CRYPTO_NULL2=y
|
||||
CONFIG_CRYPTO_RNG2=y
|
||||
CONFIG_CRYPTO_WORKQUEUE=y
|
||||
CONFIG_DCACHE_WORD_ACCESS=y
|
||||
CONFIG_DEBUG_BCM_5301X=y
|
||||
CONFIG_DEBUG_INFO=y
|
||||
CONFIG_DEBUG_LL=y
|
||||
CONFIG_DEBUG_LL_INCLUDE="debug/8250.S"
|
||||
CONFIG_DEBUG_UART_8250=y
|
||||
# CONFIG_DEBUG_UART_8250_FLOW_CONTROL is not set
|
||||
CONFIG_DEBUG_UART_8250_SHIFT=0
|
||||
CONFIG_DEBUG_UART_PHYS=0x18000300
|
||||
CONFIG_DEBUG_UART_VIRT=0xf1000300
|
||||
CONFIG_DEBUG_UNCOMPRESS=y
|
||||
CONFIG_DEBUG_USER=y
|
||||
CONFIG_DTC=y
|
||||
CONFIG_EARLY_PRINTK=y
|
||||
CONFIG_EDAC_ATOMIC_SCRUB=y
|
||||
CONFIG_EDAC_SUPPORT=y
|
||||
CONFIG_EXTCON=y
|
||||
CONFIG_FIXED_PHY=y
|
||||
CONFIG_FIX_EARLYCON_MEM=y
|
||||
CONFIG_FRAME_POINTER=y
|
||||
# CONFIG_FW_LOADER_USER_HELPER_FALLBACK is not set
|
||||
CONFIG_GENERIC_ALLOCATOR=y
|
||||
CONFIG_GENERIC_ARCH_TOPOLOGY=y
|
||||
CONFIG_GENERIC_BUG=y
|
||||
CONFIG_GENERIC_CLOCKEVENTS=y
|
||||
CONFIG_GENERIC_CLOCKEVENTS_BROADCAST=y
|
||||
CONFIG_GENERIC_CPU_AUTOPROBE=y
|
||||
CONFIG_GENERIC_EARLY_IOREMAP=y
|
||||
CONFIG_GENERIC_IDLE_POLL_SETUP=y
|
||||
CONFIG_GENERIC_IO=y
|
||||
CONFIG_GENERIC_IRQ_EFFECTIVE_AFF_MASK=y
|
||||
CONFIG_GENERIC_IRQ_SHOW=y
|
||||
CONFIG_GENERIC_IRQ_SHOW_LEVEL=y
|
||||
CONFIG_GENERIC_PCI_IOMAP=y
|
||||
CONFIG_GENERIC_PHY=y
|
||||
CONFIG_GENERIC_PINCONF=y
|
||||
CONFIG_GENERIC_PINCTRL_GROUPS=y
|
||||
CONFIG_GENERIC_PINMUX_FUNCTIONS=y
|
||||
CONFIG_GENERIC_SCHED_CLOCK=y
|
||||
CONFIG_GENERIC_SMP_IDLE_THREAD=y
|
||||
CONFIG_GENERIC_STRNCPY_FROM_USER=y
|
||||
CONFIG_GENERIC_STRNLEN_USER=y
|
||||
CONFIG_GPIOLIB=y
|
||||
CONFIG_GPIOLIB_IRQCHIP=y
|
||||
CONFIG_GPIO_74X164=y
|
||||
CONFIG_GPIO_SYSFS=y
|
||||
# CONFIG_GRO_CELLS is not set
|
||||
CONFIG_HANDLE_DOMAIN_IRQ=y
|
||||
CONFIG_HARDEN_BRANCH_PREDICTOR=y
|
||||
CONFIG_HARDIRQS_SW_RESEND=y
|
||||
CONFIG_HAS_DMA=y
|
||||
CONFIG_HAS_IOMEM=y
|
||||
CONFIG_HAS_IOPORT_MAP=y
|
||||
# CONFIG_HAVE_64BIT_ALIGNED_ACCESS is not set
|
||||
CONFIG_HAVE_ARCH_AUDITSYSCALL=y
|
||||
CONFIG_HAVE_ARCH_BITREVERSE=y
|
||||
CONFIG_HAVE_ARCH_JUMP_LABEL=y
|
||||
CONFIG_HAVE_ARCH_KGDB=y
|
||||
CONFIG_HAVE_ARCH_PFN_VALID=y
|
||||
CONFIG_HAVE_ARCH_SECCOMP_FILTER=y
|
||||
CONFIG_HAVE_ARCH_TRACEHOOK=y
|
||||
CONFIG_HAVE_ARM_ARCH_TIMER=y
|
||||
CONFIG_HAVE_ARM_SCU=y
|
||||
CONFIG_HAVE_ARM_SMCCC=y
|
||||
CONFIG_HAVE_ARM_TWD=y
|
||||
# CONFIG_HAVE_BOOTMEM_INFO_NODE is not set
|
||||
CONFIG_HAVE_CC_STACKPROTECTOR=y
|
||||
CONFIG_HAVE_CLK=y
|
||||
CONFIG_HAVE_CLK_PREPARE=y
|
||||
CONFIG_HAVE_CONTEXT_TRACKING=y
|
||||
CONFIG_HAVE_C_RECORDMCOUNT=y
|
||||
CONFIG_HAVE_DEBUG_KMEMLEAK=y
|
||||
CONFIG_HAVE_DMA_API_DEBUG=y
|
||||
CONFIG_HAVE_DMA_CONTIGUOUS=y
|
||||
CONFIG_HAVE_DYNAMIC_FTRACE=y
|
||||
CONFIG_HAVE_DYNAMIC_FTRACE_WITH_REGS=y
|
||||
CONFIG_HAVE_EBPF_JIT=y
|
||||
CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS=y
|
||||
CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y
|
||||
CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y
|
||||
CONFIG_HAVE_FUNCTION_TRACER=y
|
||||
CONFIG_HAVE_GENERIC_DMA_COHERENT=y
|
||||
CONFIG_HAVE_IDE=y
|
||||
CONFIG_HAVE_IRQ_TIME_ACCOUNTING=y
|
||||
CONFIG_HAVE_MEMBLOCK=y
|
||||
CONFIG_HAVE_MOD_ARCH_SPECIFIC=y
|
||||
CONFIG_HAVE_NET_DSA=y
|
||||
CONFIG_HAVE_OPROFILE=y
|
||||
CONFIG_HAVE_OPTPROBES=y
|
||||
CONFIG_HAVE_PERF_EVENTS=y
|
||||
CONFIG_HAVE_PERF_REGS=y
|
||||
CONFIG_HAVE_PERF_USER_STACK_DUMP=y
|
||||
CONFIG_HAVE_PROC_CPU=y
|
||||
CONFIG_HAVE_REGS_AND_STACK_ACCESS_API=y
|
||||
CONFIG_HAVE_SMP=y
|
||||
CONFIG_HAVE_SYSCALL_TRACEPOINTS=y
|
||||
CONFIG_HAVE_UID16=y
|
||||
CONFIG_HAVE_VIRT_CPU_ACCOUNTING_GEN=y
|
||||
CONFIG_HIGHMEM=y
|
||||
# CONFIG_HIGHPTE is not set
|
||||
CONFIG_HZ_FIXED=0
|
||||
CONFIG_HZ_PERIODIC=y
|
||||
CONFIG_INITRAMFS_SOURCE=""
|
||||
CONFIG_IOMMU_HELPER=y
|
||||
CONFIG_IRQCHIP=y
|
||||
CONFIG_IRQ_DOMAIN=y
|
||||
CONFIG_IRQ_DOMAIN_HIERARCHY=y
|
||||
CONFIG_IRQ_FORCED_THREADING=y
|
||||
CONFIG_IRQ_WORK=y
|
||||
CONFIG_LIBFDT=y
|
||||
CONFIG_LOCK_SPIN_ON_OWNER=y
|
||||
CONFIG_LZO_COMPRESS=y
|
||||
CONFIG_LZO_DECOMPRESS=y
|
||||
CONFIG_MDIO_BCM_IPROC=y
|
||||
CONFIG_MDIO_BUS=y
|
||||
CONFIG_MDIO_BUS_MUX=y
|
||||
# CONFIG_MDIO_BUS_MUX_BCM_IPROC is not set
|
||||
CONFIG_MDIO_BUS_MUX_MMIOREG=y
|
||||
CONFIG_MDIO_DEVICE=y
|
||||
CONFIG_MFD_SYSCON=y
|
||||
CONFIG_MIGHT_HAVE_CACHE_L2X0=y
|
||||
CONFIG_MIGHT_HAVE_PCI=y
|
||||
CONFIG_MODULES_USE_ELF_REL=y
|
||||
CONFIG_MTD_BCM47XXSFLASH=y
|
||||
CONFIG_MTD_BCM47XX_PARTS=y
|
||||
CONFIG_MTD_M25P80=y
|
||||
CONFIG_MTD_NAND=y
|
||||
CONFIG_MTD_NAND_BRCMNAND=y
|
||||
CONFIG_MTD_NAND_ECC=y
|
||||
CONFIG_MTD_PARSER_TRX=y
|
||||
# CONFIG_MTD_PHYSMAP_OF is not set
|
||||
CONFIG_MTD_SPI_NOR=y
|
||||
CONFIG_MTD_SPLIT_SEAMA_FW=y
|
||||
CONFIG_MTD_UBI=y
|
||||
CONFIG_MTD_UBI_BEB_LIMIT=20
|
||||
CONFIG_MTD_UBI_BLOCK=y
|
||||
# CONFIG_MTD_UBI_FASTMAP is not set
|
||||
# CONFIG_MTD_UBI_GLUEBI is not set
|
||||
CONFIG_MTD_UBI_WL_THRESHOLD=4096
|
||||
CONFIG_MULTI_IRQ_HANDLER=y
|
||||
CONFIG_MUTEX_SPIN_ON_OWNER=y
|
||||
CONFIG_NEED_DMA_MAP_STATE=y
|
||||
CONFIG_NET_FLOW_LIMIT=y
|
||||
CONFIG_NO_BOOTMEM=y
|
||||
CONFIG_NR_CPUS=2
|
||||
CONFIG_OF=y
|
||||
CONFIG_OF_ADDRESS=y
|
||||
CONFIG_OF_ADDRESS_PCI=y
|
||||
CONFIG_OF_EARLY_FLATTREE=y
|
||||
CONFIG_OF_FLATTREE=y
|
||||
CONFIG_OF_GPIO=y
|
||||
CONFIG_OF_IRQ=y
|
||||
CONFIG_OF_MDIO=y
|
||||
CONFIG_OF_NET=y
|
||||
CONFIG_OF_PCI=y
|
||||
CONFIG_OF_PCI_IRQ=y
|
||||
CONFIG_OF_RESERVED_MEM=y
|
||||
CONFIG_OLD_SIGACTION=y
|
||||
CONFIG_OLD_SIGSUSPEND3=y
|
||||
CONFIG_OUTER_CACHE=y
|
||||
CONFIG_OUTER_CACHE_SYNC=y
|
||||
CONFIG_PADATA=y
|
||||
CONFIG_PAGE_OFFSET=0xC0000000
|
||||
CONFIG_PCI=y
|
||||
CONFIG_PCIE_IPROC=y
|
||||
CONFIG_PCIE_IPROC_BCMA=y
|
||||
# CONFIG_PCIE_IPROC_PLATFORM is not set
|
||||
CONFIG_PCI_DOMAINS=y
|
||||
CONFIG_PCI_DOMAINS_GENERIC=y
|
||||
CONFIG_PERF_USE_VMALLOC=y
|
||||
CONFIG_PGTABLE_LEVELS=2
|
||||
CONFIG_PHYLIB=y
|
||||
# CONFIG_PHY_BCM_NS_USB2 is not set
|
||||
# CONFIG_PHY_BCM_NS_USB3 is not set
|
||||
# CONFIG_PHY_BRCM_SATA is not set
|
||||
# CONFIG_PHY_NS2_USB_DRD is not set
|
||||
CONFIG_PINCTRL=y
|
||||
# CONFIG_PINCTRL_IPROC_GPIO is not set
|
||||
CONFIG_PINCTRL_NS=y
|
||||
# CONFIG_PINCTRL_NS2_MUX is not set
|
||||
# CONFIG_PL310_ERRATA_588369 is not set
|
||||
# CONFIG_PL310_ERRATA_727915 is not set
|
||||
# CONFIG_PL310_ERRATA_753970 is not set
|
||||
# CONFIG_PL310_ERRATA_769419 is not set
|
||||
CONFIG_RATIONAL=y
|
||||
CONFIG_RCU_NEED_SEGCBLIST=y
|
||||
CONFIG_RCU_STALL_COMMON=y
|
||||
CONFIG_REGMAP=y
|
||||
CONFIG_REGMAP_MMIO=y
|
||||
CONFIG_RFS_ACCEL=y
|
||||
CONFIG_RPS=y
|
||||
CONFIG_RWSEM_SPIN_ON_OWNER=y
|
||||
CONFIG_RWSEM_XCHGADD_ALGORITHM=y
|
||||
# CONFIG_SCHED_INFO is not set
|
||||
# CONFIG_SCSI_DMA is not set
|
||||
CONFIG_SERIAL_8250_FSL=y
|
||||
# CONFIG_SERIAL_AMBA_PL011 is not set
|
||||
CONFIG_SERIAL_OF_PLATFORM=y
|
||||
CONFIG_SMP=y
|
||||
CONFIG_SMP_ON_UP=y
|
||||
CONFIG_SPARSE_IRQ=y
|
||||
CONFIG_SPI=y
|
||||
# CONFIG_SPI_BCM53XX is not set
|
||||
CONFIG_SPI_BCM_QSPI=y
|
||||
CONFIG_SPI_BITBANG=y
|
||||
CONFIG_SPI_GPIO=y
|
||||
CONFIG_SPI_MASTER=y
|
||||
CONFIG_SRCU=y
|
||||
CONFIG_SWCONFIG=y
|
||||
CONFIG_SWCONFIG_B53=y
|
||||
# CONFIG_SWCONFIG_B53_MMAP_DRIVER is not set
|
||||
CONFIG_SWCONFIG_B53_PHY_DRIVER=y
|
||||
CONFIG_SWCONFIG_B53_PHY_FIXUP=y
|
||||
CONFIG_SWCONFIG_B53_SRAB_DRIVER=y
|
||||
CONFIG_SWIOTLB=y
|
||||
CONFIG_SWPHY=y
|
||||
CONFIG_SWP_EMULATE=y
|
||||
CONFIG_SYS_SUPPORTS_APM_EMULATION=y
|
||||
CONFIG_THERMAL=y
|
||||
CONFIG_THERMAL_DEFAULT_GOV_STEP_WISE=y
|
||||
CONFIG_THERMAL_EMERGENCY_POWEROFF_DELAY_MS=0
|
||||
CONFIG_THERMAL_GOV_STEP_WISE=y
|
||||
CONFIG_THERMAL_OF=y
|
||||
# CONFIG_THUMB2_KERNEL is not set
|
||||
CONFIG_TICK_CPU_ACCOUNTING=y
|
||||
CONFIG_TIMER_OF=y
|
||||
CONFIG_TIMER_PROBE=y
|
||||
CONFIG_TREE_RCU=y
|
||||
CONFIG_TREE_SRCU=y
|
||||
CONFIG_UBIFS_FS=y
|
||||
# CONFIG_UBIFS_FS_ADVANCED_COMPR is not set
|
||||
CONFIG_UBIFS_FS_LZO=y
|
||||
CONFIG_UBIFS_FS_ZLIB=y
|
||||
CONFIG_UNCOMPRESS_INCLUDE="debug/uncompress.h"
|
||||
CONFIG_USB_SUPPORT=y
|
||||
CONFIG_USE_OF=y
|
||||
CONFIG_VECTORS_BASE=0xffff0000
|
||||
# CONFIG_VFP is not set
|
||||
CONFIG_WATCHDOG_CORE=y
|
||||
CONFIG_XPS=y
|
||||
CONFIG_XZ_DEC_ARM=y
|
||||
CONFIG_XZ_DEC_BCJ=y
|
||||
CONFIG_ZBOOT_ROM_BSS=0x0
|
||||
CONFIG_ZBOOT_ROM_TEXT=0x0
|
||||
CONFIG_ZLIB_DEFLATE=y
|
||||
CONFIG_ZLIB_INFLATE=y
|
@ -1,30 +0,0 @@
|
||||
From 2460266f21f140936e627f28f28d1a4f30887ae9 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= <rafal@milecki.pl>
|
||||
Date: Fri, 6 Oct 2017 10:52:35 +0200
|
||||
Subject: [PATCH] ARM: dts: BCM5301X: Specify USB ports for USB LED of Luxul
|
||||
XWR-1200
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
This info can be used by operating system to setup LED behavior.
|
||||
|
||||
Reported-by: Dan Haab <dhaab@luxul.com>
|
||||
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
|
||||
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
|
||||
---
|
||||
arch/arm/boot/dts/bcm47081-luxul-xwr-1200.dts | 3 ++-
|
||||
1 file changed, 2 insertions(+), 1 deletion(-)
|
||||
|
||||
--- a/arch/arm/boot/dts/bcm47081-luxul-xwr-1200.dts
|
||||
+++ b/arch/arm/boot/dts/bcm47081-luxul-xwr-1200.dts
|
||||
@@ -57,7 +57,8 @@
|
||||
usb {
|
||||
label = "bcm53xx:green:usb";
|
||||
gpios = <&chipcommon 8 GPIO_ACTIVE_LOW>;
|
||||
- linux,default-trigger = "none";
|
||||
+ trigger-sources = <&ohci_port2>, <&ehci_port2>;
|
||||
+ linux,default-trigger = "usbport";
|
||||
};
|
||||
|
||||
status {
|
@ -1,96 +0,0 @@
|
||||
From 1f4b0d5596d2e3ea8e953d578ab8444ce860d35d Mon Sep 17 00:00:00 2001
|
||||
From: Dan Haab <dhaab@luxul.com>
|
||||
Date: Mon, 9 Oct 2017 09:46:22 -0600
|
||||
Subject: [PATCH] ARM: dts: BCM5301X: Add DT for Luxul XBR-4500
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
This is BCM47094 (AKA BCM4709C0) based router with ports-on-the-front
|
||||
board design.
|
||||
|
||||
Signed-off-by: Dan Haab <dhaab@luxul.com>
|
||||
Acked-by: Rafał Miłecki <rafal@milecki.pl>
|
||||
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
|
||||
---
|
||||
arch/arm/boot/dts/Makefile | 1 +
|
||||
arch/arm/boot/dts/bcm47094-luxul-xbr-4500.dts | 63 +++++++++++++++++++++++++++
|
||||
2 files changed, 64 insertions(+)
|
||||
create mode 100644 arch/arm/boot/dts/bcm47094-luxul-xbr-4500.dts
|
||||
|
||||
--- a/arch/arm/boot/dts/Makefile
|
||||
+++ b/arch/arm/boot/dts/Makefile
|
||||
@@ -101,6 +101,7 @@ dtb-$(CONFIG_ARCH_BCM_5301X) += \
|
||||
bcm4709-tplink-archer-c9-v1.dtb \
|
||||
bcm47094-dlink-dir-885l.dtb \
|
||||
bcm47094-linksys-panamera.dtb \
|
||||
+ bcm47094-luxul-xbr-4500.dtb \
|
||||
bcm47094-luxul-xwr-3100.dtb \
|
||||
bcm47094-netgear-r8500.dtb \
|
||||
bcm94708.dtb \
|
||||
--- /dev/null
|
||||
+++ b/arch/arm/boot/dts/bcm47094-luxul-xbr-4500.dts
|
||||
@@ -0,0 +1,63 @@
|
||||
+/*
|
||||
+ * Copyright (C) 2017 Luxul Inc.
|
||||
+ *
|
||||
+ * Licensed under the ISC license.
|
||||
+ */
|
||||
+
|
||||
+/dts-v1/;
|
||||
+
|
||||
+#include "bcm4708.dtsi"
|
||||
+#include "bcm5301x-nand-cs0-bch8.dtsi"
|
||||
+
|
||||
+/ {
|
||||
+ compatible = "luxul,xbr-4500-v1", "brcm,bcm47094", "brcm,bcm4708";
|
||||
+ model = "Luxul XBR-4500 V1";
|
||||
+
|
||||
+ chosen {
|
||||
+ bootargs = "earlycon";
|
||||
+ };
|
||||
+
|
||||
+ memory {
|
||||
+ reg = <0x00000000 0x08000000
|
||||
+ 0x88000000 0x18000000>;
|
||||
+ };
|
||||
+
|
||||
+ leds {
|
||||
+ compatible = "gpio-leds";
|
||||
+
|
||||
+ status {
|
||||
+ label = "bcm53xx:green:status";
|
||||
+ gpios = <&chipcommon 20 GPIO_ACTIVE_HIGH>;
|
||||
+ linux,default-trigger = "timer";
|
||||
+ };
|
||||
+
|
||||
+ usb3 {
|
||||
+ label = "bcm53xx:green:usb3";
|
||||
+ gpios = <&chipcommon 19 GPIO_ACTIVE_HIGH>;
|
||||
+ trigger-sources = <&ohci_port1>, <&ehci_port1>,
|
||||
+ <&xhci_port1>;
|
||||
+ linux,default-trigger = "usbport";
|
||||
+ };
|
||||
+
|
||||
+ };
|
||||
+
|
||||
+ gpio-keys {
|
||||
+ compatible = "gpio-keys";
|
||||
+ #address-cells = <1>;
|
||||
+ #size-cells = <0>;
|
||||
+
|
||||
+ restart {
|
||||
+ label = "Reset";
|
||||
+ linux,code = <KEY_RESTART>;
|
||||
+ gpios = <&chipcommon 17 GPIO_ACTIVE_LOW>;
|
||||
+ };
|
||||
+ };
|
||||
+};
|
||||
+
|
||||
+&usb3 {
|
||||
+ vcc-gpio = <&chipcommon 18 GPIO_ACTIVE_HIGH>;
|
||||
+};
|
||||
+
|
||||
+&spi_nor {
|
||||
+ status = "okay";
|
||||
+};
|
@ -1,96 +0,0 @@
|
||||
From 65f78c4c41a9b9a7637e1dda2d5e41cf26ea971c Mon Sep 17 00:00:00 2001
|
||||
From: Dan Haab <dhaab@luxul.com>
|
||||
Date: Mon, 9 Oct 2017 09:46:23 -0600
|
||||
Subject: [PATCH] ARM: dts: BCM5301X: Add DT for Luxul ABR-4500
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
This is BCM47094 (AKA BCM4709C0) based router with rear-facing ports
|
||||
board design.
|
||||
|
||||
Signed-off-by: Dan Haab <dhaab@luxul.com>
|
||||
Acked-by: Rafał Miłecki <rafal@milecki.pl>
|
||||
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
|
||||
---
|
||||
arch/arm/boot/dts/Makefile | 1 +
|
||||
arch/arm/boot/dts/bcm47094-luxul-abr-4500.dts | 63 +++++++++++++++++++++++++++
|
||||
2 files changed, 64 insertions(+)
|
||||
create mode 100644 arch/arm/boot/dts/bcm47094-luxul-abr-4500.dts
|
||||
|
||||
--- a/arch/arm/boot/dts/Makefile
|
||||
+++ b/arch/arm/boot/dts/Makefile
|
||||
@@ -101,6 +101,7 @@ dtb-$(CONFIG_ARCH_BCM_5301X) += \
|
||||
bcm4709-tplink-archer-c9-v1.dtb \
|
||||
bcm47094-dlink-dir-885l.dtb \
|
||||
bcm47094-linksys-panamera.dtb \
|
||||
+ bcm47094-luxul-abr-4500.dtb \
|
||||
bcm47094-luxul-xbr-4500.dtb \
|
||||
bcm47094-luxul-xwr-3100.dtb \
|
||||
bcm47094-netgear-r8500.dtb \
|
||||
--- /dev/null
|
||||
+++ b/arch/arm/boot/dts/bcm47094-luxul-abr-4500.dts
|
||||
@@ -0,0 +1,63 @@
|
||||
+/*
|
||||
+ * Copyright (C) 2017 Luxul Inc.
|
||||
+ *
|
||||
+ * Licensed under the ISC license.
|
||||
+ */
|
||||
+
|
||||
+/dts-v1/;
|
||||
+
|
||||
+#include "bcm4708.dtsi"
|
||||
+#include "bcm5301x-nand-cs0-bch8.dtsi"
|
||||
+
|
||||
+/ {
|
||||
+ compatible = "luxul,abr-4500-v1", "brcm,bcm47094", "brcm,bcm4708";
|
||||
+ model = "Luxul ABR-4500 V1";
|
||||
+
|
||||
+ chosen {
|
||||
+ bootargs = "earlycon";
|
||||
+ };
|
||||
+
|
||||
+ memory {
|
||||
+ reg = <0x00000000 0x08000000
|
||||
+ 0x88000000 0x18000000>;
|
||||
+ };
|
||||
+
|
||||
+ leds {
|
||||
+ compatible = "gpio-leds";
|
||||
+
|
||||
+ status {
|
||||
+ label = "bcm53xx:green:status";
|
||||
+ gpios = <&chipcommon 20 GPIO_ACTIVE_LOW>;
|
||||
+ linux,default-trigger = "timer";
|
||||
+ };
|
||||
+
|
||||
+ usb3 {
|
||||
+ label = "bcm53xx:green:usb3";
|
||||
+ gpios = <&chipcommon 19 GPIO_ACTIVE_LOW>;
|
||||
+ trigger-sources = <&ohci_port1>, <&ehci_port1>,
|
||||
+ <&xhci_port1>;
|
||||
+ linux,default-trigger = "usbport";
|
||||
+ };
|
||||
+
|
||||
+ };
|
||||
+
|
||||
+ gpio-keys {
|
||||
+ compatible = "gpio-keys";
|
||||
+ #address-cells = <1>;
|
||||
+ #size-cells = <0>;
|
||||
+
|
||||
+ restart {
|
||||
+ label = "Reset";
|
||||
+ linux,code = <KEY_RESTART>;
|
||||
+ gpios = <&chipcommon 17 GPIO_ACTIVE_LOW>;
|
||||
+ };
|
||||
+ };
|
||||
+};
|
||||
+
|
||||
+&usb3 {
|
||||
+ vcc-gpio = <&chipcommon 18 GPIO_ACTIVE_HIGH>;
|
||||
+};
|
||||
+
|
||||
+&spi_nor {
|
||||
+ status = "okay";
|
||||
+};
|
@ -1,120 +0,0 @@
|
||||
From 0aa052ce1c3340850a7e5980b6d24b3ea5779591 Mon Sep 17 00:00:00 2001
|
||||
From: Dan Haab <dhaab@luxul.com>
|
||||
Date: Mon, 9 Oct 2017 09:46:59 -0600
|
||||
Subject: [PATCH] ARM: dts: BCM53573: Add DT for Luxul XAP-810
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
This is BCM53573 WiSoC based access point with an extra BCM43217 chipset
|
||||
used for 2.4 GHz.
|
||||
|
||||
Signed-off-by: Dan Haab <dhaab@luxul.com>
|
||||
Acked-by: Rafał Miłecki <rafal@milecki.pl>
|
||||
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
|
||||
---
|
||||
arch/arm/boot/dts/Makefile | 1 +
|
||||
arch/arm/boot/dts/bcm47189-luxul-xap-810.dts | 87 ++++++++++++++++++++++++++++
|
||||
2 files changed, 88 insertions(+)
|
||||
create mode 100644 arch/arm/boot/dts/bcm47189-luxul-xap-810.dts
|
||||
|
||||
--- a/arch/arm/boot/dts/Makefile
|
||||
+++ b/arch/arm/boot/dts/Makefile
|
||||
@@ -111,6 +111,7 @@ dtb-$(CONFIG_ARCH_BCM_5301X) += \
|
||||
bcm953012hr.dtb \
|
||||
bcm953012k.dtb
|
||||
dtb-$(CONFIG_ARCH_BCM_53573) += \
|
||||
+ bcm47189-luxul-xap-810.dtb \
|
||||
bcm47189-tenda-ac9.dtb \
|
||||
bcm947189acdbmr.dtb
|
||||
dtb-$(CONFIG_ARCH_BCM_63XX) += \
|
||||
--- /dev/null
|
||||
+++ b/arch/arm/boot/dts/bcm47189-luxul-xap-810.dts
|
||||
@@ -0,0 +1,87 @@
|
||||
+/*
|
||||
+ * Copyright 2017 Luxul Inc.
|
||||
+ *
|
||||
+ * Licensed under the ISC license.
|
||||
+ */
|
||||
+
|
||||
+/dts-v1/;
|
||||
+
|
||||
+#include "bcm53573.dtsi"
|
||||
+
|
||||
+/ {
|
||||
+ compatible = "luxul,xap-810-v1", "brcm,bcm47189", "brcm,bcm53573";
|
||||
+ model = "Luxul XAP-810 V1";
|
||||
+
|
||||
+ chosen {
|
||||
+ bootargs = "earlycon";
|
||||
+ };
|
||||
+
|
||||
+ memory {
|
||||
+ reg = <0x00000000 0x08000000>;
|
||||
+ };
|
||||
+
|
||||
+ leds {
|
||||
+ compatible = "gpio-leds";
|
||||
+
|
||||
+ 5ghz {
|
||||
+ label = "bcm53xx:blue:5ghz";
|
||||
+ gpios = <&chipcommon 11 GPIO_ACTIVE_HIGH>;
|
||||
+ linux,default-trigger = "default-off";
|
||||
+ };
|
||||
+
|
||||
+ system {
|
||||
+ label = "bcm53xx:green:system";
|
||||
+ gpios = <&chipcommon 15 GPIO_ACTIVE_HIGH>;
|
||||
+ linux,default-trigger = "timer";
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ pcie0_leds {
|
||||
+ compatible = "gpio-leds";
|
||||
+
|
||||
+ 2ghz {
|
||||
+ label = "bcm53xx:blue:2ghz";
|
||||
+ gpios = <&pcie0_chipcommon 3 GPIO_ACTIVE_HIGH>;
|
||||
+ linux,default-trigger = "default-off";
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ gpio-keys {
|
||||
+ compatible = "gpio-keys";
|
||||
+ #address-cells = <1>;
|
||||
+ #size-cells = <0>;
|
||||
+
|
||||
+ restart {
|
||||
+ label = "Reset";
|
||||
+ linux,code = <KEY_RESTART>;
|
||||
+ gpios = <&chipcommon 7 GPIO_ACTIVE_LOW>;
|
||||
+ };
|
||||
+ };
|
||||
+};
|
||||
+
|
||||
+&pcie0 {
|
||||
+ ranges = <0x00000000 0 0 0 0 0x00100000>;
|
||||
+ #address-cells = <3>;
|
||||
+ #size-cells = <2>;
|
||||
+
|
||||
+ bridge@0,0,0 {
|
||||
+ reg = <0x0000 0 0 0 0>;
|
||||
+ ranges = <0x00000000 0 0 0 0 0 0 0x00100000>;
|
||||
+ #address-cells = <3>;
|
||||
+ #size-cells = <2>;
|
||||
+
|
||||
+ wifi@0,1,0 {
|
||||
+ reg = <0x0000 0 0 0 0>;
|
||||
+ ranges = <0x00000000 0 0 0 0x00100000>;
|
||||
+ #address-cells = <1>;
|
||||
+ #size-cells = <1>;
|
||||
+
|
||||
+ pcie0_chipcommon: chipcommon@0 {
|
||||
+ reg = <0 0x1000>;
|
||||
+
|
||||
+ gpio-controller;
|
||||
+ #gpio-cells = <2>;
|
||||
+ };
|
||||
+ };
|
||||
+ };
|
||||
+};
|
@ -1,83 +0,0 @@
|
||||
From 7030ea600d560026b91726f2eb79c856b813afa9 Mon Sep 17 00:00:00 2001
|
||||
From: Dan Haab <dhaab@luxul.com>
|
||||
Date: Mon, 9 Oct 2017 09:47:00 -0600
|
||||
Subject: [PATCH] ARM: dts: BCM53573: Add DT for Luxul XAP-1440
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
This is BCM53573 WiSoC based outdoor access point with an extra BCM43217
|
||||
chipset used for 2.4 GHz.
|
||||
|
||||
Signed-off-by: Dan Haab <dhaab@luxul.com>
|
||||
Acked-by: Rafał Miłecki <rafal@milecki.pl>
|
||||
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
|
||||
---
|
||||
arch/arm/boot/dts/Makefile | 1 +
|
||||
arch/arm/boot/dts/bcm47189-luxul-xap-1440.dts | 50 +++++++++++++++++++++++++++
|
||||
2 files changed, 51 insertions(+)
|
||||
create mode 100644 arch/arm/boot/dts/bcm47189-luxul-xap-1440.dts
|
||||
|
||||
--- a/arch/arm/boot/dts/Makefile
|
||||
+++ b/arch/arm/boot/dts/Makefile
|
||||
@@ -111,6 +111,7 @@ dtb-$(CONFIG_ARCH_BCM_5301X) += \
|
||||
bcm953012hr.dtb \
|
||||
bcm953012k.dtb
|
||||
dtb-$(CONFIG_ARCH_BCM_53573) += \
|
||||
+ bcm47189-luxul-xap-1440.dtb \
|
||||
bcm47189-luxul-xap-810.dtb \
|
||||
bcm47189-tenda-ac9.dtb \
|
||||
bcm947189acdbmr.dtb
|
||||
--- /dev/null
|
||||
+++ b/arch/arm/boot/dts/bcm47189-luxul-xap-1440.dts
|
||||
@@ -0,0 +1,50 @@
|
||||
+/*
|
||||
+ * Copyright 2017 Luxul Inc.
|
||||
+ *
|
||||
+ * Licensed under the ISC license.
|
||||
+ */
|
||||
+
|
||||
+/dts-v1/;
|
||||
+
|
||||
+#include "bcm53573.dtsi"
|
||||
+
|
||||
+/ {
|
||||
+ compatible = "luxul,xap-1440-v1", "brcm,bcm47189", "brcm,bcm53573";
|
||||
+ model = "Luxul XAP-1440 V1";
|
||||
+
|
||||
+ chosen {
|
||||
+ bootargs = "earlycon";
|
||||
+ };
|
||||
+
|
||||
+ memory {
|
||||
+ reg = <0x00000000 0x08000000>;
|
||||
+ };
|
||||
+
|
||||
+ leds {
|
||||
+ compatible = "gpio-leds";
|
||||
+
|
||||
+ wlan {
|
||||
+ label = "bcm53xx:blue:wlan";
|
||||
+ gpios = <&chipcommon 10 GPIO_ACTIVE_LOW>;
|
||||
+ linux,default-trigger = "default-off";
|
||||
+ };
|
||||
+
|
||||
+ system {
|
||||
+ label = "bcm53xx:green:system";
|
||||
+ gpios = <&chipcommon 11 GPIO_ACTIVE_LOW>;
|
||||
+ linux,default-trigger = "timer";
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ gpio-keys {
|
||||
+ compatible = "gpio-keys";
|
||||
+ #address-cells = <1>;
|
||||
+ #size-cells = <0>;
|
||||
+
|
||||
+ restart {
|
||||
+ label = "Reset";
|
||||
+ linux,code = <KEY_RESTART>;
|
||||
+ gpios = <&chipcommon 7 GPIO_ACTIVE_LOW>;
|
||||
+ };
|
||||
+ };
|
||||
+};
|
@ -1,96 +0,0 @@
|
||||
From 811ae58e76da88106f6d28159d4ea7b163dfaa48 Mon Sep 17 00:00:00 2001
|
||||
From: INAGAKI Hiroshi <musashino.open@gmail.com>
|
||||
Date: Wed, 7 Mar 2018 20:33:56 +0900
|
||||
Subject: [PATCH] ARM: dts: BCM5301X: add missing LEDs for Buffalo WZR-900DHP
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
Buffalo WZR-900DHP has 8 LEDs, but there is not LED definitions in the
|
||||
dts and cannot configure these LEDs.
|
||||
I Added missing LED definitions for WZR-900DHP.
|
||||
|
||||
Signed-off-by: INAGAKI Hiroshi <musashino.open@gmail.com>
|
||||
Reviewed-by: Rafał Miłecki <rafal@milecki.pl>
|
||||
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
|
||||
---
|
||||
arch/arm/boot/dts/bcm47081-buffalo-wzr-900dhp.dts | 68 +++++++++++++++++++++++
|
||||
1 file changed, 68 insertions(+)
|
||||
|
||||
--- a/arch/arm/boot/dts/bcm47081-buffalo-wzr-900dhp.dts
|
||||
+++ b/arch/arm/boot/dts/bcm47081-buffalo-wzr-900dhp.dts
|
||||
@@ -35,6 +35,74 @@
|
||||
0x88000000 0x08000000>;
|
||||
};
|
||||
|
||||
+ spi {
|
||||
+ compatible = "spi-gpio";
|
||||
+ num-chipselects = <1>;
|
||||
+ gpio-sck = <&chipcommon 7 0>;
|
||||
+ gpio-mosi = <&chipcommon 4 0>;
|
||||
+ cs-gpios = <&chipcommon 6 0>;
|
||||
+ #address-cells = <1>;
|
||||
+ #size-cells = <0>;
|
||||
+
|
||||
+ hc595: gpio_spi@0 {
|
||||
+ compatible = "fairchild,74hc595";
|
||||
+ reg = <0>;
|
||||
+ registers-number = <1>;
|
||||
+ spi-max-frequency = <100000>;
|
||||
+
|
||||
+ gpio-controller;
|
||||
+ #gpio-cells = <2>;
|
||||
+
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ leds {
|
||||
+ compatible = "gpio-leds";
|
||||
+
|
||||
+ usb {
|
||||
+ label = "bcm53xx:green:usb";
|
||||
+ gpios = <&hc595 0 GPIO_ACTIVE_HIGH>;
|
||||
+ };
|
||||
+
|
||||
+ power0 {
|
||||
+ label = "bcm53xx:green:power";
|
||||
+ gpios = <&hc595 1 GPIO_ACTIVE_HIGH>;
|
||||
+ linux,default-trigger = "default-on";
|
||||
+ };
|
||||
+
|
||||
+ power1 {
|
||||
+ label = "bcm53xx:red:power";
|
||||
+ gpios = <&hc595 2 GPIO_ACTIVE_HIGH>;
|
||||
+ };
|
||||
+
|
||||
+ router0 {
|
||||
+ label = "bcm53xx:green:router";
|
||||
+ gpios = <&hc595 3 GPIO_ACTIVE_HIGH>;
|
||||
+ linux,default-trigger = "default-on";
|
||||
+ };
|
||||
+
|
||||
+ router1 {
|
||||
+ label = "bcm53xx:amber:router";
|
||||
+ gpios = <&hc595 4 GPIO_ACTIVE_HIGH>;
|
||||
+ };
|
||||
+
|
||||
+ wan {
|
||||
+ label = "bcm53xx:green:wan";
|
||||
+ gpios = <&hc595 5 GPIO_ACTIVE_HIGH>;
|
||||
+ linux,default-trigger = "default-on";
|
||||
+ };
|
||||
+
|
||||
+ wireless0 {
|
||||
+ label = "bcm53xx:green:wireless";
|
||||
+ gpios = <&hc595 6 GPIO_ACTIVE_HIGH>;
|
||||
+ };
|
||||
+
|
||||
+ wireless1 {
|
||||
+ label = "bcm53xx:amber:wireless";
|
||||
+ gpios = <&hc595 7 GPIO_ACTIVE_HIGH>;
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
gpio-keys {
|
||||
compatible = "gpio-keys";
|
||||
#address-cells = <1>;
|
@ -1,39 +0,0 @@
|
||||
From 0c0d1c90ddc44df70401b7cfff178c41b2f83ffa Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= <rafal@milecki.pl>
|
||||
Date: Wed, 4 Apr 2018 15:14:21 +0200
|
||||
Subject: [PATCH] ARM: dts: BCM5301X: Switch Luxul XWC-1000 to the new fixed
|
||||
partitions syntax
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
This new syntax is slightly better designed & uses "compatible" string.
|
||||
For details see Documentation/devicetree/bindings/mtd/partition.txt .
|
||||
|
||||
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
|
||||
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
|
||||
---
|
||||
arch/arm/boot/dts/bcm4708-luxul-xwc-1000.dts | 12 +++++++++---
|
||||
1 file changed, 9 insertions(+), 3 deletions(-)
|
||||
|
||||
--- a/arch/arm/boot/dts/bcm4708-luxul-xwc-1000.dts
|
||||
+++ b/arch/arm/boot/dts/bcm4708-luxul-xwc-1000.dts
|
||||
@@ -26,9 +26,15 @@
|
||||
|
||||
nand: nand@18028000 {
|
||||
nandcs@0 {
|
||||
- partition@0 {
|
||||
- label = "ubi";
|
||||
- reg = <0x00000000 0x08000000>;
|
||||
+ partitions {
|
||||
+ compatible = "fixed-partitions";
|
||||
+ #address-cells = <1>;
|
||||
+ #size-cells = <1>;
|
||||
+
|
||||
+ partition@0 {
|
||||
+ label = "ubi";
|
||||
+ reg = <0x00000000 0x08000000>;
|
||||
+ };
|
||||
};
|
||||
};
|
||||
};
|
@ -1,440 +0,0 @@
|
||||
From 2b3db67ce4bc4d1d8556e87a17df7765da8dbdc5 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= <rafal@milecki.pl>
|
||||
Date: Wed, 2 May 2018 16:11:02 +0200
|
||||
Subject: [PATCH] ARM: dts: BCM5301X: Relicense most DTS files to the GPL 2.0+
|
||||
/ MIT
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
These files were created and ever touched by a group of three people
|
||||
only: Dan, Hauke and me. They were licensed under GNU/GPL or ISC.
|
||||
|
||||
Introducing and discussing SPDX-License-Identifier resulted in a
|
||||
conclusion that ISC is a not recommended license (see also a
|
||||
license-rules.rst). Moveover an old e-mail from Alan Cox was pointed
|
||||
which explained that dual licensing is a safer solution than depending
|
||||
on a common compatibility belief.
|
||||
|
||||
This commit switches most of BCM5301X DTS files to dual licensing using:
|
||||
1) GPL 2.0+ to make sure they are compatible with Linux kernel
|
||||
2) MIT to allow sharing with more permissive projects
|
||||
Both licenses belong to the preferred ones (see LICENSES/preferred/).
|
||||
|
||||
An attempt to relicense remaining files will be made separately and will
|
||||
require approve from more/other developers.
|
||||
|
||||
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
|
||||
Reviewed-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
||||
Acked-by: Hauke Mehrtens <hauke@hauke-m.de>
|
||||
Acked-by: Dan Haab <dan.haab@luxul.com>
|
||||
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
|
||||
---
|
||||
arch/arm/boot/dts/bcm4708-asus-rt-ac56u.dts | 13 +------------
|
||||
arch/arm/boot/dts/bcm4708-asus-rt-ac68u.dts | 13 +------------
|
||||
arch/arm/boot/dts/bcm4708-linksys-ea6300-v1.dts | 3 +--
|
||||
arch/arm/boot/dts/bcm4708-luxul-xap-1510.dts | 3 +--
|
||||
arch/arm/boot/dts/bcm4708-luxul-xwc-1000.dts | 3 +--
|
||||
arch/arm/boot/dts/bcm4708-netgear-r6300-v2.dts | 13 +------------
|
||||
arch/arm/boot/dts/bcm4708-smartrg-sr400ac.dts | 3 +--
|
||||
arch/arm/boot/dts/bcm47081-asus-rt-n18u.dts | 13 +------------
|
||||
arch/arm/boot/dts/bcm47081-buffalo-wzr-600dhp2.dts | 13 +------------
|
||||
arch/arm/boot/dts/bcm47081-luxul-xap-1410.dts | 3 +--
|
||||
arch/arm/boot/dts/bcm47081-luxul-xwr-1200.dts | 3 +--
|
||||
arch/arm/boot/dts/bcm47081-tplink-archer-c5-v2.dts | 3 +--
|
||||
arch/arm/boot/dts/bcm4709-linksys-ea9200.dts | 3 +--
|
||||
arch/arm/boot/dts/bcm4709-netgear-r7000.dts | 13 +------------
|
||||
arch/arm/boot/dts/bcm4709-tplink-archer-c9-v1.dts | 3 +--
|
||||
arch/arm/boot/dts/bcm47094-dlink-dir-885l.dts | 13 +------------
|
||||
arch/arm/boot/dts/bcm47094-linksys-panamera.dts | 3 +--
|
||||
arch/arm/boot/dts/bcm47094-luxul-abr-4500.dts | 3 +--
|
||||
arch/arm/boot/dts/bcm47094-luxul-xbr-4500.dts | 3 +--
|
||||
arch/arm/boot/dts/bcm47094-luxul-xwr-3100.dts | 3 +--
|
||||
arch/arm/boot/dts/bcm47094-netgear-r8500.dts | 3 +--
|
||||
arch/arm/boot/dts/bcm5301x-nand-cs0-bch1.dtsi | 3 +--
|
||||
arch/arm/boot/dts/bcm5301x-nand-cs0-bch4.dtsi | 3 +--
|
||||
arch/arm/boot/dts/bcm5301x-nand-cs0-bch8.dtsi | 3 +--
|
||||
arch/arm/boot/dts/bcm5301x-nand-cs0.dtsi | 3 +--
|
||||
25 files changed, 25 insertions(+), 120 deletions(-)
|
||||
|
||||
--- a/arch/arm/boot/dts/bcm4708-asus-rt-ac56u.dts
|
||||
+++ b/arch/arm/boot/dts/bcm4708-asus-rt-ac56u.dts
|
||||
@@ -1,20 +1,9 @@
|
||||
+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/*
|
||||
* Broadcom BCM470X / BCM5301X ARM platform code.
|
||||
* DTS for Asus RT-AC56U
|
||||
*
|
||||
* Copyright (C) 2015 Rafał Miłecki <zajec5@gmail.com>
|
||||
- *
|
||||
- * Permission to use, copy, modify, and/or distribute this software for any
|
||||
- * purpose with or without fee is hereby granted, provided that the above
|
||||
- * copyright notice and this permission notice appear in all copies.
|
||||
- *
|
||||
- * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
|
||||
- * REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
|
||||
- * AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
|
||||
- * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
|
||||
- * LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
|
||||
- * OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
- * PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
--- a/arch/arm/boot/dts/bcm4708-asus-rt-ac68u.dts
|
||||
+++ b/arch/arm/boot/dts/bcm4708-asus-rt-ac68u.dts
|
||||
@@ -1,20 +1,9 @@
|
||||
+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/*
|
||||
* Broadcom BCM470X / BCM5301X ARM platform code.
|
||||
* DTS for Asus RT-AC68U
|
||||
*
|
||||
* Copyright (C) 2015 Rafał Miłecki <zajec5@gmail.com>
|
||||
- *
|
||||
- * Permission to use, copy, modify, and/or distribute this software for any
|
||||
- * purpose with or without fee is hereby granted, provided that the above
|
||||
- * copyright notice and this permission notice appear in all copies.
|
||||
- *
|
||||
- * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
|
||||
- * REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
|
||||
- * AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
|
||||
- * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
|
||||
- * LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
|
||||
- * OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
- * PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
--- a/arch/arm/boot/dts/bcm4708-linksys-ea6300-v1.dts
|
||||
+++ b/arch/arm/boot/dts/bcm4708-linksys-ea6300-v1.dts
|
||||
@@ -1,7 +1,6 @@
|
||||
+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/*
|
||||
* Copyright (C) 2017 Rafał Miłecki <rafal@milecki.pl>
|
||||
- *
|
||||
- * Licensed under the ISC license.
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
--- a/arch/arm/boot/dts/bcm4708-luxul-xap-1510.dts
|
||||
+++ b/arch/arm/boot/dts/bcm4708-luxul-xap-1510.dts
|
||||
@@ -1,7 +1,6 @@
|
||||
+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/*
|
||||
* Copyright 2016 Luxul Inc.
|
||||
- *
|
||||
- * Licensed under the ISC license.
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
--- a/arch/arm/boot/dts/bcm4708-luxul-xwc-1000.dts
|
||||
+++ b/arch/arm/boot/dts/bcm4708-luxul-xwc-1000.dts
|
||||
@@ -1,10 +1,9 @@
|
||||
+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/*
|
||||
* Broadcom BCM470X / BCM5301X ARM platform code.
|
||||
* DTS for Luxul XWC-1000
|
||||
*
|
||||
* Copyright 2014 Luxul Inc.
|
||||
- *
|
||||
- * Licensed under the GNU/GPL. See COPYING for details.
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
--- a/arch/arm/boot/dts/bcm4708-netgear-r6300-v2.dts
|
||||
+++ b/arch/arm/boot/dts/bcm4708-netgear-r6300-v2.dts
|
||||
@@ -1,20 +1,9 @@
|
||||
+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/*
|
||||
* Broadcom BCM470X / BCM5301X ARM platform code.
|
||||
* DTS for Netgear R6300 V2
|
||||
*
|
||||
* Copyright (C) 2014 Rafał Miłecki <zajec5@gmail.com>
|
||||
- *
|
||||
- * Permission to use, copy, modify, and/or distribute this software for any
|
||||
- * purpose with or without fee is hereby granted, provided that the above
|
||||
- * copyright notice and this permission notice appear in all copies.
|
||||
- *
|
||||
- * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
|
||||
- * REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
|
||||
- * AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
|
||||
- * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
|
||||
- * LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
|
||||
- * OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
- * PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
--- a/arch/arm/boot/dts/bcm4708-smartrg-sr400ac.dts
|
||||
+++ b/arch/arm/boot/dts/bcm4708-smartrg-sr400ac.dts
|
||||
@@ -1,10 +1,9 @@
|
||||
+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/*
|
||||
* Broadcom BCM470X / BCM5301X arm platform code.
|
||||
* DTS for SmartRG SR400ac
|
||||
*
|
||||
* Copyright (C) 2015 Rafał Miłecki <zajec5@gmail.com>
|
||||
- *
|
||||
- * Licensed under the GNU/GPL. See COPYING for details.
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
--- a/arch/arm/boot/dts/bcm47081-asus-rt-n18u.dts
|
||||
+++ b/arch/arm/boot/dts/bcm47081-asus-rt-n18u.dts
|
||||
@@ -1,20 +1,9 @@
|
||||
+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/*
|
||||
* Broadcom BCM470X / BCM5301X ARM platform code.
|
||||
* DTS for Asus RT-N18U
|
||||
*
|
||||
* Copyright (C) 2014 Rafał Miłecki <zajec5@gmail.com>
|
||||
- *
|
||||
- * Permission to use, copy, modify, and/or distribute this software for any
|
||||
- * purpose with or without fee is hereby granted, provided that the above
|
||||
- * copyright notice and this permission notice appear in all copies.
|
||||
- *
|
||||
- * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
|
||||
- * REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
|
||||
- * AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
|
||||
- * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
|
||||
- * LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
|
||||
- * OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
- * PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
--- a/arch/arm/boot/dts/bcm47081-buffalo-wzr-600dhp2.dts
|
||||
+++ b/arch/arm/boot/dts/bcm47081-buffalo-wzr-600dhp2.dts
|
||||
@@ -1,20 +1,9 @@
|
||||
+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/*
|
||||
* Broadcom BCM470X / BCM5301X ARM platform code.
|
||||
* DTS for Buffalo WZR-600DHP2
|
||||
*
|
||||
* Copyright (C) 2014 Rafał Miłecki <zajec5@gmail.com>
|
||||
- *
|
||||
- * Permission to use, copy, modify, and/or distribute this software for any
|
||||
- * purpose with or without fee is hereby granted, provided that the above
|
||||
- * copyright notice and this permission notice appear in all copies.
|
||||
- *
|
||||
- * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
|
||||
- * REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
|
||||
- * AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
|
||||
- * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
|
||||
- * LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
|
||||
- * OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
- * PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
--- a/arch/arm/boot/dts/bcm47081-luxul-xap-1410.dts
|
||||
+++ b/arch/arm/boot/dts/bcm47081-luxul-xap-1410.dts
|
||||
@@ -1,7 +1,6 @@
|
||||
+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/*
|
||||
* Copyright 2017 Luxul Inc.
|
||||
- *
|
||||
- * Licensed under the ISC license.
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
--- a/arch/arm/boot/dts/bcm47081-luxul-xwr-1200.dts
|
||||
+++ b/arch/arm/boot/dts/bcm47081-luxul-xwr-1200.dts
|
||||
@@ -1,7 +1,6 @@
|
||||
+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/*
|
||||
* Copyright 2017 Luxul Inc.
|
||||
- *
|
||||
- * Licensed under the ISC license.
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
--- a/arch/arm/boot/dts/bcm47081-tplink-archer-c5-v2.dts
|
||||
+++ b/arch/arm/boot/dts/bcm47081-tplink-archer-c5-v2.dts
|
||||
@@ -1,7 +1,6 @@
|
||||
+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/*
|
||||
* Copyright (C) 2017 Rafał Miłecki <rafal@milecki.pl>
|
||||
- *
|
||||
- * Licensed under the ISC license.
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
--- a/arch/arm/boot/dts/bcm4709-linksys-ea9200.dts
|
||||
+++ b/arch/arm/boot/dts/bcm4709-linksys-ea9200.dts
|
||||
@@ -1,7 +1,6 @@
|
||||
+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/*
|
||||
* Copyright (C) 2017 Rafał Miłecki <rafal@milecki.pl>
|
||||
- *
|
||||
- * Licensed under the ISC license.
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
--- a/arch/arm/boot/dts/bcm4709-netgear-r7000.dts
|
||||
+++ b/arch/arm/boot/dts/bcm4709-netgear-r7000.dts
|
||||
@@ -1,20 +1,9 @@
|
||||
+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/*
|
||||
* Broadcom BCM470X / BCM5301X ARM platform code.
|
||||
* DTS for Netgear R7000
|
||||
*
|
||||
* Copyright (C) 2015 Rafał Miłecki <zajec5@gmail.com>
|
||||
- *
|
||||
- * Permission to use, copy, modify, and/or distribute this software for any
|
||||
- * purpose with or without fee is hereby granted, provided that the above
|
||||
- * copyright notice and this permission notice appear in all copies.
|
||||
- *
|
||||
- * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
|
||||
- * REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
|
||||
- * AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
|
||||
- * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
|
||||
- * LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
|
||||
- * OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
- * PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
--- a/arch/arm/boot/dts/bcm4709-tplink-archer-c9-v1.dts
|
||||
+++ b/arch/arm/boot/dts/bcm4709-tplink-archer-c9-v1.dts
|
||||
@@ -1,7 +1,6 @@
|
||||
+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/*
|
||||
* Copyright (C) 2016 Rafał Miłecki <rafal@milecki.pl>
|
||||
- *
|
||||
- * Licensed under the ISC license.
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
--- a/arch/arm/boot/dts/bcm47094-dlink-dir-885l.dts
|
||||
+++ b/arch/arm/boot/dts/bcm47094-dlink-dir-885l.dts
|
||||
@@ -1,20 +1,9 @@
|
||||
+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/*
|
||||
* Broadcom BCM470X / BCM5301X ARM platform code.
|
||||
* DTS for D-Link DIR-885L
|
||||
*
|
||||
* Copyright (C) 2016 Rafał Miłecki <zajec5@gmail.com>
|
||||
- *
|
||||
- * Permission to use, copy, modify, and/or distribute this software for any
|
||||
- * purpose with or without fee is hereby granted, provided that the above
|
||||
- * copyright notice and this permission notice appear in all copies.
|
||||
- *
|
||||
- * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
|
||||
- * REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
|
||||
- * AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
|
||||
- * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
|
||||
- * LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
|
||||
- * OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
- * PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
--- a/arch/arm/boot/dts/bcm47094-linksys-panamera.dts
|
||||
+++ b/arch/arm/boot/dts/bcm47094-linksys-panamera.dts
|
||||
@@ -1,7 +1,6 @@
|
||||
+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/*
|
||||
* Copyright (C) 2017 Rafał Miłecki <rafal@milecki.pl>
|
||||
- *
|
||||
- * Licensed under the ISC license.
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
--- a/arch/arm/boot/dts/bcm47094-luxul-abr-4500.dts
|
||||
+++ b/arch/arm/boot/dts/bcm47094-luxul-abr-4500.dts
|
||||
@@ -1,7 +1,6 @@
|
||||
+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/*
|
||||
* Copyright (C) 2017 Luxul Inc.
|
||||
- *
|
||||
- * Licensed under the ISC license.
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
--- a/arch/arm/boot/dts/bcm47094-luxul-xbr-4500.dts
|
||||
+++ b/arch/arm/boot/dts/bcm47094-luxul-xbr-4500.dts
|
||||
@@ -1,7 +1,6 @@
|
||||
+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/*
|
||||
* Copyright (C) 2017 Luxul Inc.
|
||||
- *
|
||||
- * Licensed under the ISC license.
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
--- a/arch/arm/boot/dts/bcm47094-luxul-xwr-3100.dts
|
||||
+++ b/arch/arm/boot/dts/bcm47094-luxul-xwr-3100.dts
|
||||
@@ -1,7 +1,6 @@
|
||||
+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/*
|
||||
* Copyright 2016 Luxul Inc.
|
||||
- *
|
||||
- * Licensed under the ISC license.
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
--- a/arch/arm/boot/dts/bcm47094-netgear-r8500.dts
|
||||
+++ b/arch/arm/boot/dts/bcm47094-netgear-r8500.dts
|
||||
@@ -1,7 +1,6 @@
|
||||
+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/*
|
||||
* Copyright (C) 2016 Rafał Miłecki <rafal@milecki.pl>
|
||||
- *
|
||||
- * Licensed under the ISC license.
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
--- a/arch/arm/boot/dts/bcm5301x-nand-cs0-bch1.dtsi
|
||||
+++ b/arch/arm/boot/dts/bcm5301x-nand-cs0-bch1.dtsi
|
||||
@@ -1,9 +1,8 @@
|
||||
+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/*
|
||||
* Broadcom Northstar NAND.
|
||||
*
|
||||
* Copyright (C) 2016 Rafał Miłecki <rafal.milecki@gmail.com>
|
||||
- *
|
||||
- * Licensed under the ISC license.
|
||||
*/
|
||||
|
||||
#include "bcm5301x-nand-cs0.dtsi"
|
||||
--- a/arch/arm/boot/dts/bcm5301x-nand-cs0-bch4.dtsi
|
||||
+++ b/arch/arm/boot/dts/bcm5301x-nand-cs0-bch4.dtsi
|
||||
@@ -1,7 +1,6 @@
|
||||
+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/*
|
||||
* Copyright 2016 Luxul Inc.
|
||||
- *
|
||||
- * Licensed under the ISC license.
|
||||
*/
|
||||
|
||||
#include "bcm5301x-nand-cs0.dtsi"
|
||||
--- a/arch/arm/boot/dts/bcm5301x-nand-cs0-bch8.dtsi
|
||||
+++ b/arch/arm/boot/dts/bcm5301x-nand-cs0-bch8.dtsi
|
||||
@@ -1,3 +1,4 @@
|
||||
+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/*
|
||||
* Broadcom BCM470X / BCM5301X Nand chip defaults.
|
||||
*
|
||||
@@ -5,8 +6,6 @@
|
||||
* and uses 8 bit ECC.
|
||||
*
|
||||
* Copyright (C) 2015 Hauke Mehrtens <hauke@hauke-m.de>
|
||||
- *
|
||||
- * Licensed under the GNU/GPL. See COPYING for details.
|
||||
*/
|
||||
|
||||
#include "bcm5301x-nand-cs0.dtsi"
|
||||
--- a/arch/arm/boot/dts/bcm5301x-nand-cs0.dtsi
|
||||
+++ b/arch/arm/boot/dts/bcm5301x-nand-cs0.dtsi
|
||||
@@ -1,9 +1,8 @@
|
||||
+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/*
|
||||
* Broadcom Northstar NAND.
|
||||
*
|
||||
* Copyright (C) 2015 Hauke Mehrtens <hauke@hauke-m.de>
|
||||
- *
|
||||
- * Licensed under the GNU/GPL. See COPYING for details.
|
||||
*/
|
||||
|
||||
/ {
|
@ -1,79 +0,0 @@
|
||||
From fd0ab539d185a828f2071ee5f311bf101c7fea08 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= <rafal@milecki.pl>
|
||||
Date: Fri, 4 May 2018 11:54:45 +0200
|
||||
Subject: [PATCH] ARM: dts: BCM5301X: Relicense Buffalo files to the GPL 2.0+ /
|
||||
MIT
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
This matches licensing used by other BCM5301X files and is preferred as:
|
||||
1) GPL 2.0+ makes is clearly compatible with Linux kernel
|
||||
2) MIT is also permissive but preferred over ISC
|
||||
|
||||
These files were created and ever touched by a group of four people
|
||||
only: Felix, INAGAKI, Hauke and me.
|
||||
|
||||
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
|
||||
Acked-by: Felix Fietkau <nbd@nbd.name>
|
||||
Acked-by: INAGAKI Hiroshi <musashino.open@gmail.com>
|
||||
Acked-by: Hauke Mehrtens <hauke@hauke-m.de>
|
||||
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
|
||||
---
|
||||
arch/arm/boot/dts/bcm4708-buffalo-wzr-1750dhp.dts | 3 +--
|
||||
arch/arm/boot/dts/bcm47081-buffalo-wzr-900dhp.dts | 13 +------------
|
||||
arch/arm/boot/dts/bcm4709-buffalo-wxr-1900dhp.dts | 3 +--
|
||||
3 files changed, 3 insertions(+), 16 deletions(-)
|
||||
|
||||
--- a/arch/arm/boot/dts/bcm4708-buffalo-wzr-1750dhp.dts
|
||||
+++ b/arch/arm/boot/dts/bcm4708-buffalo-wzr-1750dhp.dts
|
||||
@@ -1,10 +1,9 @@
|
||||
+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/*
|
||||
* Broadcom BCM470X / BCM5301X ARM platform code.
|
||||
* DTS for Buffalo WZR-1750DHP
|
||||
*
|
||||
* Copyright (C) 2014 Rafał Miłecki <zajec5@gmail.com>
|
||||
- *
|
||||
- * Licensed under the GNU/GPL. See COPYING for details.
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
--- a/arch/arm/boot/dts/bcm47081-buffalo-wzr-900dhp.dts
|
||||
+++ b/arch/arm/boot/dts/bcm47081-buffalo-wzr-900dhp.dts
|
||||
@@ -1,20 +1,9 @@
|
||||
+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/*
|
||||
* Broadcom BCM470X / BCM5301X ARM platform code.
|
||||
* DTS for Buffalo WZR-900DHP
|
||||
*
|
||||
* Copyright (C) 2015 Rafał Miłecki <zajec5@gmail.com>
|
||||
- *
|
||||
- * Permission to use, copy, modify, and/or distribute this software for any
|
||||
- * purpose with or without fee is hereby granted, provided that the above
|
||||
- * copyright notice and this permission notice appear in all copies.
|
||||
- *
|
||||
- * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
|
||||
- * REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
|
||||
- * AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
|
||||
- * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
|
||||
- * LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
|
||||
- * OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
- * PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
--- a/arch/arm/boot/dts/bcm4709-buffalo-wxr-1900dhp.dts
|
||||
+++ b/arch/arm/boot/dts/bcm4709-buffalo-wxr-1900dhp.dts
|
||||
@@ -1,10 +1,9 @@
|
||||
+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/*
|
||||
* Broadcom BCM470X / BCM5301X ARM platform code.
|
||||
* DTS for Buffalo WXR-1900DHP
|
||||
*
|
||||
* Copyright (C) 2015 Felix Fietkau <nbd@openwrt.org>
|
||||
- *
|
||||
- * Licensed under the GNU/GPL. See COPYING for details.
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
@ -1,112 +0,0 @@
|
||||
From 2e2105a1578172eaf61e3b59a2c10c4fe04c21b9 Mon Sep 17 00:00:00 2001
|
||||
From: Dan Haab <riproute@gmail.com>
|
||||
Date: Fri, 4 May 2018 10:08:43 -0600
|
||||
Subject: [PATCH] ARM: dts: BCM5301X: Add DT for Luxul XWR-3150 V1
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
Luxul XWR-3150 is a wireless router similar to the XWR-3100 except:
|
||||
1) It has more RAM
|
||||
2) Its NAND controller in running in BCH8 mode
|
||||
3) LAN ports LEDs are hardware controlled
|
||||
|
||||
Signed-off-by: Dan Haab <dan.haab@luxul.com>
|
||||
Acked-by: Rafał Miłecki <rafal@milecki.pl>
|
||||
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
|
||||
---
|
||||
arch/arm/boot/dts/Makefile | 1 +
|
||||
arch/arm/boot/dts/bcm47094-luxul-xwr-3150-v1.dts | 77 ++++++++++++++++++++++++
|
||||
2 files changed, 78 insertions(+)
|
||||
create mode 100644 arch/arm/boot/dts/bcm47094-luxul-xwr-3150-v1.dts
|
||||
|
||||
--- a/arch/arm/boot/dts/Makefile
|
||||
+++ b/arch/arm/boot/dts/Makefile
|
||||
@@ -104,6 +104,7 @@ dtb-$(CONFIG_ARCH_BCM_5301X) += \
|
||||
bcm47094-luxul-abr-4500.dtb \
|
||||
bcm47094-luxul-xbr-4500.dtb \
|
||||
bcm47094-luxul-xwr-3100.dtb \
|
||||
+ bcm47094-luxul-xwr-3150-v1.dtb \
|
||||
bcm47094-netgear-r8500.dtb \
|
||||
bcm94708.dtb \
|
||||
bcm94709.dtb \
|
||||
--- /dev/null
|
||||
+++ b/arch/arm/boot/dts/bcm47094-luxul-xwr-3150-v1.dts
|
||||
@@ -0,0 +1,77 @@
|
||||
+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
+/*
|
||||
+ * Copyright 2018 Luxul Inc.
|
||||
+ */
|
||||
+
|
||||
+/dts-v1/;
|
||||
+
|
||||
+#include "bcm47094.dtsi"
|
||||
+#include "bcm5301x-nand-cs0-bch8.dtsi"
|
||||
+
|
||||
+/ {
|
||||
+ compatible = "luxul,xwr-3150-v1", "brcm,bcm47094", "brcm,bcm4708";
|
||||
+ model = "Luxul XWR-3150 V1";
|
||||
+
|
||||
+ chosen {
|
||||
+ bootargs = "earlycon";
|
||||
+ };
|
||||
+
|
||||
+ memory {
|
||||
+ reg = <0x00000000 0x08000000
|
||||
+ 0x88000000 0x18000000>;
|
||||
+ };
|
||||
+
|
||||
+ leds {
|
||||
+ compatible = "gpio-leds";
|
||||
+
|
||||
+ power {
|
||||
+ label = "bcm53xx:green:power";
|
||||
+ gpios = <&chipcommon 0 GPIO_ACTIVE_LOW>;
|
||||
+ linux,default-trigger = "default-on";
|
||||
+ };
|
||||
+
|
||||
+ usb3 {
|
||||
+ label = "bcm53xx:green:usb3";
|
||||
+ gpios = <&chipcommon 8 GPIO_ACTIVE_LOW>;
|
||||
+ trigger-sources = <&ohci_port1>, <&ehci_port1>,
|
||||
+ <&xhci_port1>;
|
||||
+ linux,default-trigger = "usbport";
|
||||
+ };
|
||||
+
|
||||
+ status {
|
||||
+ label = "bcm53xx:green:status";
|
||||
+ gpios = <&chipcommon 10 GPIO_ACTIVE_LOW>;
|
||||
+ linux,default-trigger = "timer";
|
||||
+ };
|
||||
+
|
||||
+ 2ghz {
|
||||
+ label = "bcm53xx:green:2ghz";
|
||||
+ gpios = <&chipcommon 13 GPIO_ACTIVE_LOW>;
|
||||
+ };
|
||||
+
|
||||
+ 5ghz {
|
||||
+ label = "bcm53xx:green:5ghz";
|
||||
+ gpios = <&chipcommon 14 GPIO_ACTIVE_LOW>;
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ gpio-keys {
|
||||
+ compatible = "gpio-keys";
|
||||
+ #address-cells = <1>;
|
||||
+ #size-cells = <0>;
|
||||
+
|
||||
+ restart {
|
||||
+ label = "Reset";
|
||||
+ linux,code = <KEY_RESTART>;
|
||||
+ gpios = <&chipcommon 17 GPIO_ACTIVE_LOW>;
|
||||
+ };
|
||||
+ };
|
||||
+};
|
||||
+
|
||||
+&usb3 {
|
||||
+ vcc-gpio = <&chipcommon 18 GPIO_ACTIVE_HIGH>;
|
||||
+};
|
||||
+
|
||||
+&spi_nor {
|
||||
+ status = "okay";
|
||||
+};
|
@ -1,90 +0,0 @@
|
||||
From 6054cb5788072e214af582c42d9bd8c5ffa6e288 Mon Sep 17 00:00:00 2001
|
||||
From: Dan Haab <riproute@gmail.com>
|
||||
Date: Fri, 4 May 2018 10:08:44 -0600
|
||||
Subject: [PATCH] ARM: dts: BCM5301X: Add DT for Luxul XAP-1610
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
It's an access point based on BCM47094 SoC with two BCM4366E wireless
|
||||
chipsets.
|
||||
|
||||
Signed-off-by: Dan Haab <dan.haab@luxul.com>
|
||||
Acked-by: Rafał Miłecki <rafal@milecki.pl>
|
||||
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
|
||||
---
|
||||
arch/arm/boot/dts/Makefile | 1 +
|
||||
arch/arm/boot/dts/bcm47094-luxul-xap-1610.dts | 57 +++++++++++++++++++++++++++
|
||||
2 files changed, 58 insertions(+)
|
||||
create mode 100644 arch/arm/boot/dts/bcm47094-luxul-xap-1610.dts
|
||||
|
||||
--- a/arch/arm/boot/dts/Makefile
|
||||
+++ b/arch/arm/boot/dts/Makefile
|
||||
@@ -102,6 +102,7 @@ dtb-$(CONFIG_ARCH_BCM_5301X) += \
|
||||
bcm47094-dlink-dir-885l.dtb \
|
||||
bcm47094-linksys-panamera.dtb \
|
||||
bcm47094-luxul-abr-4500.dtb \
|
||||
+ bcm47094-luxul-xap-1610.dtb \
|
||||
bcm47094-luxul-xbr-4500.dtb \
|
||||
bcm47094-luxul-xwr-3100.dtb \
|
||||
bcm47094-luxul-xwr-3150-v1.dtb \
|
||||
--- /dev/null
|
||||
+++ b/arch/arm/boot/dts/bcm47094-luxul-xap-1610.dts
|
||||
@@ -0,0 +1,57 @@
|
||||
+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
+/*
|
||||
+ * Copyright 2018 Luxul Inc.
|
||||
+ */
|
||||
+
|
||||
+/dts-v1/;
|
||||
+
|
||||
+#include "bcm47094.dtsi"
|
||||
+
|
||||
+/ {
|
||||
+ compatible = "luxul,xap-1610-v1", "brcm,bcm47094", "brcm,bcm4708";
|
||||
+ model = "Luxul XAP-1610 V1";
|
||||
+
|
||||
+ chosen {
|
||||
+ bootargs = "earlycon";
|
||||
+ };
|
||||
+
|
||||
+ memory {
|
||||
+ reg = <0x00000000 0x08000000>;
|
||||
+ };
|
||||
+
|
||||
+ leds {
|
||||
+ compatible = "gpio-leds";
|
||||
+
|
||||
+ status {
|
||||
+ label = "bcm53xx:green:status";
|
||||
+ gpios = <&chipcommon 0 GPIO_ACTIVE_LOW>;
|
||||
+ linux,default-trigger = "timer";
|
||||
+ };
|
||||
+
|
||||
+ 2ghz {
|
||||
+ label = "bcm53xx:blue:2ghz";
|
||||
+ gpios = <&chipcommon 13 GPIO_ACTIVE_LOW>;
|
||||
+ };
|
||||
+
|
||||
+ 5ghz {
|
||||
+ label = "bcm53xx:blue:5ghz";
|
||||
+ gpios = <&chipcommon 14 GPIO_ACTIVE_LOW>;
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ gpio-keys {
|
||||
+ compatible = "gpio-keys";
|
||||
+ #address-cells = <1>;
|
||||
+ #size-cells = <0>;
|
||||
+
|
||||
+ restart {
|
||||
+ label = "Reset";
|
||||
+ linux,code = <KEY_RESTART>;
|
||||
+ gpios = <&chipcommon 17 GPIO_ACTIVE_LOW>;
|
||||
+ };
|
||||
+ };
|
||||
+};
|
||||
+
|
||||
+&spi_nor {
|
||||
+ status = "okay";
|
||||
+};
|
@ -1,48 +0,0 @@
|
||||
From 9c281b5e129961b9940a27f8da24dddd1c0eba87 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= <rafal@milecki.pl>
|
||||
Date: Fri, 4 May 2018 12:03:24 +0200
|
||||
Subject: [PATCH] ARM: dts: BCM5301X: Relicense Asus RT-AC87U file to the GPL
|
||||
2.0+ / MIT
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
This matches licensing used by other BCM5301X files and is preferred as:
|
||||
1) GPL 2.0+ makes is clearly compatible with Linux kernel
|
||||
2) MIT is also permissive but preferred over ISC
|
||||
|
||||
This file were created and ever touched by a group of three people only:
|
||||
Álvaro, Hauke and me.
|
||||
|
||||
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
|
||||
Acked-by: Hauke Mehrtens <hauke@hauke-m.de>
|
||||
Acked-by: Álvaro Fernández Rojas <noltari@gmail.com>
|
||||
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
|
||||
---
|
||||
arch/arm/boot/dts/bcm4709-asus-rt-ac87u.dts | 13 +------------
|
||||
1 file changed, 1 insertion(+), 12 deletions(-)
|
||||
|
||||
--- a/arch/arm/boot/dts/bcm4709-asus-rt-ac87u.dts
|
||||
+++ b/arch/arm/boot/dts/bcm4709-asus-rt-ac87u.dts
|
||||
@@ -1,20 +1,9 @@
|
||||
+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/*
|
||||
* Broadcom BCM470X / BCM5301X ARM platform code.
|
||||
* DTS for Asus RT-AC87U
|
||||
*
|
||||
* Copyright (C) 2015 Rafał Miłecki <zajec5@gmail.com>
|
||||
- *
|
||||
- * Permission to use, copy, modify, and/or distribute this software for any
|
||||
- * purpose with or without fee is hereby granted, provided that the above
|
||||
- * copyright notice and this permission notice appear in all copies.
|
||||
- *
|
||||
- * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
|
||||
- * REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
|
||||
- * AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
|
||||
- * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
|
||||
- * LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
|
||||
- * OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
- * PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
@ -1,39 +0,0 @@
|
||||
From a05f1e36a57d02374a203719abc5bf2e8c51e125 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= <rafal@milecki.pl>
|
||||
Date: Thu, 10 May 2018 23:20:00 +0200
|
||||
Subject: [PATCH] ARM: dts: BCM5301X: Switch D-Link DIR-885L to the new
|
||||
partitions syntax
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
This new syntax is slightly better designed & uses "compatible" string.
|
||||
For details see Documentation/devicetree/bindings/mtd/partition.txt .
|
||||
|
||||
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
|
||||
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
|
||||
---
|
||||
arch/arm/boot/dts/bcm47094-dlink-dir-885l.dts | 12 +++++++++---
|
||||
1 file changed, 9 insertions(+), 3 deletions(-)
|
||||
|
||||
--- a/arch/arm/boot/dts/bcm47094-dlink-dir-885l.dts
|
||||
+++ b/arch/arm/boot/dts/bcm47094-dlink-dir-885l.dts
|
||||
@@ -26,9 +26,15 @@
|
||||
|
||||
nand: nand@18028000 {
|
||||
nandcs@0 {
|
||||
- partition@0 {
|
||||
- label = "firmware";
|
||||
- reg = <0x00000000 0x08000000>;
|
||||
+ partitions {
|
||||
+ compatible = "fixed-partitions";
|
||||
+ #address-cells = <1>;
|
||||
+ #size-cells = <1>;
|
||||
+
|
||||
+ partition@0 {
|
||||
+ label = "firmware";
|
||||
+ reg = <0x00000000 0x08000000>;
|
||||
+ };
|
||||
};
|
||||
};
|
||||
};
|
@ -1,456 +0,0 @@
|
||||
From 37f6130ec39fe14e923d472746a51e6f06f761b7 Mon Sep 17 00:00:00 2001
|
||||
From: Vivek Unune <npcomplete13@gmail.com>
|
||||
Date: Mon, 9 Apr 2018 18:31:53 -0400
|
||||
Subject: [PATCH] ARM: dts: BCM5301X: Make USB 3.0 PHY use MDIO PHY driver
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
Currently, the USB 3.0 PHY in bcm5301x.dtsi uses platform driver which
|
||||
requires register range "ccb-mii" <0x18003000 0x1000>. This range
|
||||
overlaps with MDIO cmd and param registers (<0x18003000 0x8>).
|
||||
Essentially, the platform driver partly acts like a MDIO bus driver,
|
||||
hence to use of this register range.
|
||||
|
||||
In some Northstar devices like Linksys EA9500, secondary switch is
|
||||
connected via external MDIO. The only way to access and configure the
|
||||
external switch is via MDIO bus. When we enable the MDIO bus in it's
|
||||
current state, the MDIO bus and any child buses fail to register because
|
||||
of the register range overlap.
|
||||
|
||||
On Northstar, the USB 3.0 PHY is connected at address 0x10 on the
|
||||
internal MDIO bus. This change moves the usb3_phy node and makes it a
|
||||
child node of internal MDIO bus.
|
||||
|
||||
Thanks to Rafał Miłecki's commit af850e14a7ae ("phy: bcm-ns-usb3: add
|
||||
MDIO driver using proper bus layer") the same USB 3.0 platform driver
|
||||
can now act as USB 3.0 PHY MDIO driver.
|
||||
|
||||
Tested on Linksys Panamera (EA9500)
|
||||
|
||||
Signed-off-by: Vivek Unune <npcomplete13@gmail.com>
|
||||
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
|
||||
---
|
||||
arch/arm/boot/dts/bcm4708-asus-rt-ac56u.dts | 4 +++
|
||||
arch/arm/boot/dts/bcm4708-asus-rt-ac68u.dts | 4 +++
|
||||
arch/arm/boot/dts/bcm4708-buffalo-wzr-1750dhp.dts | 4 +++
|
||||
arch/arm/boot/dts/bcm4708-linksys-ea6300-v1.dts | 4 +++
|
||||
arch/arm/boot/dts/bcm4708-luxul-xap-1510.dts | 4 +++
|
||||
arch/arm/boot/dts/bcm4708-luxul-xwc-1000.dts | 4 +++
|
||||
arch/arm/boot/dts/bcm4708-netgear-r6250.dts | 4 +++
|
||||
arch/arm/boot/dts/bcm4708-netgear-r6300-v2.dts | 4 +++
|
||||
arch/arm/boot/dts/bcm4708-smartrg-sr400ac.dts | 4 +++
|
||||
arch/arm/boot/dts/bcm47081-asus-rt-n18u.dts | 4 +++
|
||||
arch/arm/boot/dts/bcm47081-buffalo-wzr-600dhp2.dts | 4 +++
|
||||
arch/arm/boot/dts/bcm47081-buffalo-wzr-900dhp.dts | 4 +++
|
||||
arch/arm/boot/dts/bcm47081-luxul-xap-1410.dts | 4 +++
|
||||
arch/arm/boot/dts/bcm47081-luxul-xwr-1200.dts | 4 +++
|
||||
arch/arm/boot/dts/bcm47081-tplink-archer-c5-v2.dts | 4 +++
|
||||
arch/arm/boot/dts/bcm4709-asus-rt-ac87u.dts | 4 +++
|
||||
arch/arm/boot/dts/bcm4709-buffalo-wxr-1900dhp.dts | 4 +++
|
||||
arch/arm/boot/dts/bcm4709-linksys-ea9200.dts | 4 +++
|
||||
arch/arm/boot/dts/bcm4709-netgear-r7000.dts | 4 +++
|
||||
arch/arm/boot/dts/bcm4709-netgear-r8000.dts | 4 +++
|
||||
arch/arm/boot/dts/bcm4709-tplink-archer-c9-v1.dts | 4 +++
|
||||
arch/arm/boot/dts/bcm47094-dlink-dir-885l.dts | 4 +++
|
||||
arch/arm/boot/dts/bcm47094-linksys-panamera.dts | 4 +++
|
||||
arch/arm/boot/dts/bcm47094-luxul-abr-4500.dts | 4 +++
|
||||
arch/arm/boot/dts/bcm47094-luxul-xbr-4500.dts | 4 +++
|
||||
arch/arm/boot/dts/bcm47094-luxul-xwr-3100.dts | 4 +++
|
||||
arch/arm/boot/dts/bcm47094-netgear-r8500.dts | 4 +++
|
||||
arch/arm/boot/dts/bcm47094.dtsi | 7 +++--
|
||||
arch/arm/boot/dts/bcm5301x.dtsi | 35 +++++++++++++++++-----
|
||||
arch/arm/boot/dts/bcm94708.dts | 4 +++
|
||||
arch/arm/boot/dts/bcm94709.dts | 4 +++
|
||||
arch/arm/boot/dts/bcm953012er.dts | 4 +++
|
||||
arch/arm/boot/dts/bcm953012hr.dts | 4 +++
|
||||
arch/arm/boot/dts/bcm953012k.dts | 4 +++
|
||||
34 files changed, 159 insertions(+), 11 deletions(-)
|
||||
|
||||
--- a/arch/arm/boot/dts/bcm4708-asus-rt-ac56u.dts
|
||||
+++ b/arch/arm/boot/dts/bcm4708-asus-rt-ac56u.dts
|
||||
@@ -90,3 +90,7 @@
|
||||
};
|
||||
};
|
||||
};
|
||||
+
|
||||
+&usb3_phy {
|
||||
+ status = "okay";
|
||||
+};
|
||||
--- a/arch/arm/boot/dts/bcm4708-asus-rt-ac68u.dts
|
||||
+++ b/arch/arm/boot/dts/bcm4708-asus-rt-ac68u.dts
|
||||
@@ -80,3 +80,7 @@
|
||||
};
|
||||
};
|
||||
};
|
||||
+
|
||||
+&usb3_phy {
|
||||
+ status = "okay";
|
||||
+};
|
||||
--- a/arch/arm/boot/dts/bcm4708-buffalo-wzr-1750dhp.dts
|
||||
+++ b/arch/arm/boot/dts/bcm4708-buffalo-wzr-1750dhp.dts
|
||||
@@ -146,3 +146,7 @@
|
||||
&spi_nor {
|
||||
status = "okay";
|
||||
};
|
||||
+
|
||||
+&usb3_phy {
|
||||
+ status = "okay";
|
||||
+};
|
||||
--- a/arch/arm/boot/dts/bcm4708-linksys-ea6300-v1.dts
|
||||
+++ b/arch/arm/boot/dts/bcm4708-linksys-ea6300-v1.dts
|
||||
@@ -38,3 +38,7 @@
|
||||
};
|
||||
};
|
||||
};
|
||||
+
|
||||
+&usb3_phy {
|
||||
+ status = "okay";
|
||||
+};
|
||||
--- a/arch/arm/boot/dts/bcm4708-luxul-xap-1510.dts
|
||||
+++ b/arch/arm/boot/dts/bcm4708-luxul-xap-1510.dts
|
||||
@@ -57,3 +57,7 @@
|
||||
&spi_nor {
|
||||
status = "okay";
|
||||
};
|
||||
+
|
||||
+&usb3_phy {
|
||||
+ status = "okay";
|
||||
+};
|
||||
--- a/arch/arm/boot/dts/bcm4708-luxul-xwc-1000.dts
|
||||
+++ b/arch/arm/boot/dts/bcm4708-luxul-xwc-1000.dts
|
||||
@@ -64,3 +64,7 @@
|
||||
&spi_nor {
|
||||
status = "okay";
|
||||
};
|
||||
+
|
||||
+&usb3_phy {
|
||||
+ status = "okay";
|
||||
+};
|
||||
--- a/arch/arm/boot/dts/bcm4708-netgear-r6250.dts
|
||||
+++ b/arch/arm/boot/dts/bcm4708-netgear-r6250.dts
|
||||
@@ -91,3 +91,7 @@
|
||||
&spi_nor {
|
||||
status = "okay";
|
||||
};
|
||||
+
|
||||
+&usb3_phy {
|
||||
+ status = "okay";
|
||||
+};
|
||||
--- a/arch/arm/boot/dts/bcm4708-netgear-r6300-v2.dts
|
||||
+++ b/arch/arm/boot/dts/bcm4708-netgear-r6300-v2.dts
|
||||
@@ -83,3 +83,7 @@
|
||||
&spi_nor {
|
||||
status = "okay";
|
||||
};
|
||||
+
|
||||
+&usb3_phy {
|
||||
+ status = "okay";
|
||||
+};
|
||||
--- a/arch/arm/boot/dts/bcm4708-smartrg-sr400ac.dts
|
||||
+++ b/arch/arm/boot/dts/bcm4708-smartrg-sr400ac.dts
|
||||
@@ -158,3 +158,7 @@
|
||||
};
|
||||
};
|
||||
};
|
||||
+
|
||||
+&usb3_phy {
|
||||
+ status = "okay";
|
||||
+};
|
||||
--- a/arch/arm/boot/dts/bcm47081-asus-rt-n18u.dts
|
||||
+++ b/arch/arm/boot/dts/bcm47081-asus-rt-n18u.dts
|
||||
@@ -74,3 +74,7 @@
|
||||
};
|
||||
};
|
||||
};
|
||||
+
|
||||
+&usb3_phy {
|
||||
+ status = "okay";
|
||||
+};
|
||||
--- a/arch/arm/boot/dts/bcm47081-buffalo-wzr-600dhp2.dts
|
||||
+++ b/arch/arm/boot/dts/bcm47081-buffalo-wzr-600dhp2.dts
|
||||
@@ -118,3 +118,7 @@
|
||||
};
|
||||
};
|
||||
};
|
||||
+
|
||||
+&usb3_phy {
|
||||
+ status = "okay";
|
||||
+};
|
||||
--- a/arch/arm/boot/dts/bcm47081-buffalo-wzr-900dhp.dts
|
||||
+++ b/arch/arm/boot/dts/bcm47081-buffalo-wzr-900dhp.dts
|
||||
@@ -104,3 +104,7 @@
|
||||
};
|
||||
};
|
||||
};
|
||||
+
|
||||
+&usb3_phy {
|
||||
+ status = "okay";
|
||||
+};
|
||||
--- a/arch/arm/boot/dts/bcm47081-luxul-xap-1410.dts
|
||||
+++ b/arch/arm/boot/dts/bcm47081-luxul-xap-1410.dts
|
||||
@@ -57,3 +57,7 @@
|
||||
&spi_nor {
|
||||
status = "okay";
|
||||
};
|
||||
+
|
||||
+&usb3_phy {
|
||||
+ status = "okay";
|
||||
+};
|
||||
--- a/arch/arm/boot/dts/bcm47081-luxul-xwr-1200.dts
|
||||
+++ b/arch/arm/boot/dts/bcm47081-luxul-xwr-1200.dts
|
||||
@@ -105,3 +105,7 @@
|
||||
&spi_nor {
|
||||
status = "okay";
|
||||
};
|
||||
+
|
||||
+&usb3_phy {
|
||||
+ status = "okay";
|
||||
+};
|
||||
--- a/arch/arm/boot/dts/bcm47081-tplink-archer-c5-v2.dts
|
||||
+++ b/arch/arm/boot/dts/bcm47081-tplink-archer-c5-v2.dts
|
||||
@@ -99,3 +99,7 @@
|
||||
&usb2 {
|
||||
vcc-gpio = <&chipcommon 9 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
+
|
||||
+&usb3_phy {
|
||||
+ status = "okay";
|
||||
+};
|
||||
--- a/arch/arm/boot/dts/bcm4709-asus-rt-ac87u.dts
|
||||
+++ b/arch/arm/boot/dts/bcm4709-asus-rt-ac87u.dts
|
||||
@@ -62,3 +62,7 @@
|
||||
};
|
||||
};
|
||||
};
|
||||
+
|
||||
+&usb3_phy {
|
||||
+ status = "okay";
|
||||
+};
|
||||
--- a/arch/arm/boot/dts/bcm4709-buffalo-wxr-1900dhp.dts
|
||||
+++ b/arch/arm/boot/dts/bcm4709-buffalo-wxr-1900dhp.dts
|
||||
@@ -127,3 +127,7 @@
|
||||
&spi_nor {
|
||||
status = "okay";
|
||||
};
|
||||
+
|
||||
+&usb3_phy {
|
||||
+ status = "okay";
|
||||
+};
|
||||
--- a/arch/arm/boot/dts/bcm4709-linksys-ea9200.dts
|
||||
+++ b/arch/arm/boot/dts/bcm4709-linksys-ea9200.dts
|
||||
@@ -39,3 +39,7 @@
|
||||
};
|
||||
};
|
||||
};
|
||||
+
|
||||
+&usb3_phy {
|
||||
+ status = "okay";
|
||||
+};
|
||||
--- a/arch/arm/boot/dts/bcm4709-netgear-r7000.dts
|
||||
+++ b/arch/arm/boot/dts/bcm4709-netgear-r7000.dts
|
||||
@@ -101,3 +101,7 @@
|
||||
&usb3 {
|
||||
vcc-gpio = <&chipcommon 0 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
+
|
||||
+&usb3_phy {
|
||||
+ status = "okay";
|
||||
+};
|
||||
--- a/arch/arm/boot/dts/bcm4709-netgear-r8000.dts
|
||||
+++ b/arch/arm/boot/dts/bcm4709-netgear-r8000.dts
|
||||
@@ -182,3 +182,7 @@
|
||||
&usb3 {
|
||||
vcc-gpio = <&chipcommon 0 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
+
|
||||
+&usb3_phy {
|
||||
+ status = "okay";
|
||||
+};
|
||||
--- a/arch/arm/boot/dts/bcm4709-tplink-archer-c9-v1.dts
|
||||
+++ b/arch/arm/boot/dts/bcm4709-tplink-archer-c9-v1.dts
|
||||
@@ -104,3 +104,7 @@
|
||||
&spi_nor {
|
||||
status = "okay";
|
||||
};
|
||||
+
|
||||
+&usb3_phy {
|
||||
+ status = "okay";
|
||||
+};
|
||||
--- a/arch/arm/boot/dts/bcm47094-dlink-dir-885l.dts
|
||||
+++ b/arch/arm/boot/dts/bcm47094-dlink-dir-885l.dts
|
||||
@@ -115,3 +115,7 @@
|
||||
&spi_nor {
|
||||
status = "okay";
|
||||
};
|
||||
+
|
||||
+&usb3_phy {
|
||||
+ status = "okay";
|
||||
+};
|
||||
--- a/arch/arm/boot/dts/bcm47094-linksys-panamera.dts
|
||||
+++ b/arch/arm/boot/dts/bcm47094-linksys-panamera.dts
|
||||
@@ -33,3 +33,7 @@
|
||||
};
|
||||
};
|
||||
};
|
||||
+
|
||||
+&usb3_phy {
|
||||
+ status = "okay";
|
||||
+};
|
||||
--- a/arch/arm/boot/dts/bcm47094-luxul-abr-4500.dts
|
||||
+++ b/arch/arm/boot/dts/bcm47094-luxul-abr-4500.dts
|
||||
@@ -60,3 +60,7 @@
|
||||
&spi_nor {
|
||||
status = "okay";
|
||||
};
|
||||
+
|
||||
+&usb3_phy {
|
||||
+ status = "okay";
|
||||
+};
|
||||
--- a/arch/arm/boot/dts/bcm47094-luxul-xbr-4500.dts
|
||||
+++ b/arch/arm/boot/dts/bcm47094-luxul-xbr-4500.dts
|
||||
@@ -60,3 +60,7 @@
|
||||
&spi_nor {
|
||||
status = "okay";
|
||||
};
|
||||
+
|
||||
+&usb3_phy {
|
||||
+ status = "okay";
|
||||
+};
|
||||
--- a/arch/arm/boot/dts/bcm47094-luxul-xwr-3100.dts
|
||||
+++ b/arch/arm/boot/dts/bcm47094-luxul-xwr-3100.dts
|
||||
@@ -100,3 +100,7 @@
|
||||
&spi_nor {
|
||||
status = "okay";
|
||||
};
|
||||
+
|
||||
+&usb3_phy {
|
||||
+ status = "okay";
|
||||
+};
|
||||
--- a/arch/arm/boot/dts/bcm47094-netgear-r8500.dts
|
||||
+++ b/arch/arm/boot/dts/bcm47094-netgear-r8500.dts
|
||||
@@ -91,3 +91,7 @@
|
||||
};
|
||||
};
|
||||
};
|
||||
+
|
||||
+&usb3_phy {
|
||||
+ status = "okay";
|
||||
+};
|
||||
--- a/arch/arm/boot/dts/bcm47094.dtsi
|
||||
+++ b/arch/arm/boot/dts/bcm47094.dtsi
|
||||
@@ -7,9 +7,10 @@
|
||||
#include "bcm4708.dtsi"
|
||||
|
||||
/ {
|
||||
- usb3_phy: usb3-phy {
|
||||
- compatible = "brcm,ns-bx-usb3-phy";
|
||||
- };
|
||||
+};
|
||||
+
|
||||
+&usb3_phy {
|
||||
+ compatible = "brcm,ns-bx-usb3-phy";
|
||||
};
|
||||
|
||||
&uart0 {
|
||||
--- a/arch/arm/boot/dts/bcm5301x.dtsi
|
||||
+++ b/arch/arm/boot/dts/bcm5301x.dtsi
|
||||
@@ -154,13 +154,6 @@
|
||||
clock-names = "phy-ref-clk";
|
||||
};
|
||||
|
||||
- usb3_phy: usb3-phy {
|
||||
- compatible = "brcm,ns-ax-usb3-phy";
|
||||
- reg = <0x18105000 0x1000>, <0x18003000 0x1000>;
|
||||
- reg-names = "dmp", "ccb-mii";
|
||||
- #phy-cells = <0>;
|
||||
- };
|
||||
-
|
||||
axi@18000000 {
|
||||
compatible = "brcm,bus-axi";
|
||||
reg = <0x18000000 0x1000>;
|
||||
@@ -359,7 +352,33 @@
|
||||
reg = <0x18003000 0x8>;
|
||||
#size-cells = <1>;
|
||||
#address-cells = <0>;
|
||||
- status = "disabled";
|
||||
+ };
|
||||
+
|
||||
+ mdio-bus-mux {
|
||||
+ compatible = "mdio-mux-mmioreg";
|
||||
+ mdio-parent-bus = <&mdio>;
|
||||
+ #address-cells = <1>;
|
||||
+ #size-cells = <0>;
|
||||
+ reg = <0x18003000 0x4>;
|
||||
+ mux-mask = <0x200>;
|
||||
+
|
||||
+ mdio@0 {
|
||||
+ reg = <0x0>;
|
||||
+ #address-cells = <1>;
|
||||
+ #size-cells = <0>;
|
||||
+
|
||||
+ usb3_phy: usb3-phy@10 {
|
||||
+ compatible = "brcm,ns-ax-usb3-phy";
|
||||
+ reg = <0x10>;
|
||||
+ usb3-dmp-syscon = <&usb3_dmp>;
|
||||
+ #phy-cells = <0>;
|
||||
+ status = "disabled";
|
||||
+ };
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ usb3_dmp: syscon@18105000 {
|
||||
+ reg = <0x18105000 0x1000>;
|
||||
};
|
||||
|
||||
i2c0: i2c@18009000 {
|
||||
--- a/arch/arm/boot/dts/bcm94708.dts
|
||||
+++ b/arch/arm/boot/dts/bcm94708.dts
|
||||
@@ -42,3 +42,7 @@
|
||||
reg = <0x00000000 0x08000000>;
|
||||
};
|
||||
};
|
||||
+
|
||||
+&usb3_phy {
|
||||
+ status = "okay";
|
||||
+};
|
||||
--- a/arch/arm/boot/dts/bcm94709.dts
|
||||
+++ b/arch/arm/boot/dts/bcm94709.dts
|
||||
@@ -42,3 +42,7 @@
|
||||
reg = <0x00000000 0x08000000>;
|
||||
};
|
||||
};
|
||||
+
|
||||
+&usb3_phy {
|
||||
+ status = "okay";
|
||||
+};
|
||||
--- a/arch/arm/boot/dts/bcm953012er.dts
|
||||
+++ b/arch/arm/boot/dts/bcm953012er.dts
|
||||
@@ -90,3 +90,7 @@
|
||||
};
|
||||
};
|
||||
};
|
||||
+
|
||||
+&usb3_phy {
|
||||
+ status = "okay";
|
||||
+};
|
||||
--- a/arch/arm/boot/dts/bcm953012hr.dts
|
||||
+++ b/arch/arm/boot/dts/bcm953012hr.dts
|
||||
@@ -95,3 +95,7 @@
|
||||
reg = <0x00700000 0x00900000>;
|
||||
};
|
||||
};
|
||||
+
|
||||
+&usb3_phy {
|
||||
+ status = "okay";
|
||||
+};
|
||||
--- a/arch/arm/boot/dts/bcm953012k.dts
|
||||
+++ b/arch/arm/boot/dts/bcm953012k.dts
|
||||
@@ -113,3 +113,7 @@
|
||||
&uart1 {
|
||||
status = "okay";
|
||||
};
|
||||
+
|
||||
+&usb3_phy {
|
||||
+ status = "okay";
|
||||
+};
|
@ -1,34 +0,0 @@
|
||||
From a21e7548438f3a8f59f9b9f3a8bc973613d3726a Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= <rafal@milecki.pl>
|
||||
Date: Thu, 14 Jun 2018 18:41:47 +0200
|
||||
Subject: [PATCH] ARM: dts: BCM53573: Add architected timer
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
It's a standard ARM architected timer that was simply missed when
|
||||
initially adding this .dtsi file.
|
||||
|
||||
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
|
||||
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
|
||||
---
|
||||
arch/arm/boot/dts/bcm53573.dtsi | 8 ++++++++
|
||||
1 file changed, 8 insertions(+)
|
||||
|
||||
--- a/arch/arm/boot/dts/bcm53573.dtsi
|
||||
+++ b/arch/arm/boot/dts/bcm53573.dtsi
|
||||
@@ -48,6 +48,14 @@
|
||||
};
|
||||
};
|
||||
|
||||
+ timer {
|
||||
+ compatible = "arm,armv7-timer";
|
||||
+ interrupts = <GIC_PPI 13 IRQ_TYPE_LEVEL_LOW>,
|
||||
+ <GIC_PPI 14 IRQ_TYPE_LEVEL_LOW>,
|
||||
+ <GIC_PPI 11 IRQ_TYPE_LEVEL_LOW>,
|
||||
+ <GIC_PPI 10 IRQ_TYPE_LEVEL_LOW>;
|
||||
+ };
|
||||
+
|
||||
clocks {
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
@ -1,269 +0,0 @@
|
||||
From 2bebdfcdcd0feb58d5df419532a2cedc78a336d7 Mon Sep 17 00:00:00 2001
|
||||
From: Vivek Unune <npcomplete13@gmail.com>
|
||||
Date: Mon, 18 Jun 2018 13:41:59 -0400
|
||||
Subject: [PATCH] ARM: dts: BCM5301X: Add support for Linksys EA9500
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
Hardware Info
|
||||
-------------
|
||||
|
||||
Processor - Broadcom BCM4709C0KFEBG dual-core @ 1.4 GHz
|
||||
Switch - BCM53012 in BCM4709C0KFEBG & external BCM53125
|
||||
DDR3 RAM - 256 MB
|
||||
Flash - 128 MB (Toshiba TC58BVG0S3HTA00)
|
||||
2.4GHz - BCM4366 4×4 2.4/5G single chip 802.11ac SoC
|
||||
Power Amp - Skyworks SE2623L 2.4 GHz power amp (x4)
|
||||
5GHz x 2 - BCM4366 4×4 2.4/5G single chip 802.11ac SoC
|
||||
Power Amp - PLX Technology PEX8603 3-lane, 3-port PCIe switch
|
||||
Ports - 8 Ports, 1 WAN Ports
|
||||
Antennas - 8 Antennas
|
||||
Serial Port - @J6 [GND,TX,RX] (VCC NC) 115200 8n1
|
||||
|
||||
Tested with OpenWrt built with DSA driver and Kernel v4.14
|
||||
|
||||
Signed-off-by: Vivek Unune <npcomplete13@gmail.com>
|
||||
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
|
||||
---
|
||||
arch/arm/boot/dts/bcm47094-linksys-panamera.dts | 229 ++++++++++++++++++++++++
|
||||
1 file changed, 229 insertions(+)
|
||||
|
||||
--- a/arch/arm/boot/dts/bcm47094-linksys-panamera.dts
|
||||
+++ b/arch/arm/boot/dts/bcm47094-linksys-panamera.dts
|
||||
@@ -31,6 +31,235 @@
|
||||
linux,code = <KEY_WPS_BUTTON>;
|
||||
gpios = <&chipcommon 3 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
+
|
||||
+ rfkill {
|
||||
+ label = "WiFi";
|
||||
+ linux,code = <KEY_RFKILL>;
|
||||
+ gpios = <&chipcommon 16 GPIO_ACTIVE_LOW>;
|
||||
+ };
|
||||
+
|
||||
+ reset {
|
||||
+ label = "Reset";
|
||||
+ linux,code = <KEY_RESTART>;
|
||||
+ gpios = <&chipcommon 17 GPIO_ACTIVE_LOW>;
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ leds {
|
||||
+ compatible = "gpio-leds";
|
||||
+
|
||||
+ wps {
|
||||
+ label = "bcm53xx:white:wps";
|
||||
+ gpios = <&chipcommon 22 GPIO_ACTIVE_LOW>;
|
||||
+ };
|
||||
+
|
||||
+ usb2 {
|
||||
+ label = "bcm53xx:green:usb2";
|
||||
+ gpios = <&chipcommon 1 GPIO_ACTIVE_LOW>;
|
||||
+ trigger-sources = <&ohci_port2>, <&ehci_port2>;
|
||||
+ linux,default-trigger = "usbport";
|
||||
+ };
|
||||
+
|
||||
+ usb3 {
|
||||
+ label = "bcm53xx:green:usb3";
|
||||
+ gpios = <&chipcommon 2 GPIO_ACTIVE_LOW>;
|
||||
+ trigger-sources = <&ohci_port1>, <&ehci_port1>,
|
||||
+ <&xhci_port1>;
|
||||
+ linux,default-trigger = "usbport";
|
||||
+ };
|
||||
+
|
||||
+ power {
|
||||
+ label = "bcm53xx:white:power";
|
||||
+ gpios = <&chipcommon 4 GPIO_ACTIVE_HIGH>;
|
||||
+ };
|
||||
+
|
||||
+ wifi-disabled {
|
||||
+ label = "bcm53xx:amber:wifi-disabled";
|
||||
+ gpios = <&chipcommon 0 GPIO_ACTIVE_LOW>;
|
||||
+ };
|
||||
+
|
||||
+ wifi-enabled {
|
||||
+ label = "bcm53xx:white:wifi-enabled";
|
||||
+ gpios = <&chipcommon 5 GPIO_ACTIVE_HIGH>;
|
||||
+ };
|
||||
+
|
||||
+ bluebar1 {
|
||||
+ label = "bcm53xx:white:bluebar1";
|
||||
+ gpios = <&chipcommon 11 GPIO_ACTIVE_HIGH>;
|
||||
+ };
|
||||
+
|
||||
+ bluebar2 {
|
||||
+ label = "bcm53xx:white:bluebar2";
|
||||
+ gpios = <&chipcommon 12 GPIO_ACTIVE_HIGH>;
|
||||
+ };
|
||||
+
|
||||
+ bluebar3 {
|
||||
+ label = "bcm53xx:white:bluebar3";
|
||||
+ gpios = <&chipcommon 15 GPIO_ACTIVE_LOW>;
|
||||
+ };
|
||||
+
|
||||
+ bluebar4 {
|
||||
+ label = "bcm53xx:white:bluebar4";
|
||||
+ gpios = <&chipcommon 18 GPIO_ACTIVE_HIGH>;
|
||||
+ };
|
||||
+
|
||||
+ bluebar5 {
|
||||
+ label = "bcm53xx:white:bluebar5";
|
||||
+ gpios = <&chipcommon 19 GPIO_ACTIVE_HIGH>;
|
||||
+ };
|
||||
+
|
||||
+ bluebar6 {
|
||||
+ label = "bcm53xx:white:bluebar6";
|
||||
+ gpios = <&chipcommon 20 GPIO_ACTIVE_HIGH>;
|
||||
+ };
|
||||
+
|
||||
+ bluebar7 {
|
||||
+ label = "bcm53xx:white:bluebar7";
|
||||
+ gpios = <&chipcommon 21 GPIO_ACTIVE_HIGH>;
|
||||
+ };
|
||||
+
|
||||
+ bluebar8 {
|
||||
+ label = "bcm53xx:white:bluebar8";
|
||||
+ gpios = <&chipcommon 8 GPIO_ACTIVE_HIGH>;
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ mdio-bus-mux {
|
||||
+ /* BIT(9) = 1 => external mdio */
|
||||
+ mdio_ext: mdio@200 {
|
||||
+ reg = <0x200>;
|
||||
+ #address-cells = <1>;
|
||||
+ #size-cells = <0>;
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ mdio-mii-mux {
|
||||
+ compatible = "mdio-mux-mmioreg";
|
||||
+ mdio-parent-bus = <&mdio_ext>;
|
||||
+ #address-cells = <1>;
|
||||
+ #size-cells = <0>;
|
||||
+ reg = <0x1800c1c0 0x4>;
|
||||
+
|
||||
+ /* BIT(6) = mdc, BIT(7) = mdio */
|
||||
+ mux-mask = <0xc0>;
|
||||
+
|
||||
+ mdio-mii@0 {
|
||||
+ /* Enable MII function */
|
||||
+ reg = <0x0>;
|
||||
+ #address-cells = <1>;
|
||||
+ #size-cells = <0>;
|
||||
+
|
||||
+ switch@0 {
|
||||
+ compatible = "brcm,bcm53125";
|
||||
+ #address-cells = <1>;
|
||||
+ #size-cells = <0>;
|
||||
+ reset-gpios = <&chipcommon 10 GPIO_ACTIVE_LOW>;
|
||||
+ reset-names = "robo_reset";
|
||||
+ reg = <0>;
|
||||
+ dsa,member = <1 0>;
|
||||
+
|
||||
+ ports {
|
||||
+ #address-cells = <1>;
|
||||
+ #size-cells = <0>;
|
||||
+
|
||||
+ port@0 {
|
||||
+ reg = <0>;
|
||||
+ label = "lan1";
|
||||
+ };
|
||||
+
|
||||
+ port@1 {
|
||||
+ reg = <1>;
|
||||
+ label = "lan5";
|
||||
+ };
|
||||
+
|
||||
+ port@2 {
|
||||
+ reg = <2>;
|
||||
+ label = "lan2";
|
||||
+ };
|
||||
+
|
||||
+ port@3 {
|
||||
+ reg = <3>;
|
||||
+ label = "lan6";
|
||||
+ };
|
||||
+
|
||||
+ port@4 {
|
||||
+ reg = <4>;
|
||||
+ label = "lan3";
|
||||
+ };
|
||||
+
|
||||
+ sw1_p8: port@8 {
|
||||
+ reg = <8>;
|
||||
+ ethernet = <&sw0_p0>;
|
||||
+ label = "cpu";
|
||||
+
|
||||
+ fixed-link {
|
||||
+ speed = <1000>;
|
||||
+ full-duplex;
|
||||
+ };
|
||||
+ };
|
||||
+ };
|
||||
+ };
|
||||
+ };
|
||||
+ };
|
||||
+};
|
||||
+
|
||||
+&usb2 {
|
||||
+ vcc-gpio = <&chipcommon 13 GPIO_ACTIVE_HIGH>;
|
||||
+};
|
||||
+
|
||||
+&usb3 {
|
||||
+ vcc-gpio = <&chipcommon 14 GPIO_ACTIVE_HIGH>;
|
||||
+};
|
||||
+
|
||||
+&srab {
|
||||
+ compatible = "brcm,bcm53012-srab", "brcm,bcm5301x-srab";
|
||||
+ status = "okay";
|
||||
+ dsa,member = <0 0>;
|
||||
+
|
||||
+ ports {
|
||||
+ #address-cells = <1>;
|
||||
+ #size-cells = <0>;
|
||||
+
|
||||
+ port@1 {
|
||||
+ reg = <1>;
|
||||
+ label = "lan7";
|
||||
+ };
|
||||
+
|
||||
+ port@2 {
|
||||
+ reg = <2>;
|
||||
+ label = "lan4";
|
||||
+ };
|
||||
+
|
||||
+ port@3 {
|
||||
+ reg = <3>;
|
||||
+ label = "lan8";
|
||||
+ };
|
||||
+
|
||||
+ port@4 {
|
||||
+ reg = <4>;
|
||||
+ label = "wan";
|
||||
+ };
|
||||
+
|
||||
+ port@8 {
|
||||
+ reg = <8>;
|
||||
+ ethernet = <&gmac2>;
|
||||
+ label = "cpu";
|
||||
+
|
||||
+ fixed-link {
|
||||
+ speed = <1000>;
|
||||
+ full-duplex;
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ sw0_p0: port@0 {
|
||||
+ reg = <0>;
|
||||
+ label = "extsw";
|
||||
+
|
||||
+ fixed-link {
|
||||
+ speed = <1000>;
|
||||
+ full-duplex;
|
||||
+ };
|
||||
+ };
|
||||
};
|
||||
};
|
||||
|
@ -1,167 +0,0 @@
|
||||
From b0465fdfdd7e7c1afe2fae1cb36b94e1ce89732e Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= <rafal@milecki.pl>
|
||||
Date: Sat, 28 Jul 2018 14:13:57 +0200
|
||||
Subject: [PATCH] ARM: dts: BCM5301X: Specify flash partitions
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
Most devices use Broadcom standard partitions which allows them to be
|
||||
described with the "brcm,bcm947xx-cfe-partitions". Exceptions are:
|
||||
1) TP-LINK devices which use "os-image" partition with TRX containing
|
||||
kernel only + separated rootfs partition.
|
||||
2) Asus RT-AC87U with custom "asus" partition.
|
||||
|
||||
This commit also removes undocumented and unsupported linux,part-probe
|
||||
binding which got accidentally upstreamed while describing SPI
|
||||
controller.
|
||||
|
||||
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
|
||||
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
|
||||
---
|
||||
arch/arm/boot/dts/bcm47081-tplink-archer-c5-v2.dts | 28 +++++++++++++++++++
|
||||
arch/arm/boot/dts/bcm4709-asus-rt-ac87u.dts | 31 ++++++++++++++++++++++
|
||||
arch/arm/boot/dts/bcm4709-tplink-archer-c9-v1.dts | 28 +++++++++++++++++++
|
||||
arch/arm/boot/dts/bcm5301x-nand-cs0.dtsi | 4 +++
|
||||
arch/arm/boot/dts/bcm5301x.dtsi | 5 +++-
|
||||
5 files changed, 95 insertions(+), 1 deletion(-)
|
||||
|
||||
--- a/arch/arm/boot/dts/bcm47081-tplink-archer-c5-v2.dts
|
||||
+++ b/arch/arm/boot/dts/bcm47081-tplink-archer-c5-v2.dts
|
||||
@@ -94,6 +94,34 @@
|
||||
|
||||
&spi_nor {
|
||||
status = "okay";
|
||||
+
|
||||
+ partitions {
|
||||
+ compatible = "fixed-partitions";
|
||||
+ #address-cells = <1>;
|
||||
+ #size-cells = <1>;
|
||||
+
|
||||
+ boot@0 {
|
||||
+ label = "boot";
|
||||
+ reg = <0x000000 0x040000>;
|
||||
+ read-only;
|
||||
+ };
|
||||
+
|
||||
+ os-image@100000 {
|
||||
+ label = "os-image";
|
||||
+ reg = <0x040000 0x200000>;
|
||||
+ compatible = "brcm,trx";
|
||||
+ };
|
||||
+
|
||||
+ rootfs@240000 {
|
||||
+ label = "rootfs";
|
||||
+ reg = <0x240000 0xc00000>;
|
||||
+ };
|
||||
+
|
||||
+ nvram@ff0000 {
|
||||
+ label = "nvram";
|
||||
+ reg = <0xff0000 0x010000>;
|
||||
+ };
|
||||
+ };
|
||||
};
|
||||
|
||||
&usb2 {
|
||||
--- a/arch/arm/boot/dts/bcm4709-asus-rt-ac87u.dts
|
||||
+++ b/arch/arm/boot/dts/bcm4709-asus-rt-ac87u.dts
|
||||
@@ -66,3 +66,34 @@
|
||||
&usb3_phy {
|
||||
status = "okay";
|
||||
};
|
||||
+
|
||||
+&nandcs {
|
||||
+ partitions {
|
||||
+ compatible = "fixed-partitions";
|
||||
+ #address-cells = <1>;
|
||||
+ #size-cells = <1>;
|
||||
+
|
||||
+ boot@0 {
|
||||
+ label = "boot";
|
||||
+ reg = <0x00000000 0x00080000>;
|
||||
+ read-only;
|
||||
+ };
|
||||
+
|
||||
+ nvram@80000 {
|
||||
+ label = "nvram";
|
||||
+ reg = <0x00080000 0x00180000>;
|
||||
+ };
|
||||
+
|
||||
+ firmware@200000 {
|
||||
+ label = "firmware";
|
||||
+ reg = <0x00200000 0x07cc0000>;
|
||||
+ compatible = "brcm,trx";
|
||||
+ };
|
||||
+
|
||||
+ asus@7ec0000 {
|
||||
+ label = "asus";
|
||||
+ reg = <0x07ec0000 0x00140000>;
|
||||
+ read-only;
|
||||
+ };
|
||||
+ };
|
||||
+};
|
||||
--- a/arch/arm/boot/dts/bcm4709-tplink-archer-c9-v1.dts
|
||||
+++ b/arch/arm/boot/dts/bcm4709-tplink-archer-c9-v1.dts
|
||||
@@ -103,6 +103,34 @@
|
||||
|
||||
&spi_nor {
|
||||
status = "okay";
|
||||
+
|
||||
+ partitions {
|
||||
+ compatible = "fixed-partitions";
|
||||
+ #address-cells = <1>;
|
||||
+ #size-cells = <1>;
|
||||
+
|
||||
+ boot@0 {
|
||||
+ label = "boot";
|
||||
+ reg = <0x000000 0x040000>;
|
||||
+ read-only;
|
||||
+ };
|
||||
+
|
||||
+ os-image@100000 {
|
||||
+ label = "os-image";
|
||||
+ reg = <0x040000 0x200000>;
|
||||
+ compatible = "brcm,trx";
|
||||
+ };
|
||||
+
|
||||
+ rootfs@240000 {
|
||||
+ label = "rootfs";
|
||||
+ reg = <0x240000 0xc00000>;
|
||||
+ };
|
||||
+
|
||||
+ nvram@ff0000 {
|
||||
+ label = "nvram";
|
||||
+ reg = <0xff0000 0x010000>;
|
||||
+ };
|
||||
+ };
|
||||
};
|
||||
|
||||
&usb3_phy {
|
||||
--- a/arch/arm/boot/dts/bcm5301x-nand-cs0.dtsi
|
||||
+++ b/arch/arm/boot/dts/bcm5301x-nand-cs0.dtsi
|
||||
@@ -12,6 +12,10 @@
|
||||
reg = <0>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
+
|
||||
+ partitions {
|
||||
+ compatible = "brcm,bcm947xx-cfe-partitions";
|
||||
+ };
|
||||
};
|
||||
};
|
||||
};
|
||||
--- a/arch/arm/boot/dts/bcm5301x.dtsi
|
||||
+++ b/arch/arm/boot/dts/bcm5301x.dtsi
|
||||
@@ -475,8 +475,11 @@
|
||||
compatible = "jedec,spi-nor";
|
||||
reg = <0>;
|
||||
spi-max-frequency = <20000000>;
|
||||
- linux,part-probe = "ofpart", "bcm47xxpart";
|
||||
status = "disabled";
|
||||
+
|
||||
+ partitions {
|
||||
+ compatible = "brcm,bcm947xx-cfe-partitions";
|
||||
+ };
|
||||
};
|
||||
};
|
||||
|
@ -1,58 +0,0 @@
|
||||
From 26ff86f7794b9466481ccf29ac79925d327f106d Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= <rafal@milecki.pl>
|
||||
Date: Thu, 20 Sep 2018 13:18:47 +0200
|
||||
Subject: [PATCH] ARM: dts: BCM5301X: Relicense BCM47081/BCM4709 files to the
|
||||
GPL 2.0+ / MIT
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
This matches licensing used by other BCM5301X files and is preferred as:
|
||||
1) GPL 2.0+ makes it clearly compatible with Linux kernel
|
||||
2) MIT is also permissive but preferred over ISC
|
||||
|
||||
Both files were fully developed by me. Commits touching them were signed
|
||||
by Florian and Hauke due to submitting process only.
|
||||
|
||||
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
|
||||
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
|
||||
---
|
||||
arch/arm/boot/dts/bcm47081.dtsi | 13 +------------
|
||||
arch/arm/boot/dts/bcm4709.dtsi | 3 +--
|
||||
2 files changed, 2 insertions(+), 14 deletions(-)
|
||||
|
||||
--- a/arch/arm/boot/dts/bcm47081.dtsi
|
||||
+++ b/arch/arm/boot/dts/bcm47081.dtsi
|
||||
@@ -1,20 +1,9 @@
|
||||
+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/*
|
||||
* Broadcom BCM470X / BCM5301X ARM platform code.
|
||||
* DTS for BCM47081 SoC.
|
||||
*
|
||||
* Copyright © 2014 Rafał Miłecki <zajec5@gmail.com>
|
||||
- *
|
||||
- * Permission to use, copy, modify, and/or distribute this software for any
|
||||
- * purpose with or without fee is hereby granted, provided that the above
|
||||
- * copyright notice and this permission notice appear in all copies.
|
||||
- *
|
||||
- * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
|
||||
- * REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
|
||||
- * AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
|
||||
- * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
|
||||
- * LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
|
||||
- * OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||
- * PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
#include "bcm5301x.dtsi"
|
||||
--- a/arch/arm/boot/dts/bcm4709.dtsi
|
||||
+++ b/arch/arm/boot/dts/bcm4709.dtsi
|
||||
@@ -1,7 +1,6 @@
|
||||
+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/*
|
||||
* Copyright (C) 2016 Rafał Miłecki <rafal@milecki.pl>
|
||||
- *
|
||||
- * Licensed under the ISC license.
|
||||
*/
|
||||
|
||||
#include "bcm4708.dtsi"
|
@ -1,33 +0,0 @@
|
||||
From d10967344375026ca8762b6080dec2585d895906 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= <rafal@milecki.pl>
|
||||
Date: Thu, 20 Sep 2018 13:20:19 +0200
|
||||
Subject: [PATCH] ARM: dts: BCM5301X: Relicense BCM47094 file to the GPL 2.0+ /
|
||||
MIT
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
This matches licensing used by other BCM5301X files and is preferred as:
|
||||
1) GPL 2.0+ makes it clearly compatible with Linux kernel
|
||||
2) MIT is also permissive but preferred over ISC
|
||||
|
||||
This file has been developed by me & once modified by Vivek.
|
||||
|
||||
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
|
||||
Acked-by: Vivek Unune <npcomplete13@gmail.com>
|
||||
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
|
||||
---
|
||||
arch/arm/boot/dts/bcm47094.dtsi | 3 +--
|
||||
1 file changed, 1 insertion(+), 2 deletions(-)
|
||||
|
||||
--- a/arch/arm/boot/dts/bcm47094.dtsi
|
||||
+++ b/arch/arm/boot/dts/bcm47094.dtsi
|
||||
@@ -1,7 +1,6 @@
|
||||
+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/*
|
||||
* Copyright (C) 2016 Rafał Miłecki <rafal@milecki.pl>
|
||||
- *
|
||||
- * Licensed under the ISC license.
|
||||
*/
|
||||
|
||||
#include "bcm4708.dtsi"
|
@ -1,32 +0,0 @@
|
||||
From 1c9001b4f69a37820862286b3bbcdde152a52dcf Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= <rafal@milecki.pl>
|
||||
Date: Thu, 20 Sep 2018 13:37:47 +0200
|
||||
Subject: [PATCH] ARM: dts: BCM53573: Relicense Tenda AC9 file to the GPL 2.0+
|
||||
/ MIT
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
This matches licensing used by most of BCM5301X files and is preferred as:
|
||||
1) GPL 2.0+ makes it clearly compatible with Linux kernel
|
||||
2) MIT is also permissive but preferred over ISC
|
||||
|
||||
This file was fully developed by me.
|
||||
|
||||
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
|
||||
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
|
||||
---
|
||||
arch/arm/boot/dts/bcm47189-tenda-ac9.dts | 3 +--
|
||||
1 file changed, 1 insertion(+), 2 deletions(-)
|
||||
|
||||
--- a/arch/arm/boot/dts/bcm47189-tenda-ac9.dts
|
||||
+++ b/arch/arm/boot/dts/bcm47189-tenda-ac9.dts
|
||||
@@ -1,7 +1,6 @@
|
||||
+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/*
|
||||
* Copyright (C) 2016 Rafał Miłecki <rafal@milecki.pl>
|
||||
- *
|
||||
- * Licensed under the ISC license.
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
@ -1,33 +0,0 @@
|
||||
From ca3a6e705cad10662827093d5426abe078861793 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= <rafal@milecki.pl>
|
||||
Date: Thu, 20 Sep 2018 13:39:28 +0200
|
||||
Subject: [PATCH] ARM: dts: BCM53573: Relicense SoC file to the GPL 2.0+ / MIT
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
This matches licensing used by most of BCM5301X files and is preferred as:
|
||||
1) GPL 2.0+ makes it clearly compatible with Linux kernel
|
||||
2) MIT is also permissive but preferred over ISC
|
||||
|
||||
This file has been developed by me & once modified by Rob dropping a
|
||||
single leading zero in an UART address.
|
||||
|
||||
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
|
||||
Acked-by: Rob Herring <robh@kernel.org>
|
||||
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
|
||||
---
|
||||
arch/arm/boot/dts/bcm53573.dtsi | 3 +--
|
||||
1 file changed, 1 insertion(+), 2 deletions(-)
|
||||
|
||||
--- a/arch/arm/boot/dts/bcm53573.dtsi
|
||||
+++ b/arch/arm/boot/dts/bcm53573.dtsi
|
||||
@@ -1,7 +1,6 @@
|
||||
+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/*
|
||||
* Copyright (C) 2016 Rafał Miłecki <rafal@milecki.pl>
|
||||
- *
|
||||
- * Licensed under the ISC license.
|
||||
*/
|
||||
|
||||
#include <dt-bindings/gpio/gpio.h>
|
@ -1,75 +0,0 @@
|
||||
From 03e96644d7a810916fc4997d572577e876908b18 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Ren=C3=A9=20Kjellerup?= <rk.katana.steel@gmail.com>
|
||||
Date: Mon, 1 Oct 2018 15:07:16 -0700
|
||||
Subject: [PATCH] ARM: dts: BCM5301X: Add basic DT for Linksys EA6500 V2
|
||||
|
||||
It is wireless home router based on BCM4708A0 with BCM4360 + BCM4331
|
||||
wireless chipsets. The BCM4331 5GHz chip currently isn't supported only
|
||||
due to missing compatible firmware.
|
||||
|
||||
Signed-off-by: Rene Kjellerup <rk.katana.steel@gmail.com>
|
||||
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
|
||||
---
|
||||
arch/arm/boot/dts/Makefile | 1 +
|
||||
arch/arm/boot/dts/bcm4708-linksys-ea6500-v2.dts | 45 +++++++++++++++++++++++++
|
||||
2 files changed, 46 insertions(+)
|
||||
create mode 100644 arch/arm/boot/dts/bcm4708-linksys-ea6500-v2.dts
|
||||
|
||||
--- a/arch/arm/boot/dts/Makefile
|
||||
+++ b/arch/arm/boot/dts/Makefile
|
||||
@@ -82,6 +82,7 @@ dtb-$(CONFIG_ARCH_BCM_5301X) += \
|
||||
bcm4708-asus-rt-ac68u.dtb \
|
||||
bcm4708-buffalo-wzr-1750dhp.dtb \
|
||||
bcm4708-linksys-ea6300-v1.dtb \
|
||||
+ bcm4708-linksys-ea6500-v2.dtb \
|
||||
bcm4708-luxul-xap-1510.dtb \
|
||||
bcm4708-luxul-xwc-1000.dtb \
|
||||
bcm4708-netgear-r6250.dtb \
|
||||
--- /dev/null
|
||||
+++ b/arch/arm/boot/dts/bcm4708-linksys-ea6500-v2.dts
|
||||
@@ -0,0 +1,45 @@
|
||||
+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
+/*
|
||||
+ * Copyright (C) 2017 Rafał Miłecki <rafal@milecki.pl>
|
||||
+ * Copyright (C) 2018 Rene Kjellerup <rk.katana.steel@gmail.com>
|
||||
+ */
|
||||
+
|
||||
+/dts-v1/;
|
||||
+
|
||||
+#include "bcm4708.dtsi"
|
||||
+#include "bcm5301x-nand-cs0-bch8.dtsi"
|
||||
+
|
||||
+/ {
|
||||
+ compatible = "linksys,ea6500-v2", "brcm,bcm4708";
|
||||
+ model = "Linksys EA6500 V2";
|
||||
+
|
||||
+ chosen {
|
||||
+ bootargs = "console=ttyS0,115200";
|
||||
+ };
|
||||
+
|
||||
+ memory {
|
||||
+ reg = <0x00000000 0x08000000>;
|
||||
+ };
|
||||
+
|
||||
+ gpio-keys {
|
||||
+ compatible = "gpio-keys";
|
||||
+ #address-cells = <1>;
|
||||
+ #size-cells = <0>;
|
||||
+
|
||||
+ wps {
|
||||
+ label = "WPS";
|
||||
+ linux,code = <KEY_WPS_BUTTON>;
|
||||
+ gpios = <&chipcommon 7 GPIO_ACTIVE_LOW>;
|
||||
+ };
|
||||
+
|
||||
+ restart {
|
||||
+ label = "Reset";
|
||||
+ linux,code = <KEY_RESTART>;
|
||||
+ gpios = <&chipcommon 11 GPIO_ACTIVE_LOW>;
|
||||
+ };
|
||||
+ };
|
||||
+};
|
||||
+
|
||||
+&usb3_phy {
|
||||
+ status = "okay";
|
||||
+};
|
@ -1,77 +0,0 @@
|
||||
From 9994241ac97cb84d1df98fdc172d3cc6b04b11bf Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= <rafal@milecki.pl>
|
||||
Date: Fri, 9 Nov 2018 09:56:49 +0100
|
||||
Subject: [PATCH] ARM: dts: BCM5301X: Describe Northstar pins mux controller
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
This describes hardware & will allow referencing pin functions. The
|
||||
first usage is UART1 which allows supporting devices using it.
|
||||
|
||||
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
|
||||
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
|
||||
---
|
||||
arch/arm/boot/dts/bcm5301x.dtsi | 44 +++++++++++++++++++++++++++++++++++++++++
|
||||
1 file changed, 44 insertions(+)
|
||||
|
||||
--- a/arch/arm/boot/dts/bcm5301x.dtsi
|
||||
+++ b/arch/arm/boot/dts/bcm5301x.dtsi
|
||||
@@ -37,6 +37,8 @@
|
||||
reg = <0x0400 0x100>;
|
||||
interrupts = <GIC_SPI 85 IRQ_TYPE_LEVEL_HIGH>;
|
||||
clocks = <&iprocslow>;
|
||||
+ pinctrl-names = "default";
|
||||
+ pinctrl-0 = <&pinmux_uart1>;
|
||||
status = "disabled";
|
||||
};
|
||||
};
|
||||
@@ -391,6 +393,48 @@
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
+ dmu@1800c000 {
|
||||
+ compatible = "simple-bus";
|
||||
+ ranges = <0 0x1800c000 0x1000>;
|
||||
+ #address-cells = <1>;
|
||||
+ #size-cells = <1>;
|
||||
+
|
||||
+ cru@100 {
|
||||
+ compatible = "simple-bus";
|
||||
+ reg = <0x100 0x1a4>;
|
||||
+ ranges;
|
||||
+ #address-cells = <1>;
|
||||
+ #size-cells = <1>;
|
||||
+
|
||||
+ pin-controller@1c0 {
|
||||
+ compatible = "brcm,bcm4708-pinmux";
|
||||
+ reg = <0x1c0 0x24>;
|
||||
+ reg-names = "cru_gpio_control";
|
||||
+
|
||||
+ spi-pins {
|
||||
+ groups = "spi_grp";
|
||||
+ function = "spi";
|
||||
+ };
|
||||
+
|
||||
+ i2c {
|
||||
+ groups = "i2c_grp";
|
||||
+ function = "i2c";
|
||||
+ };
|
||||
+
|
||||
+ pwm {
|
||||
+ groups = "pwm0_grp", "pwm1_grp",
|
||||
+ "pwm2_grp", "pwm3_grp";
|
||||
+ function = "pwm";
|
||||
+ };
|
||||
+
|
||||
+ pinmux_uart1: uart1 {
|
||||
+ groups = "uart1_grp";
|
||||
+ function = "uart1";
|
||||
+ };
|
||||
+ };
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
lcpll0: lcpll0@1800c100 {
|
||||
#clock-cells = <1>;
|
||||
compatible = "brcm,nsp-lcpll0";
|
@ -1,41 +0,0 @@
|
||||
From b7f264fa496eb2a6dd1d67dc91dbe8ffcb142487 Mon Sep 17 00:00:00 2001
|
||||
From: Dan Haab <riproute@gmail.com>
|
||||
Date: Sun, 2 Dec 2018 17:00:15 -0700
|
||||
Subject: [PATCH] ARM: dts: BCM53573: Relicense Luxul files to the GPL 2.0+ /
|
||||
MIT
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
This matches licensing used by other BCM53573 files and BCM5301X.
|
||||
|
||||
Signed-off-by: Dan Haab <dan.haab@luxul.com>
|
||||
Acked-by: Rafał Miłecki <rafal@milecki.pl>
|
||||
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
|
||||
---
|
||||
arch/arm/boot/dts/bcm47189-luxul-xap-1440.dts | 3 +--
|
||||
arch/arm/boot/dts/bcm47189-luxul-xap-810.dts | 3 +--
|
||||
2 files changed, 2 insertions(+), 4 deletions(-)
|
||||
|
||||
--- a/arch/arm/boot/dts/bcm47189-luxul-xap-1440.dts
|
||||
+++ b/arch/arm/boot/dts/bcm47189-luxul-xap-1440.dts
|
||||
@@ -1,7 +1,6 @@
|
||||
+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/*
|
||||
* Copyright 2017 Luxul Inc.
|
||||
- *
|
||||
- * Licensed under the ISC license.
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
--- a/arch/arm/boot/dts/bcm47189-luxul-xap-810.dts
|
||||
+++ b/arch/arm/boot/dts/bcm47189-luxul-xap-810.dts
|
||||
@@ -1,7 +1,6 @@
|
||||
+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
/*
|
||||
* Copyright 2017 Luxul Inc.
|
||||
- *
|
||||
- * Licensed under the ISC license.
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
@ -1,107 +0,0 @@
|
||||
From 40a17923367118e32e5e413a952736dd83635b32 Mon Sep 17 00:00:00 2001
|
||||
From: Hao Dong <halbertdong@gmail.com>
|
||||
Date: Sun, 20 Jan 2019 23:33:27 +0100
|
||||
Subject: [PATCH] ARM: dts: BCM5301X: Add basic DT for Phicomm K3
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
This router has BCM4709C0 SoC, 128 MiB NAND flash (MX30LF1G18AC-TI),
|
||||
512 MiB memory and 3 x LAN and 1 x WAN ports. WiFi chips are
|
||||
BCM4366C0 x 2. The router has a small LCD and 3 capactive keys driven by
|
||||
a PIC microcontroller, which is in turn wired to UART1 of main board.
|
||||
|
||||
Signed-off-by: Hao Dong <halbertdong@gmail.com>
|
||||
[rmilecki: drop chosen { }, fix whitespaces, update commit message]
|
||||
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
|
||||
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
|
||||
---
|
||||
arch/arm/boot/dts/Makefile | 1 +
|
||||
arch/arm/boot/dts/bcm47094-phicomm-k3.dts | 71 +++++++++++++++++++++++
|
||||
2 files changed, 72 insertions(+)
|
||||
create mode 100644 arch/arm/boot/dts/bcm47094-phicomm-k3.dts
|
||||
|
||||
--- a/arch/arm/boot/dts/Makefile
|
||||
+++ b/arch/arm/boot/dts/Makefile
|
||||
@@ -108,6 +108,7 @@ dtb-$(CONFIG_ARCH_BCM_5301X) += \
|
||||
bcm47094-luxul-xwr-3100.dtb \
|
||||
bcm47094-luxul-xwr-3150-v1.dtb \
|
||||
bcm47094-netgear-r8500.dtb \
|
||||
+ bcm47094-phicomm-k3.dtb \
|
||||
bcm94708.dtb \
|
||||
bcm94709.dtb \
|
||||
bcm953012er.dtb \
|
||||
--- /dev/null
|
||||
+++ b/arch/arm/boot/dts/bcm47094-phicomm-k3.dts
|
||||
@@ -0,0 +1,71 @@
|
||||
+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
+/*
|
||||
+ * Copyright (C) 2017 Hamster Tian <haotia@gmail.com>
|
||||
+ * Copyright (C) 2019 Hao Dong <halbertdong@gmail.com>
|
||||
+ */
|
||||
+
|
||||
+/dts-v1/;
|
||||
+
|
||||
+#include "bcm47094.dtsi"
|
||||
+#include "bcm5301x-nand-cs0-bch4.dtsi"
|
||||
+
|
||||
+/ {
|
||||
+ compatible = "phicomm,k3", "brcm,bcm47094", "brcm,bcm4708";
|
||||
+ model = "Phicomm K3";
|
||||
+
|
||||
+ memory {
|
||||
+ reg = <0x00000000 0x08000000
|
||||
+ 0x88000000 0x18000000>;
|
||||
+ };
|
||||
+
|
||||
+ gpio-keys {
|
||||
+ compatible = "gpio-keys";
|
||||
+ #address-cells = <1>;
|
||||
+ #size-cells = <0>;
|
||||
+
|
||||
+ restart {
|
||||
+ label = "Reset";
|
||||
+ linux,code = <KEY_RESTART>;
|
||||
+ gpios = <&chipcommon 17 GPIO_ACTIVE_LOW>;
|
||||
+ };
|
||||
+ };
|
||||
+};
|
||||
+
|
||||
+&uart1 {
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
+&usb3_phy {
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
+&nandcs {
|
||||
+ partitions {
|
||||
+ compatible = "fixed-partitions";
|
||||
+ #address-cells = <1>;
|
||||
+ #size-cells = <1>;
|
||||
+
|
||||
+ partition@0 {
|
||||
+ label = "boot";
|
||||
+ reg = <0x0000000 0x0080000>;
|
||||
+ read-only;
|
||||
+ };
|
||||
+
|
||||
+ partition@80000 {
|
||||
+ label = "nvram";
|
||||
+ reg = <0x0080000 0x0100000>;
|
||||
+ };
|
||||
+
|
||||
+ partition@180000{
|
||||
+ label = "phicomm";
|
||||
+ reg = <0x0180000 0x0280000>;
|
||||
+ read-only;
|
||||
+ };
|
||||
+
|
||||
+ partition@400000 {
|
||||
+ label = "firmware";
|
||||
+ reg = <0x0400000 0x7C00000>;
|
||||
+ compatible = "brcm,trx";
|
||||
+ };
|
||||
+ };
|
||||
+};
|
@ -1,107 +0,0 @@
|
||||
From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= <rafal@milecki.pl>
|
||||
Date: Fri, 29 Dec 2017 14:44:09 +0100
|
||||
Subject: [PATCH] spi: bcm53xx: simplify reading SPI data
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
This commit makes transfer function use spi_transfer_is_last to
|
||||
determine if currently processed transfer is the last one. Thanks to
|
||||
that we finally set hardware registers properly and it makes controller
|
||||
behave the way it's expected to.
|
||||
|
||||
This allows simplifying read function which can now simply start reading
|
||||
from the slot 0 instead of the last saved offset. It has been
|
||||
successfully tested using spi_write_then_read.
|
||||
|
||||
Moreover this change fixes handling messages with two writing transfers.
|
||||
It's important for SPI flash devices as their drivers commonly use one
|
||||
transfer for a command and another one for data.
|
||||
|
||||
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
|
||||
---
|
||||
drivers/spi/spi-bcm53xx.c | 26 ++++++++++----------------
|
||||
1 file changed, 10 insertions(+), 16 deletions(-)
|
||||
|
||||
--- a/drivers/spi/spi-bcm53xx.c
|
||||
+++ b/drivers/spi/spi-bcm53xx.c
|
||||
@@ -27,8 +27,6 @@ struct bcm53xxspi {
|
||||
struct bcma_device *core;
|
||||
struct spi_master *master;
|
||||
void __iomem *mmio_base;
|
||||
-
|
||||
- size_t read_offset;
|
||||
bool bspi; /* Boot SPI mode with memory mapping */
|
||||
};
|
||||
|
||||
@@ -172,8 +170,6 @@ static void bcm53xxspi_buf_write(struct
|
||||
|
||||
if (!cont)
|
||||
bcm53xxspi_write(b53spi, B53SPI_MSPI_WRITE_LOCK, 0);
|
||||
-
|
||||
- b53spi->read_offset = len;
|
||||
}
|
||||
|
||||
static void bcm53xxspi_buf_read(struct bcm53xxspi *b53spi, u8 *r_buf,
|
||||
@@ -182,10 +178,10 @@ static void bcm53xxspi_buf_read(struct b
|
||||
u32 tmp;
|
||||
int i;
|
||||
|
||||
- for (i = 0; i < b53spi->read_offset + len; i++) {
|
||||
+ for (i = 0; i < len; i++) {
|
||||
tmp = B53SPI_CDRAM_CONT | B53SPI_CDRAM_PCS_DISABLE_ALL |
|
||||
B53SPI_CDRAM_PCS_DSCK;
|
||||
- if (!cont && i == b53spi->read_offset + len - 1)
|
||||
+ if (!cont && i == len - 1)
|
||||
tmp &= ~B53SPI_CDRAM_CONT;
|
||||
tmp &= ~0x1;
|
||||
/* Command Register File */
|
||||
@@ -194,8 +190,7 @@ static void bcm53xxspi_buf_read(struct b
|
||||
|
||||
/* Set queue pointers */
|
||||
bcm53xxspi_write(b53spi, B53SPI_MSPI_NEWQP, 0);
|
||||
- bcm53xxspi_write(b53spi, B53SPI_MSPI_ENDQP,
|
||||
- b53spi->read_offset + len - 1);
|
||||
+ bcm53xxspi_write(b53spi, B53SPI_MSPI_ENDQP, len - 1);
|
||||
|
||||
if (cont)
|
||||
bcm53xxspi_write(b53spi, B53SPI_MSPI_WRITE_LOCK, 1);
|
||||
@@ -214,13 +209,11 @@ static void bcm53xxspi_buf_read(struct b
|
||||
bcm53xxspi_write(b53spi, B53SPI_MSPI_WRITE_LOCK, 0);
|
||||
|
||||
for (i = 0; i < len; ++i) {
|
||||
- int offset = b53spi->read_offset + i;
|
||||
+ u16 reg = B53SPI_MSPI_RXRAM + 4 * (1 + i * 2);
|
||||
|
||||
/* Data stored in the transmit register file LSB */
|
||||
- r_buf[i] = (u8)bcm53xxspi_read(b53spi, B53SPI_MSPI_RXRAM + 4 * (1 + offset * 2));
|
||||
+ r_buf[i] = (u8)bcm53xxspi_read(b53spi, reg);
|
||||
}
|
||||
-
|
||||
- b53spi->read_offset = 0;
|
||||
}
|
||||
|
||||
static int bcm53xxspi_transfer_one(struct spi_master *master,
|
||||
@@ -238,7 +231,8 @@ static int bcm53xxspi_transfer_one(struc
|
||||
left = t->len;
|
||||
while (left) {
|
||||
size_t to_write = min_t(size_t, 16, left);
|
||||
- bool cont = left - to_write > 0;
|
||||
+ bool cont = !spi_transfer_is_last(master, t) ||
|
||||
+ left - to_write > 0;
|
||||
|
||||
bcm53xxspi_buf_write(b53spi, buf, to_write, cont);
|
||||
left -= to_write;
|
||||
@@ -250,9 +244,9 @@ static int bcm53xxspi_transfer_one(struc
|
||||
buf = (u8 *)t->rx_buf;
|
||||
left = t->len;
|
||||
while (left) {
|
||||
- size_t to_read = min_t(size_t, 16 - b53spi->read_offset,
|
||||
- left);
|
||||
- bool cont = left - to_read > 0;
|
||||
+ size_t to_read = min_t(size_t, 16, left);
|
||||
+ bool cont = !spi_transfer_is_last(master, t) ||
|
||||
+ left - to_read > 0;
|
||||
|
||||
bcm53xxspi_buf_read(b53spi, buf, to_read, cont);
|
||||
left -= to_read;
|
@ -1,427 +0,0 @@
|
||||
From c12fb1774deaa9c9408b19db8d43d3612f6e47a0 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= <rafal@milecki.pl>
|
||||
Date: Wed, 26 Sep 2018 21:31:03 +0200
|
||||
Subject: [PATCH] pinctrl: bcm: add Northstar driver
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
This driver provides support for Northstar mux controller. It differs
|
||||
from Northstar Plus one so a new binding and driver were needed.
|
||||
|
||||
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
|
||||
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
|
||||
---
|
||||
drivers/pinctrl/bcm/Kconfig | 13 ++
|
||||
drivers/pinctrl/bcm/Makefile | 1 +
|
||||
drivers/pinctrl/bcm/pinctrl-ns.c | 372 +++++++++++++++++++++++++++++++++++++++
|
||||
3 files changed, 386 insertions(+)
|
||||
create mode 100644 drivers/pinctrl/bcm/pinctrl-ns.c
|
||||
|
||||
--- a/drivers/pinctrl/bcm/Kconfig
|
||||
+++ b/drivers/pinctrl/bcm/Kconfig
|
||||
@@ -72,6 +72,19 @@ config PINCTRL_CYGNUS_MUX
|
||||
configuration, with the exception that certain individual pins
|
||||
can be overridden to GPIO function
|
||||
|
||||
+config PINCTRL_NS
|
||||
+ bool "Broadcom Northstar pins driver"
|
||||
+ depends on OF && (ARCH_BCM_5301X || COMPILE_TEST)
|
||||
+ select PINMUX
|
||||
+ select GENERIC_PINCONF
|
||||
+ default ARCH_BCM_5301X
|
||||
+ help
|
||||
+ Say yes here to enable the Broadcom NS SoC pins driver.
|
||||
+
|
||||
+ The Broadcom Northstar pins driver supports muxing multi-purpose pins
|
||||
+ that can be used for various functions (e.g. SPI, I2C, UART) as well
|
||||
+ as GPIOs.
|
||||
+
|
||||
config PINCTRL_NSP_GPIO
|
||||
bool "Broadcom NSP GPIO (with PINCONF) driver"
|
||||
depends on OF_GPIO && (ARCH_BCM_NSP || COMPILE_TEST)
|
||||
--- a/drivers/pinctrl/bcm/Makefile
|
||||
+++ b/drivers/pinctrl/bcm/Makefile
|
||||
@@ -5,6 +5,7 @@ obj-$(CONFIG_PINCTRL_BCM281XX) += pinct
|
||||
obj-$(CONFIG_PINCTRL_BCM2835) += pinctrl-bcm2835.o
|
||||
obj-$(CONFIG_PINCTRL_IPROC_GPIO) += pinctrl-iproc-gpio.o
|
||||
obj-$(CONFIG_PINCTRL_CYGNUS_MUX) += pinctrl-cygnus-mux.o
|
||||
+obj-$(CONFIG_PINCTRL_NS) += pinctrl-ns.o
|
||||
obj-$(CONFIG_PINCTRL_NSP_GPIO) += pinctrl-nsp-gpio.o
|
||||
obj-$(CONFIG_PINCTRL_NS2_MUX) += pinctrl-ns2-mux.o
|
||||
obj-$(CONFIG_PINCTRL_NSP_MUX) += pinctrl-nsp-mux.o
|
||||
--- /dev/null
|
||||
+++ b/drivers/pinctrl/bcm/pinctrl-ns.c
|
||||
@@ -0,0 +1,372 @@
|
||||
+// SPDX-License-Identifier: GPL-2.0
|
||||
+/*
|
||||
+ * Copyright (C) 2018 Rafał Miłecki <rafal@milecki.pl>
|
||||
+ */
|
||||
+
|
||||
+#include <linux/err.h>
|
||||
+#include <linux/io.h>
|
||||
+#include <linux/module.h>
|
||||
+#include <linux/of.h>
|
||||
+#include <linux/of_device.h>
|
||||
+#include <linux/pinctrl/pinconf-generic.h>
|
||||
+#include <linux/pinctrl/pinctrl.h>
|
||||
+#include <linux/pinctrl/pinmux.h>
|
||||
+#include <linux/platform_device.h>
|
||||
+#include <linux/slab.h>
|
||||
+
|
||||
+#define FLAG_BCM4708 BIT(1)
|
||||
+#define FLAG_BCM4709 BIT(2)
|
||||
+#define FLAG_BCM53012 BIT(3)
|
||||
+
|
||||
+struct ns_pinctrl {
|
||||
+ struct device *dev;
|
||||
+ unsigned int chipset_flag;
|
||||
+ struct pinctrl_dev *pctldev;
|
||||
+ void __iomem *base;
|
||||
+
|
||||
+ struct pinctrl_desc pctldesc;
|
||||
+ struct ns_pinctrl_group *groups;
|
||||
+ unsigned int num_groups;
|
||||
+ struct ns_pinctrl_function *functions;
|
||||
+ unsigned int num_functions;
|
||||
+};
|
||||
+
|
||||
+/*
|
||||
+ * Pins
|
||||
+ */
|
||||
+
|
||||
+static const struct pinctrl_pin_desc ns_pinctrl_pins[] = {
|
||||
+ { 0, "spi_clk", (void *)(FLAG_BCM4708 | FLAG_BCM4709 | FLAG_BCM53012) },
|
||||
+ { 1, "spi_ss", (void *)(FLAG_BCM4708 | FLAG_BCM4709 | FLAG_BCM53012) },
|
||||
+ { 2, "spi_mosi", (void *)(FLAG_BCM4708 | FLAG_BCM4709 | FLAG_BCM53012) },
|
||||
+ { 3, "spi_miso", (void *)(FLAG_BCM4708 | FLAG_BCM4709 | FLAG_BCM53012) },
|
||||
+ { 4, "i2c_scl", (void *)(FLAG_BCM4708 | FLAG_BCM4709 | FLAG_BCM53012) },
|
||||
+ { 5, "i2c_sda", (void *)(FLAG_BCM4708 | FLAG_BCM4709 | FLAG_BCM53012) },
|
||||
+ { 6, "mdc", (void *)(FLAG_BCM4709 | FLAG_BCM53012) },
|
||||
+ { 7, "mdio", (void *)(FLAG_BCM4709 | FLAG_BCM53012) },
|
||||
+ { 8, "pwm0", (void *)(FLAG_BCM4708 | FLAG_BCM4709 | FLAG_BCM53012) },
|
||||
+ { 9, "pwm1", (void *)(FLAG_BCM4708 | FLAG_BCM4709 | FLAG_BCM53012) },
|
||||
+ { 10, "pwm2", (void *)(FLAG_BCM4708 | FLAG_BCM4709 | FLAG_BCM53012) },
|
||||
+ { 11, "pwm3", (void *)(FLAG_BCM4708 | FLAG_BCM4709 | FLAG_BCM53012) },
|
||||
+ { 12, "uart1_rx", (void *)(FLAG_BCM4708 | FLAG_BCM4709 | FLAG_BCM53012) },
|
||||
+ { 13, "uart1_tx", (void *)(FLAG_BCM4708 | FLAG_BCM4709 | FLAG_BCM53012) },
|
||||
+ { 14, "uart1_cts", (void *)(FLAG_BCM4708 | FLAG_BCM4709 | FLAG_BCM53012) },
|
||||
+ { 15, "uart1_rts", (void *)(FLAG_BCM4708 | FLAG_BCM4709 | FLAG_BCM53012) },
|
||||
+ { 16, "uart2_rx", (void *)(FLAG_BCM4709 | FLAG_BCM53012) },
|
||||
+ { 17, "uart2_tx", (void *)(FLAG_BCM4709 | FLAG_BCM53012) },
|
||||
+/* TODO { ??, "xtal_out", (void *)(FLAG_BCM4709) }, */
|
||||
+ { 22, "sdio_pwr", (void *)(FLAG_BCM4709 | FLAG_BCM53012) },
|
||||
+ { 23, "sdio_en_1p8v", (void *)(FLAG_BCM4709 | FLAG_BCM53012) },
|
||||
+};
|
||||
+
|
||||
+/*
|
||||
+ * Groups
|
||||
+ */
|
||||
+
|
||||
+struct ns_pinctrl_group {
|
||||
+ const char *name;
|
||||
+ const unsigned int *pins;
|
||||
+ const unsigned int num_pins;
|
||||
+ unsigned int chipsets;
|
||||
+};
|
||||
+
|
||||
+static const unsigned int spi_pins[] = { 0, 1, 2, 3 };
|
||||
+static const unsigned int i2c_pins[] = { 4, 5 };
|
||||
+static const unsigned int mdio_pins[] = { 6, 7 };
|
||||
+static const unsigned int pwm0_pins[] = { 8 };
|
||||
+static const unsigned int pwm1_pins[] = { 9 };
|
||||
+static const unsigned int pwm2_pins[] = { 10 };
|
||||
+static const unsigned int pwm3_pins[] = { 11 };
|
||||
+static const unsigned int uart1_pins[] = { 12, 13, 14, 15 };
|
||||
+static const unsigned int uart2_pins[] = { 16, 17 };
|
||||
+static const unsigned int sdio_pwr_pins[] = { 22 };
|
||||
+static const unsigned int sdio_1p8v_pins[] = { 23 };
|
||||
+
|
||||
+#define NS_GROUP(_name, _pins, _chipsets) \
|
||||
+{ \
|
||||
+ .name = _name, \
|
||||
+ .pins = _pins, \
|
||||
+ .num_pins = ARRAY_SIZE(_pins), \
|
||||
+ .chipsets = _chipsets, \
|
||||
+}
|
||||
+
|
||||
+static const struct ns_pinctrl_group ns_pinctrl_groups[] = {
|
||||
+ NS_GROUP("spi_grp", spi_pins, FLAG_BCM4708 | FLAG_BCM4709 | FLAG_BCM53012),
|
||||
+ NS_GROUP("i2c_grp", i2c_pins, FLAG_BCM4708 | FLAG_BCM4709 | FLAG_BCM53012),
|
||||
+ NS_GROUP("mdio_grp", mdio_pins, FLAG_BCM4709 | FLAG_BCM53012),
|
||||
+ NS_GROUP("pwm0_grp", pwm0_pins, FLAG_BCM4708 | FLAG_BCM4709 | FLAG_BCM53012),
|
||||
+ NS_GROUP("pwm1_grp", pwm1_pins, FLAG_BCM4708 | FLAG_BCM4709 | FLAG_BCM53012),
|
||||
+ NS_GROUP("pwm2_grp", pwm2_pins, FLAG_BCM4708 | FLAG_BCM4709 | FLAG_BCM53012),
|
||||
+ NS_GROUP("pwm3_grp", pwm3_pins, FLAG_BCM4708 | FLAG_BCM4709 | FLAG_BCM53012),
|
||||
+ NS_GROUP("uart1_grp", uart1_pins, FLAG_BCM4708 | FLAG_BCM4709 | FLAG_BCM53012),
|
||||
+ NS_GROUP("uart2_grp", uart2_pins, FLAG_BCM4709 | FLAG_BCM53012),
|
||||
+ NS_GROUP("sdio_pwr_grp", sdio_pwr_pins, FLAG_BCM4709 | FLAG_BCM53012),
|
||||
+ NS_GROUP("sdio_1p8v_grp", sdio_1p8v_pins, FLAG_BCM4709 | FLAG_BCM53012),
|
||||
+};
|
||||
+
|
||||
+/*
|
||||
+ * Functions
|
||||
+ */
|
||||
+
|
||||
+struct ns_pinctrl_function {
|
||||
+ const char *name;
|
||||
+ const char * const *groups;
|
||||
+ const unsigned int num_groups;
|
||||
+ unsigned int chipsets;
|
||||
+};
|
||||
+
|
||||
+static const char * const spi_groups[] = { "spi_grp" };
|
||||
+static const char * const i2c_groups[] = { "i2c_grp" };
|
||||
+static const char * const mdio_groups[] = { "mdio_grp" };
|
||||
+static const char * const pwm_groups[] = { "pwm0_grp", "pwm1_grp", "pwm2_grp",
|
||||
+ "pwm3_grp" };
|
||||
+static const char * const uart1_groups[] = { "uart1_grp" };
|
||||
+static const char * const uart2_groups[] = { "uart2_grp" };
|
||||
+static const char * const sdio_groups[] = { "sdio_pwr_grp", "sdio_1p8v_grp" };
|
||||
+
|
||||
+#define NS_FUNCTION(_name, _groups, _chipsets) \
|
||||
+{ \
|
||||
+ .name = _name, \
|
||||
+ .groups = _groups, \
|
||||
+ .num_groups = ARRAY_SIZE(_groups), \
|
||||
+ .chipsets = _chipsets, \
|
||||
+}
|
||||
+
|
||||
+static const struct ns_pinctrl_function ns_pinctrl_functions[] = {
|
||||
+ NS_FUNCTION("spi", spi_groups, FLAG_BCM4708 | FLAG_BCM4709 | FLAG_BCM53012),
|
||||
+ NS_FUNCTION("i2c", i2c_groups, FLAG_BCM4708 | FLAG_BCM4709 | FLAG_BCM53012),
|
||||
+ NS_FUNCTION("mdio", mdio_groups, FLAG_BCM4709 | FLAG_BCM53012),
|
||||
+ NS_FUNCTION("pwm", pwm_groups, FLAG_BCM4708 | FLAG_BCM4709 | FLAG_BCM53012),
|
||||
+ NS_FUNCTION("uart1", uart1_groups, FLAG_BCM4708 | FLAG_BCM4709 | FLAG_BCM53012),
|
||||
+ NS_FUNCTION("uart2", uart2_groups, FLAG_BCM4709 | FLAG_BCM53012),
|
||||
+ NS_FUNCTION("sdio", sdio_groups, FLAG_BCM4709 | FLAG_BCM53012),
|
||||
+};
|
||||
+
|
||||
+/*
|
||||
+ * Groups code
|
||||
+ */
|
||||
+
|
||||
+static int ns_pinctrl_get_groups_count(struct pinctrl_dev *pctrl_dev)
|
||||
+{
|
||||
+ struct ns_pinctrl *ns_pinctrl = pinctrl_dev_get_drvdata(pctrl_dev);
|
||||
+
|
||||
+ return ns_pinctrl->num_groups;
|
||||
+}
|
||||
+
|
||||
+static const char *ns_pinctrl_get_group_name(struct pinctrl_dev *pctrl_dev,
|
||||
+ unsigned int selector)
|
||||
+{
|
||||
+ struct ns_pinctrl *ns_pinctrl = pinctrl_dev_get_drvdata(pctrl_dev);
|
||||
+
|
||||
+ return ns_pinctrl->groups[selector].name;
|
||||
+}
|
||||
+
|
||||
+static int ns_pinctrl_get_group_pins(struct pinctrl_dev *pctrl_dev,
|
||||
+ unsigned int selector,
|
||||
+ const unsigned int **pins,
|
||||
+ unsigned int *num_pins)
|
||||
+{
|
||||
+ struct ns_pinctrl *ns_pinctrl = pinctrl_dev_get_drvdata(pctrl_dev);
|
||||
+
|
||||
+ *pins = ns_pinctrl->groups[selector].pins;
|
||||
+ *num_pins = ns_pinctrl->groups[selector].num_pins;
|
||||
+
|
||||
+ return 0;
|
||||
+}
|
||||
+
|
||||
+static const struct pinctrl_ops ns_pinctrl_ops = {
|
||||
+ .get_groups_count = ns_pinctrl_get_groups_count,
|
||||
+ .get_group_name = ns_pinctrl_get_group_name,
|
||||
+ .get_group_pins = ns_pinctrl_get_group_pins,
|
||||
+ .dt_node_to_map = pinconf_generic_dt_node_to_map_group,
|
||||
+ .dt_free_map = pinconf_generic_dt_free_map,
|
||||
+};
|
||||
+
|
||||
+/*
|
||||
+ * Functions code
|
||||
+ */
|
||||
+
|
||||
+static int ns_pinctrl_get_functions_count(struct pinctrl_dev *pctrl_dev)
|
||||
+{
|
||||
+ struct ns_pinctrl *ns_pinctrl = pinctrl_dev_get_drvdata(pctrl_dev);
|
||||
+
|
||||
+ return ns_pinctrl->num_functions;
|
||||
+}
|
||||
+
|
||||
+static const char *ns_pinctrl_get_function_name(struct pinctrl_dev *pctrl_dev,
|
||||
+ unsigned int selector)
|
||||
+{
|
||||
+ struct ns_pinctrl *ns_pinctrl = pinctrl_dev_get_drvdata(pctrl_dev);
|
||||
+
|
||||
+ return ns_pinctrl->functions[selector].name;
|
||||
+}
|
||||
+
|
||||
+static int ns_pinctrl_get_function_groups(struct pinctrl_dev *pctrl_dev,
|
||||
+ unsigned int selector,
|
||||
+ const char * const **groups,
|
||||
+ unsigned * const num_groups)
|
||||
+{
|
||||
+ struct ns_pinctrl *ns_pinctrl = pinctrl_dev_get_drvdata(pctrl_dev);
|
||||
+
|
||||
+ *groups = ns_pinctrl->functions[selector].groups;
|
||||
+ *num_groups = ns_pinctrl->functions[selector].num_groups;
|
||||
+
|
||||
+ return 0;
|
||||
+}
|
||||
+
|
||||
+static int ns_pinctrl_set_mux(struct pinctrl_dev *pctrl_dev,
|
||||
+ unsigned int func_select,
|
||||
+ unsigned int grp_select)
|
||||
+{
|
||||
+ struct ns_pinctrl *ns_pinctrl = pinctrl_dev_get_drvdata(pctrl_dev);
|
||||
+ u32 unset = 0;
|
||||
+ u32 tmp;
|
||||
+ int i;
|
||||
+
|
||||
+ for (i = 0; i < ns_pinctrl->groups[grp_select].num_pins; i++) {
|
||||
+ int pin_number = ns_pinctrl->groups[grp_select].pins[i];
|
||||
+
|
||||
+ unset |= BIT(pin_number);
|
||||
+ }
|
||||
+
|
||||
+ tmp = readl(ns_pinctrl->base);
|
||||
+ tmp &= ~unset;
|
||||
+ writel(tmp, ns_pinctrl->base);
|
||||
+
|
||||
+ return 0;
|
||||
+}
|
||||
+
|
||||
+static const struct pinmux_ops ns_pinctrl_pmxops = {
|
||||
+ .get_functions_count = ns_pinctrl_get_functions_count,
|
||||
+ .get_function_name = ns_pinctrl_get_function_name,
|
||||
+ .get_function_groups = ns_pinctrl_get_function_groups,
|
||||
+ .set_mux = ns_pinctrl_set_mux,
|
||||
+};
|
||||
+
|
||||
+/*
|
||||
+ * Controller code
|
||||
+ */
|
||||
+
|
||||
+static struct pinctrl_desc ns_pinctrl_desc = {
|
||||
+ .name = "pinctrl-ns",
|
||||
+ .pctlops = &ns_pinctrl_ops,
|
||||
+ .pmxops = &ns_pinctrl_pmxops,
|
||||
+};
|
||||
+
|
||||
+static const struct of_device_id ns_pinctrl_of_match_table[] = {
|
||||
+ { .compatible = "brcm,bcm4708-pinmux", .data = (void *)FLAG_BCM4708, },
|
||||
+ { .compatible = "brcm,bcm4709-pinmux", .data = (void *)FLAG_BCM4709, },
|
||||
+ { .compatible = "brcm,bcm53012-pinmux", .data = (void *)FLAG_BCM53012, },
|
||||
+ { }
|
||||
+};
|
||||
+
|
||||
+static int ns_pinctrl_probe(struct platform_device *pdev)
|
||||
+{
|
||||
+ struct device *dev = &pdev->dev;
|
||||
+ const struct of_device_id *of_id;
|
||||
+ struct ns_pinctrl *ns_pinctrl;
|
||||
+ struct pinctrl_desc *pctldesc;
|
||||
+ struct pinctrl_pin_desc *pin;
|
||||
+ struct ns_pinctrl_group *group;
|
||||
+ struct ns_pinctrl_function *function;
|
||||
+ struct resource *res;
|
||||
+ int i;
|
||||
+
|
||||
+ ns_pinctrl = devm_kzalloc(dev, sizeof(*ns_pinctrl), GFP_KERNEL);
|
||||
+ if (!ns_pinctrl)
|
||||
+ return -ENOMEM;
|
||||
+ pctldesc = &ns_pinctrl->pctldesc;
|
||||
+ platform_set_drvdata(pdev, ns_pinctrl);
|
||||
+
|
||||
+ /* Set basic properties */
|
||||
+
|
||||
+ ns_pinctrl->dev = dev;
|
||||
+
|
||||
+ of_id = of_match_device(ns_pinctrl_of_match_table, dev);
|
||||
+ if (!of_id)
|
||||
+ return -EINVAL;
|
||||
+ ns_pinctrl->chipset_flag = (unsigned int)of_id->data;
|
||||
+
|
||||
+ res = platform_get_resource_byname(pdev, IORESOURCE_MEM,
|
||||
+ "cru_gpio_control");
|
||||
+ ns_pinctrl->base = devm_ioremap_resource(dev, res);
|
||||
+ if (IS_ERR(ns_pinctrl->base)) {
|
||||
+ dev_err(dev, "Failed to map pinctrl regs\n");
|
||||
+ return PTR_ERR(ns_pinctrl->base);
|
||||
+ }
|
||||
+
|
||||
+ memcpy(pctldesc, &ns_pinctrl_desc, sizeof(*pctldesc));
|
||||
+
|
||||
+ /* Set pinctrl properties */
|
||||
+
|
||||
+ pctldesc->pins = devm_kcalloc(dev, ARRAY_SIZE(ns_pinctrl_pins),
|
||||
+ sizeof(struct pinctrl_pin_desc),
|
||||
+ GFP_KERNEL);
|
||||
+ if (!pctldesc->pins)
|
||||
+ return -ENOMEM;
|
||||
+ for (i = 0, pin = (struct pinctrl_pin_desc *)&pctldesc->pins[0];
|
||||
+ i < ARRAY_SIZE(ns_pinctrl_pins); i++) {
|
||||
+ const struct pinctrl_pin_desc *src = &ns_pinctrl_pins[i];
|
||||
+ unsigned int chipsets = (unsigned int)src->drv_data;
|
||||
+
|
||||
+ if (chipsets & ns_pinctrl->chipset_flag) {
|
||||
+ memcpy(pin++, src, sizeof(*src));
|
||||
+ pctldesc->npins++;
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
+ ns_pinctrl->groups = devm_kcalloc(dev, ARRAY_SIZE(ns_pinctrl_groups),
|
||||
+ sizeof(struct ns_pinctrl_group),
|
||||
+ GFP_KERNEL);
|
||||
+ if (!ns_pinctrl->groups)
|
||||
+ return -ENOMEM;
|
||||
+ for (i = 0, group = &ns_pinctrl->groups[0];
|
||||
+ i < ARRAY_SIZE(ns_pinctrl_groups); i++) {
|
||||
+ const struct ns_pinctrl_group *src = &ns_pinctrl_groups[i];
|
||||
+
|
||||
+ if (src->chipsets & ns_pinctrl->chipset_flag) {
|
||||
+ memcpy(group++, src, sizeof(*src));
|
||||
+ ns_pinctrl->num_groups++;
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
+ ns_pinctrl->functions = devm_kcalloc(dev,
|
||||
+ ARRAY_SIZE(ns_pinctrl_functions),
|
||||
+ sizeof(struct ns_pinctrl_function),
|
||||
+ GFP_KERNEL);
|
||||
+ if (!ns_pinctrl->functions)
|
||||
+ return -ENOMEM;
|
||||
+ for (i = 0, function = &ns_pinctrl->functions[0];
|
||||
+ i < ARRAY_SIZE(ns_pinctrl_functions); i++) {
|
||||
+ const struct ns_pinctrl_function *src = &ns_pinctrl_functions[i];
|
||||
+
|
||||
+ if (src->chipsets & ns_pinctrl->chipset_flag) {
|
||||
+ memcpy(function++, src, sizeof(*src));
|
||||
+ ns_pinctrl->num_functions++;
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
+ /* Register */
|
||||
+
|
||||
+ ns_pinctrl->pctldev = devm_pinctrl_register(dev, pctldesc, ns_pinctrl);
|
||||
+ if (IS_ERR(ns_pinctrl->pctldev)) {
|
||||
+ dev_err(dev, "Failed to register pinctrl\n");
|
||||
+ return PTR_ERR(ns_pinctrl->pctldev);
|
||||
+ }
|
||||
+
|
||||
+ return 0;
|
||||
+}
|
||||
+
|
||||
+static struct platform_driver ns_pinctrl_driver = {
|
||||
+ .probe = ns_pinctrl_probe,
|
||||
+ .driver = {
|
||||
+ .name = "ns-pinmux",
|
||||
+ .of_match_table = ns_pinctrl_of_match_table,
|
||||
+ },
|
||||
+};
|
||||
+
|
||||
+module_platform_driver(ns_pinctrl_driver);
|
||||
+
|
||||
+MODULE_AUTHOR("Rafał Miłecki");
|
||||
+MODULE_LICENSE("GPL v2");
|
||||
+MODULE_DEVICE_TABLE(of, ns_pinctrl_of_match_table);
|
@ -1,38 +0,0 @@
|
||||
From ce7bdb957b8e3f1cbf0a3358f1deef385dff6502 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= <rafal@milecki.pl>
|
||||
Date: Thu, 11 Oct 2018 13:23:40 +0200
|
||||
Subject: [PATCH] pinctrl: bcm: ns: Use uintptr_t for casting data
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
Fix up a compiler error on 64bit architectures where pointers
|
||||
and integers differ in size.
|
||||
|
||||
Suggested-by: Arnd Bergmann <arnd@arndb.de>
|
||||
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
|
||||
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
|
||||
---
|
||||
drivers/pinctrl/bcm/pinctrl-ns.c | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
--- a/drivers/pinctrl/bcm/pinctrl-ns.c
|
||||
+++ b/drivers/pinctrl/bcm/pinctrl-ns.c
|
||||
@@ -285,7 +285,7 @@ static int ns_pinctrl_probe(struct platf
|
||||
of_id = of_match_device(ns_pinctrl_of_match_table, dev);
|
||||
if (!of_id)
|
||||
return -EINVAL;
|
||||
- ns_pinctrl->chipset_flag = (unsigned int)of_id->data;
|
||||
+ ns_pinctrl->chipset_flag = (uintptr_t)of_id->data;
|
||||
|
||||
res = platform_get_resource_byname(pdev, IORESOURCE_MEM,
|
||||
"cru_gpio_control");
|
||||
@@ -307,7 +307,7 @@ static int ns_pinctrl_probe(struct platf
|
||||
for (i = 0, pin = (struct pinctrl_pin_desc *)&pctldesc->pins[0];
|
||||
i < ARRAY_SIZE(ns_pinctrl_pins); i++) {
|
||||
const struct pinctrl_pin_desc *src = &ns_pinctrl_pins[i];
|
||||
- unsigned int chipsets = (unsigned int)src->drv_data;
|
||||
+ unsigned int chipsets = (uintptr_t)src->drv_data;
|
||||
|
||||
if (chipsets & ns_pinctrl->chipset_flag) {
|
||||
memcpy(pin++, src, sizeof(*src));
|
@ -1,99 +0,0 @@
|
||||
From a49d784d5a8272d0f63c448fe8dc69e589db006e Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= <rafal@milecki.pl>
|
||||
Date: Tue, 18 Dec 2018 16:58:08 +0100
|
||||
Subject: [PATCH] pinctrl: bcm: ns: support updated DT binding as syscon
|
||||
subnode
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
Documentation has been recently updated specifying that pinctrl should
|
||||
be subnode of the CRU "syscon". Support that by using parent node for
|
||||
regmap and reading "offset" property from the DT.
|
||||
|
||||
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
|
||||
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
|
||||
---
|
||||
drivers/pinctrl/bcm/pinctrl-ns.c | 29 +++++++++++++++++++----------
|
||||
1 file changed, 19 insertions(+), 10 deletions(-)
|
||||
|
||||
--- a/drivers/pinctrl/bcm/pinctrl-ns.c
|
||||
+++ b/drivers/pinctrl/bcm/pinctrl-ns.c
|
||||
@@ -5,6 +5,7 @@
|
||||
|
||||
#include <linux/err.h>
|
||||
#include <linux/io.h>
|
||||
+#include <linux/mfd/syscon.h>
|
||||
#include <linux/module.h>
|
||||
#include <linux/of.h>
|
||||
#include <linux/of_device.h>
|
||||
@@ -12,6 +13,7 @@
|
||||
#include <linux/pinctrl/pinctrl.h>
|
||||
#include <linux/pinctrl/pinmux.h>
|
||||
#include <linux/platform_device.h>
|
||||
+#include <linux/regmap.h>
|
||||
#include <linux/slab.h>
|
||||
|
||||
#define FLAG_BCM4708 BIT(1)
|
||||
@@ -22,7 +24,8 @@ struct ns_pinctrl {
|
||||
struct device *dev;
|
||||
unsigned int chipset_flag;
|
||||
struct pinctrl_dev *pctldev;
|
||||
- void __iomem *base;
|
||||
+ struct regmap *regmap;
|
||||
+ u32 offset;
|
||||
|
||||
struct pinctrl_desc pctldesc;
|
||||
struct ns_pinctrl_group *groups;
|
||||
@@ -229,9 +232,9 @@ static int ns_pinctrl_set_mux(struct pin
|
||||
unset |= BIT(pin_number);
|
||||
}
|
||||
|
||||
- tmp = readl(ns_pinctrl->base);
|
||||
+ regmap_read(ns_pinctrl->regmap, ns_pinctrl->offset, &tmp);
|
||||
tmp &= ~unset;
|
||||
- writel(tmp, ns_pinctrl->base);
|
||||
+ regmap_write(ns_pinctrl->regmap, ns_pinctrl->offset, tmp);
|
||||
|
||||
return 0;
|
||||
}
|
||||
@@ -263,13 +266,13 @@ static const struct of_device_id ns_pinc
|
||||
static int ns_pinctrl_probe(struct platform_device *pdev)
|
||||
{
|
||||
struct device *dev = &pdev->dev;
|
||||
+ struct device_node *np = dev->of_node;
|
||||
const struct of_device_id *of_id;
|
||||
struct ns_pinctrl *ns_pinctrl;
|
||||
struct pinctrl_desc *pctldesc;
|
||||
struct pinctrl_pin_desc *pin;
|
||||
struct ns_pinctrl_group *group;
|
||||
struct ns_pinctrl_function *function;
|
||||
- struct resource *res;
|
||||
int i;
|
||||
|
||||
ns_pinctrl = devm_kzalloc(dev, sizeof(*ns_pinctrl), GFP_KERNEL);
|
||||
@@ -287,12 +290,18 @@ static int ns_pinctrl_probe(struct platf
|
||||
return -EINVAL;
|
||||
ns_pinctrl->chipset_flag = (uintptr_t)of_id->data;
|
||||
|
||||
- res = platform_get_resource_byname(pdev, IORESOURCE_MEM,
|
||||
- "cru_gpio_control");
|
||||
- ns_pinctrl->base = devm_ioremap_resource(dev, res);
|
||||
- if (IS_ERR(ns_pinctrl->base)) {
|
||||
- dev_err(dev, "Failed to map pinctrl regs\n");
|
||||
- return PTR_ERR(ns_pinctrl->base);
|
||||
+ ns_pinctrl->regmap = syscon_node_to_regmap(of_get_parent(np));
|
||||
+ if (IS_ERR(ns_pinctrl->regmap)) {
|
||||
+ int err = PTR_ERR(ns_pinctrl->regmap);
|
||||
+
|
||||
+ dev_err(dev, "Failed to map pinctrl regs: %d\n", err);
|
||||
+
|
||||
+ return err;
|
||||
+ }
|
||||
+
|
||||
+ if (of_property_read_u32(np, "offset", &ns_pinctrl->offset)) {
|
||||
+ dev_err(dev, "Failed to get register offset\n");
|
||||
+ return -ENOENT;
|
||||
}
|
||||
|
||||
memcpy(pctldesc, &ns_pinctrl_desc, sizeof(*pctldesc));
|
@ -1,80 +0,0 @@
|
||||
From: Dan Haab <dan.haab@legrand.com>
|
||||
Date: Wed, 2 Oct 2019 09:57:26 -0600
|
||||
Subject: [PATCH] ARM: dts: BCM5301X: Add DT for Luxul XWC-2000
|
||||
|
||||
It's a simple network device based on BCM47094 with just a single
|
||||
Ethernet port.
|
||||
|
||||
Signed-off-by: Dan Haab <dan.haab@legrand.com>
|
||||
---
|
||||
arch/arm/boot/dts/Makefile | 1 +
|
||||
arch/arm/boot/dts/bcm47094-luxul-xwc-2000.dts | 53 +++++++++++++++++++
|
||||
2 files changed, 54 insertions(+)
|
||||
create mode 100644 arch/arm/boot/dts/bcm47094-luxul-xwc-2000.dts
|
||||
|
||||
--- a/arch/arm/boot/dts/Makefile
|
||||
+++ b/arch/arm/boot/dts/Makefile
|
||||
@@ -105,6 +105,7 @@ dtb-$(CONFIG_ARCH_BCM_5301X) += \
|
||||
bcm47094-luxul-abr-4500.dtb \
|
||||
bcm47094-luxul-xap-1610.dtb \
|
||||
bcm47094-luxul-xbr-4500.dtb \
|
||||
+ bcm47094-luxul-xwc-2000.dtb \
|
||||
bcm47094-luxul-xwr-3100.dtb \
|
||||
bcm47094-luxul-xwr-3150-v1.dtb \
|
||||
bcm47094-netgear-r8500.dtb \
|
||||
--- /dev/null
|
||||
+++ b/arch/arm/boot/dts/bcm47094-luxul-xwc-2000.dts
|
||||
@@ -0,0 +1,53 @@
|
||||
+// SPDX-License-Identifier: GPL-2.0-or-later OR MIT
|
||||
+/*
|
||||
+ * Copyright 2019 Legrand AV Inc.
|
||||
+ */
|
||||
+
|
||||
+/dts-v1/;
|
||||
+
|
||||
+#include "bcm47094.dtsi"
|
||||
+#include "bcm5301x-nand-cs0-bch8.dtsi"
|
||||
+
|
||||
+/ {
|
||||
+ compatible = "luxul,xwc-2000-v1", "brcm,bcm47094", "brcm,bcm4708";
|
||||
+ model = "Luxul XWC-2000 V1";
|
||||
+
|
||||
+ chosen {
|
||||
+ bootargs = "earlycon";
|
||||
+ };
|
||||
+
|
||||
+ memory {
|
||||
+ reg = <0x00000000 0x08000000
|
||||
+ 0x88000000 0x18000000>;
|
||||
+ };
|
||||
+
|
||||
+ leds {
|
||||
+ compatible = "gpio-leds";
|
||||
+
|
||||
+ status {
|
||||
+ label = "bcm53xx:green:status";
|
||||
+ gpios = <&chipcommon 18 GPIO_ACTIVE_LOW>;
|
||||
+ linux,default-trigger = "timer";
|
||||
+ };
|
||||
+ };
|
||||
+
|
||||
+ gpio-keys {
|
||||
+ compatible = "gpio-keys";
|
||||
+ #address-cells = <1>;
|
||||
+ #size-cells = <0>;
|
||||
+
|
||||
+ restart {
|
||||
+ label = "Reset";
|
||||
+ linux,code = <KEY_RESTART>;
|
||||
+ gpios = <&chipcommon 19 GPIO_ACTIVE_LOW>;
|
||||
+ };
|
||||
+ };
|
||||
+};
|
||||
+
|
||||
+&uart1 {
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
+&spi_nor {
|
||||
+ status = "okay";
|
||||
+};
|
@ -1,137 +0,0 @@
|
||||
From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= <rafal@milecki.pl>
|
||||
Date: Sat, 1 Oct 2016 22:54:48 +0200
|
||||
Subject: [PATCH] usb: xhci: add support for performing fake doorbell
|
||||
|
||||
Broadcom's Northstar XHCI controllers seem to need a special start
|
||||
procedure to work correctly. There isn't any official documentation of
|
||||
this, the problem is that controller doesn't detect any connected
|
||||
devices with default setup. Moreover connecting USB device to controller
|
||||
that doesn't run properly can cause SoC's watchdog issues.
|
||||
|
||||
A workaround that was successfully tested on multiple devices is to
|
||||
perform a fake doorbell. This patch adds code for doing this and enables
|
||||
it on BCM4708 family.
|
||||
---
|
||||
drivers/usb/host/xhci-plat.c | 6 +++++
|
||||
drivers/usb/host/xhci.c | 63 +++++++++++++++++++++++++++++++++++++++++---
|
||||
drivers/usb/host/xhci.h | 1 +
|
||||
3 files changed, 67 insertions(+), 3 deletions(-)
|
||||
|
||||
--- a/drivers/usb/host/xhci-plat.c
|
||||
+++ b/drivers/usb/host/xhci-plat.c
|
||||
@@ -67,12 +67,18 @@ static int xhci_priv_resume_quirk(struct
|
||||
|
||||
static void xhci_plat_quirks(struct device *dev, struct xhci_hcd *xhci)
|
||||
{
|
||||
+ struct platform_device *pdev = to_platform_device(dev);
|
||||
+ struct device_node *node = pdev->dev.of_node;
|
||||
+
|
||||
/*
|
||||
* As of now platform drivers don't provide MSI support so we ensure
|
||||
* here that the generic code does not try to make a pci_dev from our
|
||||
* dev struct in order to setup MSI
|
||||
*/
|
||||
xhci->quirks |= XHCI_PLAT;
|
||||
+
|
||||
+ if (node && of_machine_is_compatible("brcm,bcm4708"))
|
||||
+ xhci->quirks |= XHCI_FAKE_DOORBELL;
|
||||
}
|
||||
|
||||
/* called during probe() after chip reset completes */
|
||||
--- a/drivers/usb/host/xhci.c
|
||||
+++ b/drivers/usb/host/xhci.c
|
||||
@@ -166,6 +166,49 @@ int xhci_start(struct xhci_hcd *xhci)
|
||||
return ret;
|
||||
}
|
||||
|
||||
+/**
|
||||
+ * xhci_fake_doorbell - Perform a fake doorbell on a specified slot
|
||||
+ *
|
||||
+ * Some controllers require a fake doorbell to start correctly. Without that
|
||||
+ * they simply don't detect any devices.
|
||||
+ */
|
||||
+static int xhci_fake_doorbell(struct xhci_hcd *xhci, int slot_id)
|
||||
+{
|
||||
+ u32 temp;
|
||||
+
|
||||
+ /* Alloc a virt device for that slot */
|
||||
+ if (!xhci_alloc_virt_device(xhci, slot_id, NULL, GFP_NOIO)) {
|
||||
+ xhci_warn(xhci, "Could not allocate xHCI USB device data structures\n");
|
||||
+ return -ENOMEM;
|
||||
+ }
|
||||
+
|
||||
+ /* Ring fake doorbell for slot_id ep 0 */
|
||||
+ xhci_ring_ep_doorbell(xhci, slot_id, 0, 0);
|
||||
+ usleep_range(1000, 1500);
|
||||
+
|
||||
+ /* Read the status to check if HSE is set or not */
|
||||
+ temp = readl(&xhci->op_regs->status);
|
||||
+
|
||||
+ /* Clear HSE if set */
|
||||
+ if (temp & STS_FATAL) {
|
||||
+ xhci_dbg(xhci, "HSE problem detected, status: 0x%08x\n", temp);
|
||||
+ temp &= ~0x1fff;
|
||||
+ temp |= STS_FATAL;
|
||||
+ writel(temp, &xhci->op_regs->status);
|
||||
+ usleep_range(1000, 1500);
|
||||
+ readl(&xhci->op_regs->status);
|
||||
+ }
|
||||
+
|
||||
+ /* Free virt device */
|
||||
+ xhci_free_virt_device(xhci, slot_id);
|
||||
+
|
||||
+ /* We're done if controller is already running */
|
||||
+ if (readl(&xhci->op_regs->command) & CMD_RUN)
|
||||
+ return 0;
|
||||
+
|
||||
+ return xhci_start(xhci);
|
||||
+}
|
||||
+
|
||||
/*
|
||||
* Reset a halted HC.
|
||||
*
|
||||
@@ -549,10 +592,20 @@ static int xhci_init(struct usb_hcd *hcd
|
||||
|
||||
static int xhci_run_finished(struct xhci_hcd *xhci)
|
||||
{
|
||||
- if (xhci_start(xhci)) {
|
||||
- xhci_halt(xhci);
|
||||
- return -ENODEV;
|
||||
+ int err;
|
||||
+
|
||||
+ err = xhci_start(xhci);
|
||||
+ if (err) {
|
||||
+ err = -ENODEV;
|
||||
+ goto err_halt;
|
||||
}
|
||||
+
|
||||
+ if (xhci->quirks & XHCI_FAKE_DOORBELL) {
|
||||
+ err = xhci_fake_doorbell(xhci, 1);
|
||||
+ if (err)
|
||||
+ goto err_halt;
|
||||
+ }
|
||||
+
|
||||
xhci->shared_hcd->state = HC_STATE_RUNNING;
|
||||
xhci->cmd_ring_state = CMD_RING_STATE_RUNNING;
|
||||
|
||||
@@ -562,6 +615,10 @@ static int xhci_run_finished(struct xhci
|
||||
xhci_dbg_trace(xhci, trace_xhci_dbg_init,
|
||||
"Finished xhci_run for USB3 roothub");
|
||||
return 0;
|
||||
+
|
||||
+err_halt:
|
||||
+ xhci_halt(xhci);
|
||||
+ return err;
|
||||
}
|
||||
|
||||
/*
|
||||
--- a/drivers/usb/host/xhci.h
|
||||
+++ b/drivers/usb/host/xhci.h
|
||||
@@ -1840,6 +1840,7 @@ struct xhci_hcd {
|
||||
#define XHCI_INTEL_USB_ROLE_SW BIT_ULL(31)
|
||||
#define XHCI_RESET_PLL_ON_DISCONNECT BIT_ULL(34)
|
||||
#define XHCI_SNPS_BROKEN_SUSPEND BIT_ULL(35)
|
||||
+#define XHCI_FAKE_DOORBELL BIT_ULL(36)
|
||||
|
||||
unsigned int num_active_eps;
|
||||
unsigned int limit_active_eps;
|
@ -1,101 +0,0 @@
|
||||
From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= <rafal@milecki.pl>
|
||||
Date: Wed, 24 Sep 2014 22:14:07 +0200
|
||||
Subject: [PATCH] ARM: BCM5301X: Disable MMU and Dcache during decompression
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
Broadcom devices have broken CFE (bootloader) that leaves hardware in an
|
||||
invalid state. It causes problems with booting Linux. On Northstar
|
||||
devices kernel was randomly hanging in ~25% of tries during early init.
|
||||
Hangs used to happen at random places in the start_kernel. On BCM53573
|
||||
kernel doesn't even seem to start booting.
|
||||
|
||||
To workaround this problem we need to do following very early:
|
||||
1) Clear 2 following bits in the SCTLR register:
|
||||
#define CR_M (1 << 0) /* MMU enable */
|
||||
#define CR_C (1 << 2) /* Dcache enable */
|
||||
2) Flush the whole D-cache
|
||||
3) Disable L2 cache
|
||||
|
||||
Unfortunately this patch is not upstreamable as it does above things
|
||||
unconditionally. We can't check if we are running on Broadcom platform
|
||||
in any safe way and doing such hacks with ARCH_MULTI_V7 is unacceptable
|
||||
as it could break other devices support.
|
||||
|
||||
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
|
||||
---
|
||||
|
||||
--- a/arch/arm/boot/compressed/Makefile
|
||||
+++ b/arch/arm/boot/compressed/Makefile
|
||||
@@ -32,6 +32,11 @@ ifeq ($(CONFIG_ARCH_ACORN),y)
|
||||
OBJS += ll_char_wr.o font.o
|
||||
endif
|
||||
|
||||
+ifeq ($(CONFIG_ARCH_BCM_5301X),y)
|
||||
+OBJS += head-bcm_5301x-mpcore.o
|
||||
+OBJS += cache-v7-min.o
|
||||
+endif
|
||||
+
|
||||
ifeq ($(CONFIG_ARCH_SA1100),y)
|
||||
OBJS += head-sa1100.o
|
||||
endif
|
||||
--- /dev/null
|
||||
+++ b/arch/arm/boot/compressed/head-bcm_5301x-mpcore.S
|
||||
@@ -0,0 +1,37 @@
|
||||
+/*
|
||||
+ *
|
||||
+ * Platform specific tweaks. This is merged into head.S by the linker.
|
||||
+ *
|
||||
+ */
|
||||
+
|
||||
+#include <linux/linkage.h>
|
||||
+#include <asm/assembler.h>
|
||||
+#include <asm/cp15.h>
|
||||
+
|
||||
+ .section ".start", "ax"
|
||||
+
|
||||
+/*
|
||||
+ * This code section is spliced into the head code by the linker
|
||||
+ */
|
||||
+
|
||||
+__plat_uncompress_start:
|
||||
+
|
||||
+ @ Preserve r8/r7 i.e. kernel entry values
|
||||
+ mov r12, r8
|
||||
+
|
||||
+ @ Clear MMU enable and Dcache enable bits
|
||||
+ mrc p15, 0, r0, c1, c0, 0 @ Read SCTLR
|
||||
+ bic r0, #CR_C|CR_M
|
||||
+ mcr p15, 0, r0, c1, c0, 0 @ Write SCTLR
|
||||
+ nop
|
||||
+
|
||||
+ @ Call the cache invalidation routine
|
||||
+ bl v7_flush_dcache_all
|
||||
+ nop
|
||||
+ mov r0,#0
|
||||
+ ldr r3, =0x19022000 @ L2 cache controller, control reg
|
||||
+ str r0, [r3, #0x100] @ Disable L2 cache
|
||||
+ nop
|
||||
+
|
||||
+ @ Restore
|
||||
+ mov r8, r12
|
||||
--- a/arch/arm/boot/compressed/cache-v7-min.S
|
||||
+++ b/arch/arm/boot/compressed/cache-v7-min.S
|
||||
@@ -12,6 +12,7 @@
|
||||
|
||||
#include <linux/linkage.h>
|
||||
#include <linux/init.h>
|
||||
+#include <asm/assembler.h>
|
||||
|
||||
__INIT
|
||||
|
||||
@@ -63,7 +64,7 @@ loop2:
|
||||
ARM( orr r11, r11, r9, lsl r2 ) @ factor index number into r11
|
||||
THUMB( lsl r6, r9, r2 )
|
||||
THUMB( orr r11, r11, r6 ) @ factor index number into r11
|
||||
- mcr p15, 0, r11, c7, c14, 2 @ clean & invalidate by set/way
|
||||
+ mcr p15, 0, r11, c7, c6, 2 @ clean & invalidate by set/way
|
||||
subs r9, r9, #1 @ decrement the index
|
||||
bge loop2
|
||||
subs r4, r4, #1 @ decrement the way
|
@ -1,31 +0,0 @@
|
||||
From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= <rafal@milecki.pl>
|
||||
Subject: [PATCH] ARM: dts: BCM5301X: Update Northstar pinctrl binding
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
|
||||
---
|
||||
|
||||
--- a/arch/arm/boot/dts/bcm5301x.dtsi
|
||||
+++ b/arch/arm/boot/dts/bcm5301x.dtsi
|
||||
@@ -400,16 +400,12 @@
|
||||
#size-cells = <1>;
|
||||
|
||||
cru@100 {
|
||||
- compatible = "simple-bus";
|
||||
+ compatible = "syscon", "simple-mfd";
|
||||
reg = <0x100 0x1a4>;
|
||||
- ranges;
|
||||
- #address-cells = <1>;
|
||||
- #size-cells = <1>;
|
||||
|
||||
- pin-controller@1c0 {
|
||||
+ pinctrl {
|
||||
compatible = "brcm,bcm4708-pinmux";
|
||||
- reg = <0x1c0 0x24>;
|
||||
- reg-names = "cru_gpio_control";
|
||||
+ offset = <0xc0>;
|
||||
|
||||
spi-pins {
|
||||
groups = "spi_grp";
|
@ -1,64 +0,0 @@
|
||||
From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= <zajec5@gmail.com>
|
||||
Subject: [PATCH] ARM: BCM5301X: Add DT for Netgear R7900
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
|
||||
---
|
||||
|
||||
--- a/arch/arm/boot/dts/Makefile
|
||||
+++ b/arch/arm/boot/dts/Makefile
|
||||
@@ -98,6 +98,7 @@ dtb-$(CONFIG_ARCH_BCM_5301X) += \
|
||||
bcm4709-buffalo-wxr-1900dhp.dtb \
|
||||
bcm4709-linksys-ea9200.dtb \
|
||||
bcm4709-netgear-r7000.dtb \
|
||||
+ bcm4709-netgear-r7900.dtb \
|
||||
bcm4709-netgear-r8000.dtb \
|
||||
bcm4709-tplink-archer-c9-v1.dtb \
|
||||
bcm47094-dlink-dir-885l.dtb \
|
||||
--- /dev/null
|
||||
+++ b/arch/arm/boot/dts/bcm4709-netgear-r7900.dts
|
||||
@@ -0,0 +1,42 @@
|
||||
+/*
|
||||
+ * Broadcom BCM470X / BCM5301X ARM platform code.
|
||||
+ * DTS for Netgear R7900
|
||||
+ *
|
||||
+ * Copyright (C) 2016 Rafał Miłecki <zajec5@gmail.com>
|
||||
+ *
|
||||
+ * Licensed under the GNU/GPL. See COPYING for details.
|
||||
+ */
|
||||
+
|
||||
+/dts-v1/;
|
||||
+
|
||||
+#include "bcm4709.dtsi"
|
||||
+#include "bcm5301x-nand-cs0-bch8.dtsi"
|
||||
+
|
||||
+/ {
|
||||
+ compatible = "netgear,r7900", "brcm,bcm4709", "brcm,bcm4708";
|
||||
+ model = "Netgear R7900";
|
||||
+
|
||||
+ chosen {
|
||||
+ bootargs = "console=ttyS0,115200";
|
||||
+ };
|
||||
+
|
||||
+ memory {
|
||||
+ reg = <0x00000000 0x08000000
|
||||
+ 0x88000000 0x08000000>;
|
||||
+ };
|
||||
+
|
||||
+ axi@18000000 {
|
||||
+ usb3@23000 {
|
||||
+ reg = <0x00023000 0x1000>;
|
||||
+
|
||||
+ #address-cells = <1>;
|
||||
+ #size-cells = <1>;
|
||||
+
|
||||
+ vcc-gpio = <&chipcommon 0 GPIO_ACTIVE_HIGH>;
|
||||
+ };
|
||||
+ };
|
||||
+};
|
||||
+
|
||||
+&uart0 {
|
||||
+ status = "okay";
|
||||
+};
|
@ -1,20 +0,0 @@
|
||||
From: Felix Fietkau <nbd@nbd.name>
|
||||
Subject: [PATCH] ARM: BCM5301X: Add power button for Buffalo WZR-1750DHP
|
||||
|
||||
Signed-off-by: Felix Fietkau <nbd@nbd.name>
|
||||
---
|
||||
--- a/arch/arm/boot/dts/bcm4708-buffalo-wzr-1750dhp.dts
|
||||
+++ b/arch/arm/boot/dts/bcm4708-buffalo-wzr-1750dhp.dts
|
||||
@@ -101,6 +101,12 @@
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
+ power {
|
||||
+ label = "Power";
|
||||
+ linux,code = <KEY_POWER>;
|
||||
+ gpios = <&chipcommon 1 GPIO_ACTIVE_LOW>;
|
||||
+ };
|
||||
+
|
||||
restart {
|
||||
label = "Reset";
|
||||
linux,code = <KEY_RESTART>;
|
@ -1,116 +0,0 @@
|
||||
From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= <rafal@milecki.pl>
|
||||
Subject: [PATCH] ARM: dts: BCM5301X: Add serial= to the bootargs
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
It's enough to have proper stdout-path for getting serial working but
|
||||
for some reason LEDE doesn't offer "Please press Enter to activate this
|
||||
console." unless ttyS0 is specified.
|
||||
|
||||
This is a workaround to get serial working in LEDE.
|
||||
|
||||
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
|
||||
---
|
||||
|
||||
--- a/arch/arm/boot/dts/bcm47081-tplink-archer-c5-v2.dts
|
||||
+++ b/arch/arm/boot/dts/bcm47081-tplink-archer-c5-v2.dts
|
||||
@@ -12,7 +12,7 @@
|
||||
model = "TP-LINK Archer C5 V2";
|
||||
|
||||
chosen {
|
||||
- bootargs = "earlycon";
|
||||
+ bootargs = "console=ttyS0,115200 earlycon";
|
||||
};
|
||||
|
||||
memory {
|
||||
--- a/arch/arm/boot/dts/bcm47094-luxul-abr-4500.dts
|
||||
+++ b/arch/arm/boot/dts/bcm47094-luxul-abr-4500.dts
|
||||
@@ -13,7 +13,7 @@
|
||||
model = "Luxul ABR-4500 V1";
|
||||
|
||||
chosen {
|
||||
- bootargs = "earlycon";
|
||||
+ bootargs = "console=ttyS0,115200 earlycon";
|
||||
};
|
||||
|
||||
memory {
|
||||
--- a/arch/arm/boot/dts/bcm47094-luxul-xbr-4500.dts
|
||||
+++ b/arch/arm/boot/dts/bcm47094-luxul-xbr-4500.dts
|
||||
@@ -13,7 +13,7 @@
|
||||
model = "Luxul XBR-4500 V1";
|
||||
|
||||
chosen {
|
||||
- bootargs = "earlycon";
|
||||
+ bootargs = "console=ttyS0,115200 earlycon";
|
||||
};
|
||||
|
||||
memory {
|
||||
--- a/arch/arm/boot/dts/bcm47189-luxul-xap-1440.dts
|
||||
+++ b/arch/arm/boot/dts/bcm47189-luxul-xap-1440.dts
|
||||
@@ -12,7 +12,7 @@
|
||||
model = "Luxul XAP-1440 V1";
|
||||
|
||||
chosen {
|
||||
- bootargs = "earlycon";
|
||||
+ bootargs = "console=ttyS0,115200 earlycon";
|
||||
};
|
||||
|
||||
memory {
|
||||
--- a/arch/arm/boot/dts/bcm47189-luxul-xap-810.dts
|
||||
+++ b/arch/arm/boot/dts/bcm47189-luxul-xap-810.dts
|
||||
@@ -12,7 +12,7 @@
|
||||
model = "Luxul XAP-810 V1";
|
||||
|
||||
chosen {
|
||||
- bootargs = "earlycon";
|
||||
+ bootargs = "console=ttyS0,115200 earlycon";
|
||||
};
|
||||
|
||||
memory {
|
||||
--- a/arch/arm/boot/dts/bcm47094-luxul-xap-1610.dts
|
||||
+++ b/arch/arm/boot/dts/bcm47094-luxul-xap-1610.dts
|
||||
@@ -12,7 +12,7 @@
|
||||
model = "Luxul XAP-1610 V1";
|
||||
|
||||
chosen {
|
||||
- bootargs = "earlycon";
|
||||
+ bootargs = "console=ttyS0,115200 earlycon";
|
||||
};
|
||||
|
||||
memory {
|
||||
--- a/arch/arm/boot/dts/bcm47094-luxul-xwr-3150-v1.dts
|
||||
+++ b/arch/arm/boot/dts/bcm47094-luxul-xwr-3150-v1.dts
|
||||
@@ -13,7 +13,7 @@
|
||||
model = "Luxul XWR-3150 V1";
|
||||
|
||||
chosen {
|
||||
- bootargs = "earlycon";
|
||||
+ bootargs = "console=ttyS0,115200 earlycon";
|
||||
};
|
||||
|
||||
memory {
|
||||
--- a/arch/arm/boot/dts/bcm47094-phicomm-k3.dts
|
||||
+++ b/arch/arm/boot/dts/bcm47094-phicomm-k3.dts
|
||||
@@ -13,6 +13,10 @@
|
||||
compatible = "phicomm,k3", "brcm,bcm47094", "brcm,bcm4708";
|
||||
model = "Phicomm K3";
|
||||
|
||||
+ chosen {
|
||||
+ bootargs = "console=ttyS0,115200";
|
||||
+ };
|
||||
+
|
||||
memory {
|
||||
reg = <0x00000000 0x08000000
|
||||
0x88000000 0x18000000>;
|
||||
--- a/arch/arm/boot/dts/bcm47094-luxul-xwc-2000.dts
|
||||
+++ b/arch/arm/boot/dts/bcm47094-luxul-xwc-2000.dts
|
||||
@@ -13,7 +13,7 @@
|
||||
model = "Luxul XWC-2000 V1";
|
||||
|
||||
chosen {
|
||||
- bootargs = "earlycon";
|
||||
+ bootargs = "console=ttyS0,115200 earlycon";
|
||||
};
|
||||
|
||||
memory {
|
@ -1,25 +0,0 @@
|
||||
From 7166207bd1d8c46d09d640d46afc685df9bb9083 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= <rafal@milecki.pl>
|
||||
Date: Thu, 22 Nov 2018 09:21:49 +0100
|
||||
Subject: [PATCH] ARM: dts: BCM5301X: Describe partition formats
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
It's needed by OpenWrt for custom partitioning.
|
||||
|
||||
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
|
||||
---
|
||||
arch/arm/boot/dts/bcm47094-dlink-dir-885l.dts | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
--- a/arch/arm/boot/dts/bcm47094-dlink-dir-885l.dts
|
||||
+++ b/arch/arm/boot/dts/bcm47094-dlink-dir-885l.dts
|
||||
@@ -34,6 +34,7 @@
|
||||
partition@0 {
|
||||
label = "firmware";
|
||||
reg = <0x00000000 0x08000000>;
|
||||
+ compatible = "seama";
|
||||
};
|
||||
};
|
||||
};
|
@ -1,34 +0,0 @@
|
||||
From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= <zajec5@gmail.com>
|
||||
Subject: [PATCH] mtd: spi-nor: detect JEDEC incompatible w25q128 using 0x90
|
||||
command
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
Some w25q128 chipsets don't support RDID (0x9f) command, they reply with
|
||||
0xff-s only. To suppose such flashes fallback to the 0x90 command.
|
||||
|
||||
Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
|
||||
---
|
||||
|
||||
--- a/drivers/mtd/spi-nor/spi-nor.c
|
||||
+++ b/drivers/mtd/spi-nor/spi-nor.c
|
||||
@@ -1230,6 +1230,18 @@ static const struct flash_info *spi_nor_
|
||||
}
|
||||
dev_err(nor->dev, "unrecognized JEDEC id bytes: %02x, %02x, %02x\n",
|
||||
id[0], id[1], id[2]);
|
||||
+
|
||||
+ tmp = nor->read_reg(nor, 0x90, id, SPI_NOR_MAX_ID_LEN);
|
||||
+ if (tmp < 0) {
|
||||
+ dev_dbg(nor->dev, " error %d reading JEDEC ID\n", tmp);
|
||||
+ return ERR_PTR(tmp);
|
||||
+ }
|
||||
+ dev_info(nor->dev, "using Read Manufacturer / Device ID command (0x%02x) returned %02x %02x\n",
|
||||
+ 0x90, id[0x03], id[0x04]);
|
||||
+ if (id[0x03] == 0xef && id[0x04] == 0x17) {
|
||||
+ return spi_nor_match_id("w25q128");
|
||||
+ }
|
||||
+
|
||||
return ERR_PTR(-ENODEV);
|
||||
}
|
||||
|
@ -1,59 +0,0 @@
|
||||
From 2a2af518266a29323cf30c3f9ba9ef2ceb1dd84b Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= <zajec5@gmail.com>
|
||||
Date: Thu, 16 Oct 2014 20:52:16 +0200
|
||||
Subject: [PATCH] UBI: Detect EOF mark and erase all remaining blocks
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
|
||||
---
|
||||
drivers/mtd/ubi/attach.c | 5 +++++
|
||||
drivers/mtd/ubi/io.c | 4 ++++
|
||||
drivers/mtd/ubi/ubi.h | 1 +
|
||||
3 files changed, 10 insertions(+)
|
||||
|
||||
--- a/drivers/mtd/ubi/attach.c
|
||||
+++ b/drivers/mtd/ubi/attach.c
|
||||
@@ -95,6 +95,9 @@ static int self_check_ai(struct ubi_devi
|
||||
#define AV_ADD BIT(1)
|
||||
#define AV_FIND_OR_ADD (AV_FIND | AV_ADD)
|
||||
|
||||
+/* Set on finding block with 0xdeadc0de, indicates erasing all blocks behind */
|
||||
+bool erase_all_next;
|
||||
+
|
||||
/**
|
||||
* find_or_add_av - internal function to find a volume, add a volume or do
|
||||
* both (find and add if missing).
|
||||
@@ -1592,6 +1595,8 @@ int ubi_attach(struct ubi_device *ubi, i
|
||||
if (!ai)
|
||||
return -ENOMEM;
|
||||
|
||||
+ erase_all_next = false;
|
||||
+
|
||||
#ifdef CONFIG_MTD_UBI_FASTMAP
|
||||
/* On small flash devices we disable fastmap in any case. */
|
||||
if ((int)mtd_div_by_eb(ubi->mtd->size, ubi->mtd) <= UBI_FM_MAX_START) {
|
||||
--- a/drivers/mtd/ubi/io.c
|
||||
+++ b/drivers/mtd/ubi/io.c
|
||||
@@ -759,6 +759,10 @@ int ubi_io_read_ec_hdr(struct ubi_device
|
||||
}
|
||||
|
||||
magic = be32_to_cpu(ec_hdr->magic);
|
||||
+ if (magic == 0xdeadc0de)
|
||||
+ erase_all_next = true;
|
||||
+ if (erase_all_next)
|
||||
+ return read_err ? UBI_IO_FF_BITFLIPS : UBI_IO_FF;
|
||||
if (magic != UBI_EC_HDR_MAGIC) {
|
||||
if (mtd_is_eccerr(read_err))
|
||||
return UBI_IO_BAD_HDR_EBADMSG;
|
||||
--- a/drivers/mtd/ubi/ubi.h
|
||||
+++ b/drivers/mtd/ubi/ubi.h
|
||||
@@ -829,6 +829,7 @@ extern struct mutex ubi_devices_mutex;
|
||||
extern struct blocking_notifier_head ubi_notifiers;
|
||||
|
||||
/* attach.c */
|
||||
+extern bool erase_all_next;
|
||||
struct ubi_ainf_peb *ubi_alloc_aeb(struct ubi_attach_info *ai, int pnum,
|
||||
int ec);
|
||||
void ubi_free_aeb(struct ubi_attach_info *ai, struct ubi_ainf_peb *aeb);
|
@ -1,52 +0,0 @@
|
||||
From 4abdde3ad6bc0b3b157c4bf6ec0bf139d11d07e8 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= <zajec5@gmail.com>
|
||||
Date: Wed, 13 May 2015 14:13:28 +0200
|
||||
Subject: [PATCH] b53: add hacky CPU port fixes for devices not using port 5
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
Signed-off-by: Rafał Miłecki <zajec5@gmail.com>
|
||||
---
|
||||
drivers/net/phy/b53/b53_common.c | 6 ++++++
|
||||
1 file changed, 6 insertions(+)
|
||||
|
||||
--- a/drivers/net/phy/b53/b53_common.c
|
||||
+++ b/drivers/net/phy/b53/b53_common.c
|
||||
@@ -28,6 +28,7 @@
|
||||
#include <linux/of.h>
|
||||
#include <linux/of_net.h>
|
||||
#include <linux/platform_data/b53.h>
|
||||
+#include <linux/of.h>
|
||||
|
||||
#include "b53_regs.h"
|
||||
#include "b53_priv.h"
|
||||
@@ -1579,6 +1580,28 @@ static int b53_switch_init(struct b53_de
|
||||
return ret;
|
||||
}
|
||||
|
||||
+ /* Set correct CPU port */
|
||||
+ if (of_machine_is_compatible("asus,rt-ac87u"))
|
||||
+ sw_dev->cpu_port = 7;
|
||||
+ else if (of_machine_is_compatible("netgear,r7900"))
|
||||
+ sw_dev->cpu_port = 8;
|
||||
+ else if (of_machine_is_compatible("netgear,r8000"))
|
||||
+ sw_dev->cpu_port = 8;
|
||||
+ else if (of_machine_is_compatible("netgear,r8500"))
|
||||
+ sw_dev->cpu_port = 8;
|
||||
+
|
||||
+ /* Enable extra ports */
|
||||
+ if (of_machine_is_compatible("tenda,ac9"))
|
||||
+ dev->enabled_ports |= BIT(5);
|
||||
+
|
||||
+ /*
|
||||
+ * Workaround for devices using port 8 (connected to the 3rd iface).
|
||||
+ * For some reason it doesn't work (no packets on eth2).
|
||||
+ */
|
||||
+ if (of_machine_is_compatible("netgear,r7900") ||
|
||||
+ of_machine_is_compatible("netgear,r8000"))
|
||||
+ sw_dev->cpu_port = 5;
|
||||
+
|
||||
dev->enabled_ports |= BIT(sw_dev->cpu_port);
|
||||
sw_dev->ports = fls(dev->enabled_ports);
|
||||
|
@ -1,80 +0,0 @@
|
||||
From 6f1c62440eb6846cb8045d7a5480ec7bbe47c96f Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= <rafal@milecki.pl>
|
||||
Date: Mon, 15 Aug 2016 10:30:41 +0200
|
||||
Subject: [PATCH] BCM53573 minor hacks
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
|
||||
---
|
||||
|
||||
--- a/arch/arm/boot/dts/bcm53573.dtsi
|
||||
+++ b/arch/arm/boot/dts/bcm53573.dtsi
|
||||
@@ -53,6 +53,7 @@
|
||||
<GIC_PPI 14 IRQ_TYPE_LEVEL_LOW>,
|
||||
<GIC_PPI 11 IRQ_TYPE_LEVEL_LOW>,
|
||||
<GIC_PPI 10 IRQ_TYPE_LEVEL_LOW>;
|
||||
+ clocks = <&ilp>;
|
||||
};
|
||||
|
||||
clocks {
|
||||
--- a/drivers/bcma/main.c
|
||||
+++ b/drivers/bcma/main.c
|
||||
@@ -326,14 +326,6 @@ static int bcma_register_devices(struct
|
||||
}
|
||||
#endif
|
||||
|
||||
-#ifdef CONFIG_BCMA_SFLASH
|
||||
- if (bus->drv_cc.sflash.present) {
|
||||
- err = platform_device_register(&bcma_sflash_dev);
|
||||
- if (err)
|
||||
- bcma_err(bus, "Error registering serial flash\n");
|
||||
- }
|
||||
-#endif
|
||||
-
|
||||
#ifdef CONFIG_BCMA_NFLASH
|
||||
if (bus->drv_cc.nflash.present) {
|
||||
err = platform_device_register(&bcma_nflash_dev);
|
||||
@@ -411,6 +403,14 @@ int bcma_bus_register(struct bcma_bus *b
|
||||
bcma_register_core(bus, core);
|
||||
}
|
||||
|
||||
+#ifdef CONFIG_BCMA_SFLASH
|
||||
+ if (bus->drv_cc.sflash.present) {
|
||||
+ err = platform_device_register(&bcma_sflash_dev);
|
||||
+ if (err)
|
||||
+ bcma_err(bus, "Error registering serial flash\n");
|
||||
+ }
|
||||
+#endif
|
||||
+
|
||||
/* Try to get SPROM */
|
||||
err = bcma_sprom_get(bus);
|
||||
if (err == -ENOENT) {
|
||||
--- a/drivers/clocksource/arm_arch_timer.c
|
||||
+++ b/drivers/clocksource/arm_arch_timer.c
|
||||
@@ -17,6 +17,7 @@
|
||||
#include <linux/smp.h>
|
||||
#include <linux/cpu.h>
|
||||
#include <linux/cpu_pm.h>
|
||||
+#include <linux/clk.h>
|
||||
#include <linux/clockchips.h>
|
||||
#include <linux/clocksource.h>
|
||||
#include <linux/interrupt.h>
|
||||
@@ -836,6 +837,16 @@ static void arch_timer_of_configure_rate
|
||||
if (of_property_read_u32(np, "clock-frequency", &arch_timer_rate))
|
||||
arch_timer_rate = rate;
|
||||
|
||||
+ /* Get clk rate through clk driver if present */
|
||||
+ if (!arch_timer_rate) {
|
||||
+ struct clk *clk = of_clk_get(np, 0);
|
||||
+
|
||||
+ if (!IS_ERR(clk)) {
|
||||
+ if (!clk_prepare_enable(clk))
|
||||
+ arch_timer_rate = clk_get_rate(clk);
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
/* Check the timer frequency. */
|
||||
if (arch_timer_rate == 0)
|
||||
pr_warn("frequency not available\n");
|
Loading…
Reference in New Issue
Block a user