Re: [RFC] Correct memory layout reporting for "jedec,lpddr2" and related bindings

From: Julius Werner
Date: Thu Jun 30 2022 - 20:54:26 EST


> How the asymmetric SDRAMs report density? This is a field with
> fixed/enum values, so does it mean two-rank-asymmetric module has two
> registers, one per each rank and choice of register depends on chip select?

Yes, each rank has a completely separate set of mode registers.

> Manufacturer ID is taken from compatible. LPDDR3 has it deprecated.

Oh! Oh no, I only just saw that. I wish you had CCed us on that patch. :/

That really doesn't work for our use case, we can't generate a
specific compatible string for each part number. This may work when
your board is only using a single memory part and you can hardcode
that in the DTB blob bundled with the kernel, but we are trying to do
runtime identification between dozens of different parts on our
boards. The whole point of us wanting to add these bindings is that we
want to have the firmware inject the raw values it can read from mode
registers into the device tree (with just the compatible string
"jedec,lpddr3"), so that we can then delegate the task of matching
those values to part numbers to a userspace process. We don't want to
hardcode long tables for ID-to-string matching that have to be updated
all the time in our constrained firmware space.

Can we please revert that deprecation and at least keep the property
around as optional?