From 9e0fb5a27ff53214734a0d8776161342cf7359e8 Mon Sep 17 00:00:00 2001 From: Eike Feldmann Date: Tue, 26 Feb 2019 23:04:53 +0100 Subject: [PATCH] ramips: add support for Rakwireless RAK633 MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit It's OEM module with 2*26 pin header, similar to LinkIt Smart 7688 or Vocore2. Specification: CPU: MT7628 580 MHz. MIPS 24K RAM: 64 MB Flash: 8 MB WIFI: 802.11n/g/b 20/40 MHz USB: 1x Port USB 2.0 Ethernet: 5 Port ethernet switch UART: 2x Installation: Use the installed uboot Bootloader. Connect a serial cable to serialport 0. Turn power on. Choose the option: "Load system code then write to Flash via TFTP". Choose the local device IP and the TFTP server IP and the file name of the system image. After if the Bootloader will copy the image to the local flash. Notes: The I2C Kernel module work not correctly. You can send and receive data. But the command i2cdetect doesn’t work. FS#845 Signed-off-by: Eike Feldmann [commit subject and message touches, DTS whitespace fixes, wifi LED rename, pinctrl fixes, network settings fixes, lan/wmac mac addresses, removed i2c kernel modules] Signed-off-by: Petr Å tetiar --- .../ramips/base-files/etc/board.d/01_leds | 3 + .../ramips/base-files/etc/board.d/02_network | 1 + target/linux/ramips/dts/RAK633.dts | 104 ++++++++++++++++++ target/linux/ramips/image/mt76x8.mk | 7 ++ 4 files changed, 115 insertions(+) create mode 100644 target/linux/ramips/dts/RAK633.dts diff --git a/target/linux/ramips/base-files/etc/board.d/01_leds b/target/linux/ramips/base-files/etc/board.d/01_leds index e05260f35a..fa20ab0714 100755 --- a/target/linux/ramips/base-files/etc/board.d/01_leds +++ b/target/linux/ramips/base-files/etc/board.d/01_leds @@ -283,6 +283,9 @@ netgear,r6350) ucidef_set_led_netdev "wan" "wan" "$boardname:green:wan" eth0.2 set_wifi_led "$boardname:green:wifi" ;; +rakwireless,rak633) + set_wifi_led "$boardname:blue:wifi" + ;; re350-v1) ucidef_set_led_netdev "wifi2g" "Wifi 2.4G" "$boardname:blue:wifi2G" "wlan0" ucidef_set_led_netdev "wifi5g" "Wifi 5G" "$boardname:blue:wifi5G" "wlan1" diff --git a/target/linux/ramips/base-files/etc/board.d/02_network b/target/linux/ramips/base-files/etc/board.d/02_network index 89cdf57b3e..c2646876a2 100755 --- a/target/linux/ramips/base-files/etc/board.d/02_network +++ b/target/linux/ramips/base-files/etc/board.d/02_network @@ -193,6 +193,7 @@ ramips_setup_interfaces() ;; ar670w|\ ar725w|\ + rakwireless,rak633|\ rt-ac51u) ucidef_add_switch "switch0" \ "0:wan" "1:lan" "2:lan" "3:lan" "4:lan" "6t@eth0" diff --git a/target/linux/ramips/dts/RAK633.dts b/target/linux/ramips/dts/RAK633.dts new file mode 100644 index 0000000000..ac7218510f --- /dev/null +++ b/target/linux/ramips/dts/RAK633.dts @@ -0,0 +1,104 @@ +// SPDX-License-Identifier: GPL-2.0-or-later OR MIT +/dts-v1/; + +#include "mt7628an.dtsi" + +#include +#include + +/ { + compatible = "rakwireless,rak633", "mediatek,mt7628an-soc"; + model = "Rakwireless RAK633"; + + memory@0 { + device_type = "memory"; + reg = <0x0 0x4000000>; + }; + + leds { + compatible = "gpio-leds"; + + wifi { + label = "rak633:blue:wifi"; + gpios = <&gpio1 12 GPIO_ACTIVE_LOW>; + }; + }; +}; + +&pinctrl { + state_default: pinctrl0 { + wled_an { + ralink,group = "wled_an"; + ralink,function = "gpio"; + }; + }; +}; + +&spi0 { + status = "okay"; + + flash@0 { + compatible = "jedec,spi-nor"; + reg = <0>; + spi-max-frequency = <10000000>; + + partitions { + compatible = "fixed-partitions"; + #address-cells = <1>; + #size-cells = <1>; + + partition@0 { + label = "u-boot"; + reg = <0x0 0x30000>; + read-only; + }; + + partition@30000 { + label = "u-boot-env"; + reg = <0x30000 0x10000>; + read-only; + }; + + factory: partition@40000 { + label = "factory"; + reg = <0x40000 0x10000>; + read-only; + }; + + partition@50000 { + compatible = "denx,uimage"; + label = "firmware"; + reg = <0x50000 0x7b0000>; + }; + }; + }; +}; + +&i2c { + status = "okay"; +}; + +&i2s { + status = "okay"; +}; + +&uart1 { + status = "okay"; +}; + +&uart2 { + status = "okay"; +}; + +&gdma { + status = "okay"; +}; + +ðernet { + mtd-mac-address = <&factory 0x28>; +}; + +&wmac { + status = "okay"; + ralink,mtd-eeprom = <&factory 0x4>; +}; diff --git a/target/linux/ramips/image/mt76x8.mk b/target/linux/ramips/image/mt76x8.mk index 02b03e5007..571ddf3d51 100644 --- a/target/linux/ramips/image/mt76x8.mk +++ b/target/linux/ramips/image/mt76x8.mk @@ -164,6 +164,13 @@ define Device/pbr-d1 endef TARGET_DEVICES += pbr-d1 +define Device/rakwireless_rak633 + DTS := RAK633 + DEVICE_TITLE := Rakwireless RAK633 + DEVICE_PACKAGES := kmod-usb2 kmod-usb-ohci +endef +TARGET_DEVICES += rakwireless_rak633 + define Device/skylab_skw92a DTS := SKW92A IMAGE_SIZE := 16064k -- 2.30.2