gpio/mxc: add .to_irq for gpio chip
It adds .to_irq support for gpio chip, so that __gpio_to_irq in gpiolib becomes usable. Signed-off-by: Shawn Guo <shawn.guo@linaro.org> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
This commit is contained in:
parent
e309fb1864
commit
09ad8039da
@ -337,6 +337,15 @@ static void __devinit mxc_gpio_get_hw(struct platform_device *pdev)
|
|||||||
mxc_gpio_hwtype = hwtype;
|
mxc_gpio_hwtype = hwtype;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static int mxc_gpio_to_irq(struct gpio_chip *gc, unsigned offset)
|
||||||
|
{
|
||||||
|
struct bgpio_chip *bgc = to_bgpio_chip(gc);
|
||||||
|
struct mxc_gpio_port *port =
|
||||||
|
container_of(bgc, struct mxc_gpio_port, bgc);
|
||||||
|
|
||||||
|
return port->virtual_irq_start + offset;
|
||||||
|
}
|
||||||
|
|
||||||
static int __devinit mxc_gpio_probe(struct platform_device *pdev)
|
static int __devinit mxc_gpio_probe(struct platform_device *pdev)
|
||||||
{
|
{
|
||||||
struct device_node *np = pdev->dev.of_node;
|
struct device_node *np = pdev->dev.of_node;
|
||||||
@ -403,6 +412,7 @@ static int __devinit mxc_gpio_probe(struct platform_device *pdev)
|
|||||||
if (err)
|
if (err)
|
||||||
goto out_iounmap;
|
goto out_iounmap;
|
||||||
|
|
||||||
|
port->bgc.gc.to_irq = mxc_gpio_to_irq;
|
||||||
port->bgc.gc.base = pdev->id * 32;
|
port->bgc.gc.base = pdev->id * 32;
|
||||||
port->bgc.dir = port->bgc.read_reg(port->bgc.reg_dir);
|
port->bgc.dir = port->bgc.read_reg(port->bgc.reg_dir);
|
||||||
port->bgc.data = port->bgc.read_reg(port->bgc.reg_set);
|
port->bgc.data = port->bgc.read_reg(port->bgc.reg_set);
|
||||||
|
Loading…
Reference in New Issue
Block a user