mpc52xx localplus bus and dm9000

2 messages, 2 authors, 2008-08-15 · open the first message on its own page

mpc52xx localplus bus and dm9000

From: Sinisa Denic <hidden>
Date: 2008-08-14 09:55:51

Hi,I have mpc52xx based board very similar to lite5200b.
There is Davicom DM9000 connected to Local Plus Bus CS0.
Does anybody have idea how should DTS part look like in order to add this 
resource in system.
I've written something like this:

lpb {
                        device_type = "network";
                        compatible = "fsl,lpb";
                        ranges = <0 0 ff000000 1000000>;

                        dm9000@0,0 {
                                compatible = "dm9000";
                                reg = <0 0 100000>;
                                #size-cells = <1>;
                                #address-cells = <1>;
                        };
                };

but it's not working.
Is it enough to have right dts record for default dm9000 driver working
or I have to change something more?
Thank you in andvance.

Sinisa Denic
System and software  engineer
tel: +381(0)112016142
ABS Control Systems
bul.Zorana Djindjica 8a
Belgrade,Serbia

Re: mpc52xx localplus bus and dm9000

From: Grant Likely <hidden>
Date: 2008-08-15 16:30:23

On Thu, Aug 14, 2008 at 3:52 AM, Sinisa Denic [off-list ref] wrote:
Hi,I have mpc52xx based board very similar to lite5200b.
There is Davicom DM9000 connected to Local Plus Bus CS0.
Does anybody have idea how should DTS part look like in order to add this
resource in system.
I've written something like this:

lpb {
                       device_type = "network";
device_type doesn't make any sense here.  Drop this line.
                       compatible = "fsl,lpb";
                       ranges = <0 0 ff000000 1000000>;
You need to add #address-cells = <2> and #size-cells = <1> properties
to this node.  Otherwise the address translation doesn't work.  The
local plus bus uses 2 cells to describe address.  First cell is the
chip select and second cell is the address offset on the chip select.

The ranges property translates between the global address space to the
local chip select address space.  In this case, "0 0" means 0 offset
from chip select 0, and ff000000 is the address it is mapped to on the
parent bus.
                       dm9000@0,0 {
                               compatible = "dm9000";
                               reg = <0 0 100000>;
                               #size-cells = <1>;
                               #address-cells = <1>;
You should not need #address-cells or #size-cells on the child node
because it is not a bus.
                       };
               };

but it's not working.
Is it enough to have right dts record for default dm9000 driver working
or I have to change something more?
Thank you in andvance.

Sinisa Denic
System and software  engineer
tel: +381(0)112016142
ABS Control Systems
bul.Zorana Djindjica 8a
Belgrade,Serbia


_______________________________________________
Linuxppc-dev mailing list
Linuxppc-dev@ozlabs.org
https://ozlabs.org/mailman/listinfo/linuxppc-dev


-- 
Grant Likely, B.Sc., P.Eng.
Secret Lab Technologies Ltd.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help