pinctrl: sh-pfc: checker: Add data register checks
authorGeert Uytterhoeven <geert+renesas@glider.be>
Fri, 10 Jan 2020 13:19:26 +0000 (14:19 +0100)
committerGeert Uytterhoeven <geert+renesas@glider.be>
Fri, 21 Feb 2020 12:57:44 +0000 (13:57 +0100)
Add checks for data register descriptors:
  1. Register addresses must be unique.
  2. Enum ID values must be unique.

Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Reviewed-by: Niklas Söderlund <niklas.soderlund+renesas@ragnatech.se>
Link: https://lore.kernel.org/r/20200110131927.1029-13-geert+renesas@glider.be
drivers/pinctrl/sh-pfc/core.c

index 42432db..da2baa9 100644 (file)
@@ -1004,6 +1004,14 @@ static void __init sh_pfc_check_info(const struct sh_pfc_soc_info *info)
        /* Check ioctrl registers */
        for (i = 0; info->ioctrl_regs && info->ioctrl_regs[i].reg; i++)
                sh_pfc_check_reg(drvname, info->ioctrl_regs[i].reg);
+
+       /* Check data registers */
+       for (i = 0; info->data_regs && info->data_regs[i].reg; i++) {
+               sh_pfc_check_reg(drvname, info->data_regs[i].reg);
+               sh_pfc_check_reg_enums(drvname, info->data_regs[i].reg,
+                                      info->data_regs[i].enum_ids,
+                                      info->data_regs[i].reg_width);
+       }
 }
 
 static void __init sh_pfc_check_driver(const struct platform_driver *pdrv)