• Geert Uytterhoeven's avatar
    pinctrl: sh-pfc: r8a7795: Add support for R-Car H3 ES2.0 · b205914c
    Geert Uytterhoeven authored
    The Pin Function Controller module in the R-Car H3 ES2.0 differs from
    ES1.x in many ways.
    
    The goal is twofold:
      1. Support both the ES1.x and ES2.0 SoC revisions in a single binary
         for now,
      2. Make it clear which code supports ES1.x, so it can easily be
         identified and removed later, when production SoCs are deemed
         ubiquitous.
    
    Hence this patch:
      1. Extracts the support for R-Car H3 ES1.x into a separate file, as
         the differences are quite large,
      2. Adds code for detecting the SoC revision at runtime using the new
         soc_device_match() API, and selecting pinctrl tables for the actual
         SoC revision,
      3. Replaces the core register and bitfield definitions by their
         counterparts for R-Car H3 ES2.0.
    
    The addition of pins, groups, and functions for the various on-chip
    devices is left to subsequent patches.
    
    The R-Car H3 ES2.0 register and bitfield definitions were extracted from
    a patch in the BSP by Takeshi Kihara.
    Signed-off-by: default avatarGeert Uytterhoeven <geert+renesas@glider.be>
    Cc: Takeshi Kihara <takeshi.kihara.df@renesas.com>
    b205914c
pfc-r8a7795-es1.c 187 KB