From 9b133915f6fb96d917e63f50a465242fe1ccae56 Mon Sep 17 00:00:00 2001 From: Sascha Hauer Date: Thu, 5 Mar 2015 13:59:26 +0100 Subject: PWM: i.MX: register successfully without alias When a PWM does not have an of alias generate a name from the base address so that we can register it successfully. Signed-off-by: Sascha Hauer --- drivers/pwm/pwm-imx.c | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/drivers/pwm/pwm-imx.c b/drivers/pwm/pwm-imx.c index fbfc3af0cd..b00bf7e80b 100644 --- a/drivers/pwm/pwm-imx.c +++ b/drivers/pwm/pwm-imx.c @@ -226,21 +226,19 @@ static int imx_pwm_probe(struct device_d *dev) if (IS_ERR(imx->clk_per)) return PTR_ERR(imx->clk_per); + imx->mmio_base = dev_request_mem_region(dev, 0); + if (IS_ERR(imx->mmio_base)) + return PTR_ERR(imx->mmio_base); + imx->chip.ops = &imx_pwm_ops; if (dev->device_node) { imx->chip.devname = of_alias_get(dev->device_node); - if (!imx->chip.devname) { - dev_err(dev, "no alias for pwm\n"); - return -EINVAL; - } + if (!imx->chip.devname) + imx->chip.devname = asprintf("pwm_%p", imx->mmio_base); } else { imx->chip.devname = asprintf("pwm%d", dev->id); } - imx->mmio_base = dev_request_mem_region(dev, 0); - if (IS_ERR(imx->mmio_base)) - return PTR_ERR(imx->mmio_base); - imx->config = data->config; imx->set_enable = data->set_enable; -- cgit v1.2.3