openwrtv4/target/linux/ramips/dts/RBM11G.dts
Thibaut VARÈNE bbe2cf657c ramips: fix RBM11G partitioning
This patch improves faf64056dd by correcting
the partition scheme for the "RouterBoot" section of the flash.

The partition scheme initially submitted is incorrect and does not reflect
the actual flash structure.

The "RouterBoot" section (name matching OEM) is subdivided in several
static segments, as they are on ar71xx RB devices albeit with different
offsets and sizes.
The naming convention from ar71xx has been preserved, except for the
bootloaders which are named "bootloader1" and "bootloader2" to avoid
confusion with the master "RouterBoot" partition.
The preferred 'fixed-partitions' DTS node syntax is used, with nesting
support as introduced in 2a598bbaa3.
"partition" is used for node names, with associated "label" to match
policy set by 6dd94c2781.

Leave a note in DTS to explain how the original author selected the SPI speed.

Tested-by: Tobias Schramm <tobleminer@gmail.com>
Signed-off-by: Thibaut VARÈNE <hacks@slashdirt.org>
Reviewed-by: Rafał Miłecki <rafal@milecki.pl>
2018-08-24 11:53:51 +02:00

164 lines
2.7 KiB
Text

/dts-v1/;
#include "mt7621.dtsi"
#include <dt-bindings/input/input.h>
#include <dt-bindings/gpio/gpio.h>
/ {
compatible = "mikrotik,rbm11g", "mediatek,mt7621-soc";
model = "MikroTik RouterBOARD M11G";
aliases {
led-status = &led_usr;
};
memory@0 {
device_type = "memory";
reg = <0x0 0x10000000>;
};
chosen {
bootargs = "console=ttyS0,115200";
};
gpio-leds {
compatible = "gpio-leds";
led_usr: usr {
label = "rbm11g:green:usr";
gpios = <&gpio0 0 GPIO_ACTIVE_HIGH>;
};
rssi0 {
label = "rbm11g:green:rssi0";
gpios = <&gpio0 22 GPIO_ACTIVE_LOW>;
};
rssi1 {
label = "rbm11g:green:rssi1";
gpios = <&gpio0 23 GPIO_ACTIVE_LOW>;
};
rssi2 {
label = "rbm11g:green:rssi2";
gpios = <&gpio0 24 GPIO_ACTIVE_LOW>;
};
rssi3 {
label = "rbm11g:green:rssi3";
gpios = <&gpio0 25 GPIO_ACTIVE_LOW>;
};
rssi4 {
label = "rbm11g:green:rssi4";
gpios = <&gpio0 26 GPIO_ACTIVE_LOW>;
};
};
gpio-keys-polled {
compatible = "gpio-keys-polled";
poll-interval = <20>;
res {
label = "reset";
gpios = <&gpio0 18 GPIO_ACTIVE_LOW>;
linux,code = <KEY_RESTART>;
};
};
pcie0_vcc_reg {
compatible = "regulator-fixed";
regulator-name = "pcie0_vcc";
regulator-min-microvolt = <3300000>;
regulator-max-microvolt = <3300000>;
gpio = <&gpio0 9 GPIO_ACTIVE_HIGH>;
enable-active-high;
regulator-boot-on;
regulator-always-on;
};
};
&spi0 {
status = "okay";
w25q128@0 {
compatible = "jedec,spi-nor";
reg = <0>;
// XXX empiric value to obtain actual 10MHz SCK at the chip
spi-max-frequency = <3125000>;
partitions {
compatible = "fixed-partitions";
#address-cells = <1>;
#size-cells = <1>;
partition@0 {
label = "RouterBoot";
reg = <0x0 0x40000>;
read-only;
compatible = "fixed-partitions";
#address-cells = <1>;
#size-cells = <1>;
partition@0 {
label = "bootloader1";
reg = <0x0 0xf000>;
read-only;
};
hard_config: partition@f000 {
label = "hard_config";
reg = <0xf000 0x1000>;
read-only;
};
partition@10000 {
label = "bootloader2";
reg = <0x10000 0xf000>;
read-only;
};
partition@20000 {
label = "soft_config";
reg = <0x20000 0x1000>;
};
partition@30000 {
label = "bios";
reg = <0x30000 0x1000>;
read-only;
};
};
partition@40000 {
label = "firmware";
reg = <0x040000 0xFC0000>;
};
};
};
};
&ethernet {
mtd-mac-address = <&hard_config 0x0010>;
mtd-mac-address-increment = <1>;
};
&pinctrl {
state_default: pinctrl0 {
gpio {
ralink,group = "uart2", "wdt", "rgmii2";
ralink,function = "gpio";
};
};
};
&i2c {
status = "okay";
};
&pcie {
status = "okay";
};