Re: [PATCH 1/5] dt-bindings: display: ssd1307fb: Deprecate fbdev compatible strings

From: Javier Martinez Canillas
Date: Fri Apr 08 2022 - 15:25:38 EST


On 4/8/22 21:19, Javier Martinez Canillas wrote:

[snip]

>>
>> There's also no reason to put the bus interface into the compatible as
>> the same compatible will work on different buses. But since you want to
>> add SPI, just using the 'i2c' one will confuse people. For that reason
>> you could add 'solomon,ssd1305', etc. for both SPI support and I2C DRM.
>
> That's not really true. There's a reason to add per bus compatible strings
> at least in Linux. And is that there's no information about the bus types
> in module aliases that are reported to user-space for module auto-loading.
>

Forgot to mention that in this particular case it will work but just because
the SPI subsystem always report a module alias of the form "spi:device" even
for devices that are registered through OF.

So having a single "solomon,ssd1306" would work because for I2C the module
alias will be "of:NoledT(null)Csolomon,ssd1306" and for SPI it will be
"spi:ssd1306".

But if ever the SPI subsystem is fixed to report proper OF module aliases
things will break. And since the DT bindings is an ABI, it's safer to have
"-i2c" and "-spi" compatible strings variants.

--
Best regards,

Javier Martinez Canillas
Linux Engineering
Red Hat