From 8ab0ea8e9275c03f253f84dc83ee86cdbeb1fcf4 Mon Sep 17 00:00:00 2001 From: Hao Dong Date: Sat, 19 Jan 2019 17:25:29 +0000 Subject: [PATCH] ARM: dts: BCM5301X: Add basic DT for Phicomm K3 This router has BCM4709C0, 128MB NAND flash (MX30LF1G18AC-TI), and 512MB memory, with 3 x LAN and 1 x WAN. WL 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. Everything except the LCD works. Hamster has activated LCD through UART1, but further programming, i.e., a independent package, is required to make sure its working properly. Since the firmware of Broadcom 4366c0 has been provided by openwrt.org, now its wireless is functional but limited. The "official" firmware cannot work properly in some 5G Hz channel. Signed-off-by: Hao Dong --- arch/arm/boot/dts/Makefile | 1 + arch/arm/boot/dts/bcm47094-phicomm-k3.dts | 75 +++++++++++++++++++++++ 2 files changed, 76 insertions(+) create mode 100644 arch/arm/boot/dts/bcm47094-phicomm-k3.dts --- a/arch/arm/boot/dts/Makefile +++ b/arch/arm/boot/dts/Makefile @@ -115,6 +115,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,75 @@ +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT +/* +* Copyright (C) 2017 Hamster Tian +* Copyright (C) 2019 Hao Dong +*/ + +/dts-v1/; + +#include "bcm47094.dtsi" +#include "bcm5301x-nand-cs0-bch4.dtsi" + +/ { + compatible = "phicomm,k3", "brcm,bcm47094", "brcm,bcm4708"; + model = "Phicomm K3"; + + chosen { + bootargs = "console=ttyS0,115200"; + }; + + memory { + reg = <0x00000000 0x08000000 + 0x88000000 0x18000000>; + }; + + gpio-keys { + compatible = "gpio-keys"; + #address-cells = <1>; + #size-cells = <0>; + + restart { + label = "Reset"; + linux,code = ; + 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"; + }; + }; +};