[PATCH v4] uio/pdrv_genirq: Add OF support

Hans J. Koch hjk at hansjkoch.de
Thu May 5 05:47:30 EST 2011


On Wed, May 04, 2011 at 03:21:55PM +0200, Michal Simek wrote:
> Hans J. Koch wrote:
> >On Tue, May 03, 2011 at 10:34:12PM +0200, Wolfram Sang wrote:
> >>On Mon, May 02, 2011 at 08:51:55AM +0200, Michal Simek wrote:
> >>>Adding OF binding to genirq.
> >>>Version string is setup to the "devicetree".
> >>>
> >>>Compatible string is not setup for now but you can add your
> >>>custom compatible string to uio_of_genirq_match structure.
> >>>
> >>>For example with "vendor,device" compatible string:
> >>>static const struct of_device_id __devinitconst uio_of_genirq_match[] = {
> >>>	{ .compatible = "vendor,device", },
> >>>	{ /* empty for now */ },
> >>>};
> >>>
> >>>Signed-off-by: Michal Simek <monstr at monstr.eu>
> >>[...]
> >>
> >>>+		/* alloc uioinfo for one device */
> >>>+		uioinfo = kzalloc(sizeof(*uioinfo), GFP_KERNEL);
> >>kfree in remove?
> >
> >Oh yes. Missed that one. It should probably look like the "bad0" case in probe().
> 
> Yes, freeing uioinfo in uio_pdrv_genirq_remove make sense for CONFIG_OF.
> 
> Please correct me if I am wrong dev.of_node is not NULL for OF. I
> think yes that's why I would prefer to use this construct instead of
> #ifdef CONFIG_OF.
> 
> 	if (pdev->dev.of_node)
> 		kfree(pdev->dev.platform_data);

Huh? You didn't allocate platform_data, so you shouldn't free it.
It's uioinfo you allocated.

Thanks,
Hans


More information about the devicetree-discuss mailing list