Re: [PATCH 03/17] ARM: dts: r8a7742: Add I2C and IIC support

From: Geert Uytterhoeven
Date: Mon May 18 2020 - 06:10:28 EST


Hi Wolfram,

On Mon, May 18, 2020 at 11:26 AM Wolfram Sang
<wsa+renesas@xxxxxxxxxxxxxxxxxxxx> wrote:
> > > However, both versions (with and without automatic transmission) are
> > > described with the same "renesas,iic-r8a7742" compatible. Is it possible
> > > to detect the reduced variant at runtime somehow?
> > >
> > I couldn't find anything the manual that would be useful to detect at runtime.

Hence if we really need that (see below), we need a quirk based on compatible
value + base address.

> > > My concern is that the peculiarity of this SoC might be forgotten if we
> > > describe it like this and ever add "automatic transmissions" somewhen.
> > >
> > Agreed.
>
> Well, I guess reading from a register which is supposed to not be there
> on the modified IP core is too hackish.

According to the Hardware User's Manual Rev. 1.00, the registers do exist
on all RZ/G1, except for RZ/G1E (see below).

"(automatic transmission can be used as a hardware function, but this is
not meaningful for actual use cases)."

(whatever that comment may mean?)

> Leaves us with a seperate compatible entry for it?

On R-Car E3 and RZ/G2E, which have a single IIC instance, we
handled that by:

The r8a77990 (R-Car E3) and r8a774c0 (RZ/G2E)
controllers are not considered compatible with
"renesas,rcar-gen3-iic" or "renesas,rmobile-iic"
due to the absence of automatic transmission registers.

On R-Car E2 and RZ/G1E, we forgot, and used both SoC-specific and
family-specific compatible values.

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