[PATCH] ARM: dts: orion5x: add mtd flash support to linkstation lswtgl
Roger Shimizu
rogershimizu at gmail.com
Wed Jan 27 10:22:47 PST 2016
Dear Andrew,
On Thu, Jan 28, 2016 at 2:32 AM, Andrew Lunn <andrew at lunn.ch> wrote:
> On Thu, Jan 28, 2016 at 12:10:05AM +0900, Roger Shimizu wrote:
>> MTD flash stores u-boot and u-boot environment on linkstation lswtgl.
>> The latter one can be easily read/write by u-boot-tools package in Debian.
>>
>> Signed-off-by: Roger Shimizu <rogershimizu at gmail.com>
>> ---
>> arch/arm/boot/dts/orion5x-linkstation-lswtgl.dts | 30 ++++++++++++++++++++++++
>> 1 file changed, 30 insertions(+)
>>
>> diff --git a/arch/arm/boot/dts/orion5x-linkstation-lswtgl.dts b/arch/arm/boot/dts/orion5x-linkstation-lswtgl.dts
>> index 420788229e6f..16eabc524b27 100644
>> --- a/arch/arm/boot/dts/orion5x-linkstation-lswtgl.dts
>> +++ b/arch/arm/boot/dts/orion5x-linkstation-lswtgl.dts
>> @@ -228,6 +228,36 @@
>> };
>> };
>>
>> +&devbus_bootcs {
>> + status = "okay";
>> + devbus,keep-config;
>> +
>> + flash at 0 {
>> + compatible = "jedec-flash";
>> + reg = <0 0x40000>;
>> + bank-width = <1>;
>> + #address-cells = <1>;
>> + #size-cells = <1>;
>> +
>
> Hi Roger
>
> Same comment i just sent to Thomas:
>
> The partition table should be a subnode of the mtd node and should be named
> 'partitions'. This node should have the following property:
> - compatible : (required) must be "fixed-partitions"
> Partitions are then defined in subnodes of the partitions node.
>
> For backwards compatibility partitions as direct subnodes of the mtd device are
> supported. This use is discouraged.
>
> Andrew
>
>
>> + partition at 0 {
>> + label = "header";
>> + reg = <0 0x30000>;
>> + read-only;
>> + };
>> +
>> + partition at 30000 {
>> + label = "uboot";
>> + reg = <0x30000 0xF000>;
>> + read-only;
>> + };
>> +
>> + partition at 3F000 {
>> + label = "uboot_env";
>> + reg = <0x3F000 0x1000>;
>> + };
>> + };
>> +};
>> +
>> &mdio {
>> status = "okay";
>>
>> --
>> 2.1.4
>>
Thanks for your comments!
Using the patch I submitted result in:
[ 1.667440] Found: SST 39LF020
[ 1.670613] f4000000.flash: Found 1 x8 devices at 0x0 in 8-bit bank
[ 1.676948] number of JEDEC chips: 1
[ 1.698943] 3 ofpart partitions found on MTD device f4000000.flash
[ 1.705222] Creating 3 MTD partitions on "f4000000.flash":
[ 1.710803] 0x000000000000-0x000000030000 : "header"
[ 1.719051] 0x000000030000-0x00000003f000 : "uboot"
[ 1.727182] 0x00000003f000-0x000000040000 : "uboot_env"
Applying the partition DT proposed in
Documentation/devicetree/bindings/mtd/partition.txt, result in:
[ 1.667879] Found: SST 39LF020
[ 1.671053] f4000000.flash: Found 1 x8 devices at 0x0 in 8-bit bank
[ 1.677389] number of JEDEC chips: 1
So the partitions are gone.
My modified DT is like:
&devbus_bootcs {
status = "okay";
devbus,keep-config;
flash at 0 {
compatible = "jedec-flash";
reg = <0 0x40000>;
bank-width = <1>;
#address-cells = <1>;
#size-cells = <1>;
partitions {
compatible = "fixed-partitions";
#address-cells = <1>;
#size-cells = <1>;
partition at 0 {
label = "header";
reg = <0 0x30000>;
read-only;
};
partition at 30000 {
label = "uboot";
reg = <0x30000 0xF000>;
read-only;
};
partition at 3F000 {
label = "uboot_env";
reg = <0x3F000 0x1000>;
};
};
};
};
Any comment would be appreciated!
Cheers,
--
Roger Shimizu, GMT +9 Tokyo
PGP/GPG: 17B3ACB1
More information about the linux-arm-kernel
mailing list