Hello,
I'm working on a dts for the Devolo Repeater ac MT: 2767, 2779.
Although things seem to work quite well, at boot time i'm getting some unpleasant messages that i'm having trouble solving, mainly:
[ 1.196131] spi spi0.0: force spi mode3
[ 1.204500] spi-nor spi0.0: mx25l6405d (8192 Kbytes)
[ 1.214582] 4 fixed-partitions partitions found on MTD device spi0.0
[ 1.227326] OF: Bad cell count for /palmbus@10000000/spi@b00/flash@0/partitions
[ 1.241946] OF: Bad cell count for /palmbus@10000000/spi@b00/flash@0/partitions
[ 1.256828] Creating 4 MTD partitions on "spi0.0":
[ 1.266420] 0x000000000000-0x000000030000 : "u-boot"
[ 1.280550] 0x000000030000-0x000000040000 : "u-boot-env"
[ 1.293913] 0x000000040000-0x000000050000 : "factory"
[ 1.306825] OF: Bad cell count for /palmbus@10000000/spi@b00/flash@0/partitions
[ 1.321923] 0x000000050000-0x000000800000 : "firmware"
[ 1.335547] 2 uimage-fw partitions found on MTD device firmware
[ 1.347445] Creating 2 MTD partitions on "firmware":
[ 1.357345] 0x000000000000-0x00000027dc3b : "kernel"
[ 1.367247] mtd: partition "kernel" doesn't end on an erase/write block -- force read-only
[ 1.386411] 0x00000027dc3b-0x0000007b0000 : "rootfs"
[ 1.396406] mtd: partition "rootfs" doesn't start on an erase/write block boundary -- force read-only
[ 1.417279] mtd: setting mtd5 (rootfs) as root device
[ 1.427598] 1 squashfs-split partitions found on MTD device rootfs
[ 1.439955] 0x000000670000-0x0000007b0000 : "rootfs_data"
[ 1.485445] gsw: ephy base address: 8
[ 1.494159] gsw: setting port4 to ephy mode
Now, from what i understand, and according to my dts, kernel and rootfs should be mapped within firmware boundaries (0x50000-0x800000), i.e. 0x000000000000-0x00000027dc3b for "kernel" and 0x00000027dc3b-0x0000007b0000 for "rootfs" not absolute addresses but relative to "firmware", correct?
So, i don't understand why i'm getting those start/end ... erase/write block messages.
Also, a bit lower i'm getting
[ 22.753355] jitterentropy: Initialization failed with host not compliant with requirements: 9
Is this purely informational or something to worry about?
My dts file is as follows:
#include "mt7620a.dtsi"
#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/input/input.h>
/ {
compatible = "devolo,rac", "ralink,mt7620a-soc";
model = "devolo WiFi Repeater ac";
aliases {
led-boot = &led_power;
led-failsafe = &led_power;
led-running = &led_power;
led-upgrade = &led_power;
};
keys {
compatible = "gpio-keys";
reset_wps {
label = "reset_wps";
gpios = <&gpio2 20 GPIO_ACTIVE_LOW>;
linux,code = <KEY_RESTART>;
};
switch_high {
label = "switch high";
gpios = <&gpio2 22 GPIO_ACTIVE_LOW>;
linux,code = <BTN_0>;
linux,input-type = <EV_SW>;
};
switch_off {
label = "switch off";
gpios = <&gpio2 23 GPIO_ACTIVE_LOW>;
linux,code = <BTN_1>;
linux,input-type = <EV_SW>;
};
};
leds {
compatible = "gpio-leds";
led_power: power {
label = "led_power";
gpios = <&gpio2 28 GPIO_ACTIVE_LOW>;
};
led2 {
label = "LED 2";
gpios = <&gpio2 27 GPIO_ACTIVE_LOW>;
linux,default-trigger = "phy0radio";
};
led3 {
label = "LED 3";
gpios = <&gpio2 29 GPIO_ACTIVE_LOW>;
linux,default-trigger = "phy0radio";
};
led4 {
label = "LED 4";
gpios = <&gpio2 30 GPIO_ACTIVE_LOW>;
linux,default-trigger = "phy1radio";
};
led5 {
label = "LED 5";
gpios = <&gpio2 31 GPIO_ACTIVE_LOW>;
linux,default-trigger = "phy1radio";
};
};
};
&gpio1 {
status = "okay";
};
&gpio2 {
status = "okay";
};
&spi0 {
status = "okay";
flash@0 {
compatible = "mx25l6405d","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;
};
partition@40000 {
label = "factory";
reg = <0x40000 0x10000>;
read-only;
nvmem-layout {
compatible = "fixed-layout";
#address-cells = <1>;
#size-cells = <1>;
eeprom_factory_0: eeprom@0 {
reg = <0x0 0x200>;
};
eeprom_factory_8000: eeprom@8000 {
reg = <0x8000 0x200>;
};
macaddr_factory_4: macaddr@4 {
compatible = "mac-base";
reg = <0x4 0x6>;
#nvmem-cell-cells = <1>;
};
};
};
partition@50000 {
compatible = "denx,uimage";
label = "firmware";
reg = <0x50000 0x7b0000>;
};
};
};
};
&state_default {
gpio {
groups = "i2c", "uartf", "nd_sd", "rgmii2";
function = "gpio";
};
};
&pinctrl {
phy_reset_pins: phy-reset {
gpio {
groups = "spi refclk";
function = "gpio";
};
};
};
ðernet {
pinctrl-names = "default";
pinctrl-0 = <&rgmii1_pins &mdio_pins &phy_reset_pins>;
nvmem-cells = <&macaddr_factory_4 0>;
nvmem-cell-names = "mac-address";
phy-reset-gpios = <&gpio1 15 GPIO_ACTIVE_LOW>;
phy-reset-duration = <30>;
port@5 {
status = "okay";
mediatek,fixed-link = <1000 1 1 1>;
phy-mode = "rgmii";
};
mdio-bus {
status = "okay";
phy0: ethernet-phy@0 {
status = "disabled";
reg = <0>;
phy-mode = "rgmii";
};
phy1: ethernet-phy@1 {
status = "disabled";
reg = <1>;
phy-mode = "rgmii";
};
phy2: ethernet-phy@2 {
status = "disabled";
reg = <2>;
phy-mode = "rgmii";
};
phy3: ethernet-phy@3 {
status = "disabled";
reg = <3>;
phy-mode = "rgmii";
};
phy4: ethernet-phy@4 {
status = "disabled";
reg = <4>;
phy-mode = "rgmii";
};
};
};
&gsw {
mediatek,ephy-base = /bits/ 8 <8>;
};
&wmac {
nvmem-cells = <&eeprom_factory_0>, <&macaddr_factory_4 0>;
nvmem-cell-names = "eeprom", "mac-address";
};
&pcie {
status = "okay";
};
&pcie0 {
wifi@0,0 {
reg = <0x0000 0 0 0 0>;
mediatek,mtd-eeprom = <&eeprom_factory_8000>;
ieee80211-freq-limit = <5000000 6000000>;
nvmem-cells = <&eeprom_factory_8000>, <&macaddr_factory_4 2>;
nvmem-cell-names = "eeprom", "mac-address";
};
};
Thanks in advance for your kind input.