Grant, I am able to sort out this issue and i can see irq numbers getting populated in i2c driver.
I have some other queries related to handling SoC specific data. I will post the query with separate thread. -Manjunath On 27 June 2011 00:21, Manjunatha GK <[email protected]> wrote: > Hi Grant, > > On 26 June 2011 13:42, Grant Likely <[email protected]> wrote: > >> On Fri, Jun 24, 2011 at 07:08:34PM +0530, Manjunatha GK wrote: >> > Hi Thomas, >> > >> > On 24 June 2011 18:13, Thomas Abraham <[email protected]> >> wrote: >> > >> > > Hi Manjunath, >> > > >> > > [...] > > > > > >> > > > With the above changes, i was expecting probe function to be called >> since >> > > > device gets binded to driver. But probe will never get called. >> > > > >> > > > Did I miss anything with above procedure? >> > > >> > > What about platform_driver->driver.of_match_table? Is it populated >> > > (set to omap_i2c_of_match)? >> > > >> > >> > Yes. This entry was missing with my changes. With of_match_table, probe >> is >> > getting called. >> > Thanks for the pointer. >> >> Glad to hear you got it sorted out. >> > > Yes. Now I am able to get i2c base address from DT through device node > structure but not able to get irq number from DT. The .dts entries are: > > + gic: intc@48241000 { > + compatible = "arm,omap-gic", "arm,gic"; > + interrupt-controller; > + #interrupt-cells = <1>; > + reg = <0x48241000 0x1000>; > + }; > + > + i2c@48072000 { > + interrupts = <88>; > + interrupt-parent = <&gic>; > + compatible = "ti,omap_i2c"; > + #address-cells = <1>; > + #size-cells = <0>; > + reg = <0x48072000 0x80>; > + > + twl@0x48 { > + compatible = "ti,twl6030"; > + reg = < 0x48 >; > + }; > + > + }; > > From the debug log, it is observed that, the interrupts field will not > exists in device_node data structure. It captures all the fields from the > about i2c DT entries except interrupts field. > > [ 0.293182] of_irq_map_one: dev=/i2c@48072000, index=0 > [ 0.293212] of_find_property; pp->name: compatible name: interrupts > [ 0.293212] of_find_property; pp->name: reg name: interrupts > [ 0.293243] of_find_property; pp->name: #address-cells name: > interrupts > [ 0.293243] of_find_property; pp->name: #size-cells name: interrupts > [ 0.293273] of_find_property; pp->name: name name: interrupts > [ 0.293304] omap_i2c_probe: i2c: dev->base: fa072000 > [ 0.293304] omap_i2c_probe: i2c: dev->irq: ffffffff > > Any specific reason for missing entries in device node structures? > > Since you explored other ARM boards, is this interrupts field used and > tested? > > -Manjunath > > -- Manjunatha GK Linaro.org <http://www.linaro.org/>* **│ *Open source software for ARM SoCs Follow *Linaro: *Facebook <http://www.facebook.com/pages/Linaro> | Twitter<http://twitter.com/#%21/linaroorg>| Blog <http://www.linaro.org/linaro-blog/>
_______________________________________________ devicetree-discuss mailing list [email protected] https://lists.ozlabs.org/listinfo/devicetree-discuss
