[RFC] clk: renesas: r8a7795: Add support for R-Car H3 ES2.0
The Clock Pulse Generator / Module Standby and Software Reset module in
R-Car H3 ES2.0 differs from ES1.x in the following areas:
- More core clocks (S0D2, S0D3, S0D6, S0D8, S0D12),
- Different parent clocks for AUDMAC, EtherAVB, FDP, SYS-DMAC, VIN,
VSPB, VSPI,
- Removal of modules CSI21, FCPF2, FCPVD3, FCPVI2, FDP1-2,
VSPD3, VSPI2.
- Addition of modules EHCI3, HS-USB-IF3, R-NANDC, USB3.0-IF3-0,
USB-DMAC3-1.
To support both ES1.x and ES2.0:
- Update the clock tables for the latest revision (ES2.0), but do not
remove clocks that only exist on earlier revisions (ES1.x),
- At runtime, detect the SoC revision using the new soc_device_match()
API, and fix up the clocks tables to match the actual SoC revision:
- NULLify core and module clocks of modules that do not exist,
- Reparent module clocks that have a different parent on ES1.x.
FIXME Confirm FDP parent clock on ES2.0.
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
---
This saves ca. 3 KiB compared to using two sets of tables (one for ES1.x
and one for ES2.0).
1 file changed