On Wed, 2009-03-25 at 11:39 -0500, Scott Wood wrote: > Simon Kagstrom wrote: > > There are no other versions yet, but I suppose there will be (it's > > implemented in a FPGA after all!). So what is the general handling of > > versions, should it be something like > > > > compatible = "ericsson,isf-pic", "ericsson,isf-pic-v2" > > > > etc if we'd make new revisions of the device? > > Looks good. > > >> I'm guessing that your FPGA PIC driver isn't getting its register address > >> from the device tree, given that it works without the ranges property? > > > > It is, but I didn't check it for correctness yet, so I suppose I might > > have mapped the wrong thing. The code looks like this: > > > > struct resource phys_addr; > > > > if (of_address_to_resource(np, 0, &phys_addr) != 0) { > > printk(KERN_ERR": Could not get ISF PIC memory > > resource\n"); > > return NULL; > > } > > > > spin_lock_init(&isf->lock); > > isf->ioaddr = ioremap(phys_addr.start, > > phys_addr.end - phys_addr.start); > > That looks good -- I'd have expected of_address_to_resource to fail, > though, when the ranges property was missing. The kernel's device tree > parsing code can sometimes be overly tolerant of broken device trees, > which is probably what happened.
It assumes a missing ranges == empty ranges, which means 1:1. See the comment in of_translate_one(). And thank Apple ;) cheers -- Michael Ellerman OzLabs, IBM Australia Development Lab wwweb: http://michael.ellerman.id.au phone: +61 2 6212 1183 (tie line 70 21183) We do not inherit the earth from our ancestors, we borrow it from our children. - S.M.A.R.T Person
signature.asc
Description: This is a digitally signed message part
_______________________________________________ Linuxppc-dev mailing list Linuxppc-dev@ozlabs.org https://ozlabs.org/mailman/listinfo/linuxppc-dev