[PATCH 05/11] [POWERPC] TQM5200 DTS

Grant Likely grant.likely at secretlab.ca
Thu Oct 25 23:53:59 EST 2007


On 10/25/07, Martin Krause <Martin.Krause at tqs.de> wrote:
>
>
> < +             flash at 00000000 {
> < +                     compatible = "cfi-flash";
> < +                     reg = <00000000 02000000>;
> < +                     bank-width = <4>;
> < +                     device-width = <2>;
> < +                     #size-cells = <1>;
> < +                     #address-cells = <1>;
> < +                     partition at 0 {
> < +                             label = "firmware";
> < +                             reg = <0 a0000>;
> < +                     };
> < +                     partition at a0000 {
> < +                             label = "dtb";
> < +                             reg = <a0000 20000>;
> < +                     };
> < +                     partition at c0000 {
> < +                             label = "kernel";
> < +                             reg = <c0000 240000>;
> < +                     };
> < +                     partition at 300000 {
> < +                             label = "initrd";
> < +                             reg = <300000 200000>;
> < +                     };
> < +                     partition at 500000 {
> < +                             label = "small-fs";
> < +                             reg = <500000 400000>;
> < +                     };
> < +                     partition at 900000 {
> < +                             label = "misc";
> < +                             reg = <900000 800000>;
> < +                     };
> < +                     partition at 1100000 {
> < +                             label = "big-fs";
> < +                             reg = <1100000 f00000>;
> < +                     };
> < +             };
> < +     };
>
> This MTD layout only works on boards with 32 MiB (or 64 MiB) flash
> memory. On TQM5200 boards with smaller Flashes (16 MiB, 8 MiB and 4 MiB)
> the MTD partition borders do not match with the physikal memory borders.

If there is a variant board with a different configuration, then the
device tree needs to be changed for that variant board; either by
having multiple .dts files in arch/powerpc/boot/dts or by having the
bootloader populate the correct information.  A dtb as passed to the
kernel must exactly represent the hardware.

That also means that there is going to be a different flash map for
each possible flash size configuration.

> On a board with 16 MiB FLASH for example the "big-fs" _and_ the "misc"
> partition could not be used. "big-fs", because the memory is too small
> (which is OK) and "misc", because it overlaps 1 MiB over the physikal
> flash border. So only the first 9 MiB of the flash could be used in Linux.
> The remaining 7 MiB couldn't be accessed.

Perhaps it would be better to drop the flash layout from the in-kernel
dts files entirely since flash layout can be a fluid thing.

g.

>
> I would propose a Flash layout, where the (filesystem) partitions end
> on powers of two, to match the physical flash boarders:
>
>                         partition at 0 {
>                                 label = "firmware";
>                                 reg = <0 a0000>;
>                         };
>                         partition at a0000 {
>                                 label = "dtb";
>                                 reg = <a0000 20000>;
>                         };
>                         partition at c0000 {
>                                 label = "kernel";
>                                 reg = <c0000 180000>;
>                         };
>                         partition at 240000 {
>                                 label = "initrd";
>                                 reg = <240000 1c0000>;
>                         };
>                         partition at 400000 {
>                                 label = "small-fs";
>                                 reg = <400000 400000>;
>                         };
>                         partition at 800000 {
>                                 label = "misc";
>                                 reg = <800000 800000>;
>                         };
>                         partition at 1000000 {
>                                 label = "big-fs";
>                                 reg = <1000000 1000000>;
>                         };
>                 };
>         };
>
> Best Regards,
> Martin Krause
> --
> View this message in context: http://www.nabble.com/-PATCH-00-11---POWERPC--Add-TQM5200-CM5200-Motion-PRO-board-support-tf4680980.html#a13403420
> Sent from the linuxppc-dev mailing list archive at Nabble.com.
>
> _______________________________________________
> Linuxppc-dev mailing list
> Linuxppc-dev at ozlabs.org
> https://ozlabs.org/mailman/listinfo/linuxppc-dev
>


-- 
Grant Likely, B.Sc., P.Eng.
Secret Lab Technologies Ltd.
grant.likely at secretlab.ca
(403) 399-0195



More information about the Linuxppc-dev mailing list