Messages in this thread | | | Date | Thu, 05 May 2011 07:26:43 +0200 | From | Michal Simek <> | Subject | Re: [PATCH v4] uio/pdrv_genirq: Add OF support |
| |
Hans J. Koch wrote: > 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@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.
grrr. I am stupid!
/* kfree uioinfo for CONFIG_OF */ if (pdev->dev.of_node) kfree(priv->uioinfo);
Michal
-- Michal Simek, Ing. (M.Eng) w: www.monstr.eu p: +42-0-721842854 Maintainer of Linux kernel 2.6 Microblaze Linux - http://www.monstr.eu/fdt/ Microblaze U-BOOT custodian
| |