CC Sergei, Thanks for your patch! On Mon, Jul 2, 2018 at 10:06 AM Niklas Söderlund <niklas.soderlund+renesas@xxxxxxxxxxxx> wrote: > The datasheet do not document any registers to control drive strength, does > and no drive strength registers are for this reason described for this > SoC. The flag indicating that drive strength can be controlled are flags > however set for some pins in the driver. > > This leads to a NULL pointer dereference when the sh-pfc core tries to > access the struct describing the drive strength registers, for example > when reading the sysfs file pinconf-pins. > > Fix this by removing the SH_PFC_PIN_CFG_DRIVE_STRENGTH from all pins. > > Signed-off-by: Niklas Söderlund <niklas.soderlund+renesas@xxxxxxxxxxxx> Reviewed-by: Geert Uytterhoeven <geert+renesas@xxxxxxxxx> I'll wait a bit for Sergei's response. Perhaps his version of the datasheet does document drive strength registers? > --- a/drivers/pinctrl/sh-pfc/pfc-r8a77970.c > +++ b/drivers/pinctrl/sh-pfc/pfc-r8a77970.c > @@ -21,15 +21,13 @@ > #include "core.h" > #include "sh_pfc.h" > > -#define CFG_FLAGS SH_PFC_PIN_CFG_DRIVE_STRENGTH > - > #define CPU_ALL_PORT(fn, sfx) \ > - PORT_GP_CFG_22(0, fn, sfx, CFG_FLAGS | SH_PFC_PIN_CFG_IO_VOLTAGE), \ > - PORT_GP_CFG_28(1, fn, sfx, CFG_FLAGS), \ > - PORT_GP_CFG_17(2, fn, sfx, CFG_FLAGS | SH_PFC_PIN_CFG_IO_VOLTAGE), \ > - PORT_GP_CFG_17(3, fn, sfx, CFG_FLAGS | SH_PFC_PIN_CFG_IO_VOLTAGE), \ > - PORT_GP_CFG_6(4, fn, sfx, CFG_FLAGS), \ > - PORT_GP_CFG_15(5, fn, sfx, CFG_FLAGS) > + PORT_GP_CFG_22(0, fn, sfx, SH_PFC_PIN_CFG_IO_VOLTAGE), \ > + PORT_GP_28(1, fn, sfx), \ > + PORT_GP_CFG_17(2, fn, sfx, SH_PFC_PIN_CFG_IO_VOLTAGE), \ > + PORT_GP_CFG_17(3, fn, sfx, SH_PFC_PIN_CFG_IO_VOLTAGE), \ > + PORT_GP_6(4, fn, sfx), \ > + PORT_GP_15(5, fn, sfx) > /* > * F_() : just information > * FM() : macro for FN_xxx / xxx_MARK Gr{oetje,eeting}s, Geert -- Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@xxxxxxxxxxxxxx In personal conversations with technical people, I call myself a hacker. But when I'm talking to journalists I just say "programmer" or something like that. -- Linus Torvalds