linux.bootargs: export mtdparts from DTS

Yegor Yefremov yegorslists at googlemail.com
Thu Feb 22 23:52:35 PST 2018


On Fri, Feb 23, 2018 at 8:39 AM, Yegor Yefremov
<yegorslists at googlemail.com> wrote:
> On Fri, Feb 23, 2018 at 8:33 AM, Sascha Hauer <s.hauer at pengutronix.de> wrote:
>> Hi Yegor,
>>
>> On Fri, Feb 23, 2018 at 08:26:56AM +0100, Yegor Yefremov wrote:
>>> My board will be configured via DTS file, that contains an MTD
>>> partition table [1]. How can it be automatically exported to
>>> global.inux.bootargs.mtdparts?
>>>
>>> [1] https://git.pengutronix.de/cgit/barebox/tree/arch/arm/dts/am335x-baltos-minimal.dts#n217
>>
>> Why would you want to do that? You are not going to start an ancient
>> kernel with ATAG support, are you?
>
> So far I'm using ancient LTS 3.18.x kernel with this DTS [1] and
> packaging it via FIT.
>
> [1] https://github.com/visionsystemsgmbh/onrisc_br_bsp/blob/master/board/vscom/dts/3.15/onrisc-baltos-ir-5221.dts

I've installed dtc and dumped my loaded DTB in Linux:

                     nand at 0,0 {
                                reg = <0x0 0x0 0x4>;
                                gpmc,we-off-ns = <0x28>;
                                gpmc,oe-on-ns = <0x0>;
                                gpmc,device-nand = "true";
                                gpmc,cycle2cycle-delay-ns = <0x0>;
                                gpmc,wr-access-ns = <0x28>;
                                gpmc,wr-data-mux-bus-ns = <0x0>;
                                gpmc,adv-rd-off-ns = <0x22>;
                                gpmc,oe-off-ns = <0x36>;
                                gpmc,clk-activation-ns = <0x0>;
                                gpmc,wait-on-write = "true";
                                elm_id = <0x42>;
                                ti,nand-ecc-opt = "bch8";
                                gpmc,adv-on-ns = <0x6>;
                                gpmc,adv-wr-off-ns = <0x2c>;
                                ti,nand-xfer-type = "prefetch-polled";
                                gpmc,wait-monitoring-ns = <0x0>;
                                nand-bus-width = <0x8>;
                                gpmc,device-width = <0x1>;
                                gpmc,cs-rd-off-ns = <0x2c>;
                                gpmc,rd-cycle-ns = <0x52>;
                                #address-cells = <0x1>;
                                gpmc,bus-turnaround-ns = <0x0>;
                                gpmc,cs-on-ns = <0x0>;
                                gpmc,we-on-ns = <0x0>;
                                #size-cells = <0x1>;
                                gpmc,wait-on-read = "true";
                                gpmc,wr-cycle-ns = <0x52>;
                                gpmc,access-ns = <0x40>;
                                gpmc,sync-clk-ps = <0x0>;
                                gpmc,cs-wr-off-ns = <0x2c>;

                                partitions {
                                        compatible = "fixed-partitions";
                                        #addres-cells = <0x1>;
                                        #size-cells = <0x1>;

                                        partition at 260000 {
                                                reg = <0x260000 0xfda0000>;
                                                label = "UBI";
                                        };

                                        partition at 0 {
                                                reg = <0x0 0x20000>;
                                                label = "SPL";
                                        };

                                        partition at 20000 {
                                                reg = <0x20000 0x20000>;
                                                label = "SPL.backup1";
                                        };

                                        partition at 40000 {
                                                reg = <0x40000 0x20000>;
                                                label = "SPL.backup2";
                                        };

                                        partition at 60000 {
                                                reg = <0x60000 0x20000>;
                                                label = "SPL.backup3";
                                        };

                                        partition at 80000 {
                                                reg = <0x80000 0x1e0000>;
                                                label = "u-boot";
                                        };
                                };
                        };

Somehow UBI partition is now the first partition and thus other
partitions were not parsed. Cat /proc/mtd says nothing and I have only
/dev/mtd0.

Yegor



More information about the barebox mailing list