On Thu, Mar 11, 2010 at 07:11:56AM +0100, Németh Márton wrote:
[snip]
> +/dts-v1/;
> +
> +/ {
> +     model = "MPC5554";
> +     compatible = "fsl,MPC5554EVB";          // Freescale MPC5554 Evaluation 
> Board
> +     #address-cells = <1>;
> +     #size-cells = <1>;
> +
> +     cpus {
> +             #address-cells = <1>;
> +             #size-cells = <0>;
> +
> +             PowerPC,5...@0 {

Modern best practice is to have the cpu nodes named just "c...@xxx",
and put the PowerPC,NNNN into the compatible property.

> +                     device_type = "cpu";
> +                     reg = <0>;
> +                     d-cache-line-size = <32>;
> +                     i-cache-line-size = <32>;
> +                     d-cache-size = <0x8000>;        // L1, 32KiB
> +                     i-cache-size = <0x8000>;        // L1, 32KiB
> +                     timebase-frequency = <0>;       // from bootloader
> +                     bus-frequency = <0>;            // from bootloader
> +                     clock-frequency = <0>;          // from bootloader
> +             };
> +     };
> +
> +     mem...@40000000 {
> +             device_type = "memory";
> +             reg = <0x40000000 0x10000>;     // 32KiB internal SRAM
> +     };
> +
> +     x...@1ff04000 {         // System Bus Crossbar Switch (XBAR)
> +             compatible = "fsl,mpc5554-xbar";
> +             #address-cells = <1>;
> +             #size-cells = <1>;
> +             // The full memory range is covered by XBAR
> +//           ranges = <0 0x00000000 0x100000000>;

If you want all addresses to be translated by the bus you need an
empty ranges property, not *no* ranges property.  No ranges property
indicates that addresses cannot be directly translated across the
bridge, which is not, I think, what you intend.

> +             reg = <0xfff04000 0x4000>;

The unit address '@1ff04000' does not match your reg property 0xfff04000.

> +
> +             fl...@00000000 {        // read-only FLASH

Unit addresses are not 0 padded, so this should be just 'fl...@0'.

> +                     compatible = "fsl,mpc5554-flash";
> +                     reg = <0x00000000 0x200000>;    // 2MiB internal FLASH
> +             };
> +
> +             bri...@c0000000 {
> +                     compatible = "fsl,mpc5554-pbridge-a";
> +                     #address-cells = <1>;
> +                     #size-cells = <1>;
> +                     ranges = <0 0xc0000000 0x20000000>;
> +                     reg = <0xc3f00000 0x4000>;

The unit address is based on 'reg' (if present) not ranges, so it
should be bri...@c3f00000.  Likewise for the other bridge below.

-- 
David Gibson                    | I'll have my music baroque, and my code
david AT gibson.dropbear.id.au  | minimalist, thank you.  NOT _the_ _other_
                                | _way_ _around_!
http://www.ozlabs.org/~dgibson
_______________________________________________
Linuxppc-dev mailing list
Linuxppc-dev@lists.ozlabs.org
https://lists.ozlabs.org/listinfo/linuxppc-dev

Reply via email to