Re: [PATCH v3 0/3] drm/panel-edp: remove several legacy compatibles used by the driver

From: Jeffrey Hugo
Date: Fri May 31 2024 - 12:51:49 EST


On 5/31/2024 10:20 AM, Doug Anderson wrote:
Hi,

On Fri, May 31, 2024 at 9:18 AM Jeffrey Hugo <quic_jhugo@xxxxxxxxxxx> wrote:

On 5/30/2024 5:12 PM, Dmitry Baryshkov wrote:
There are two ways to describe an eDP panel in device tree. The
recommended way is to add a device on the AUX bus, ideally using the
edp-panel compatible. The legacy way is to define a top-level platform
device for the panel.

Document that adding support for eDP panels in a legacy way is strongly
discouraged (if not forbidden at all).

While we are at it, also drop legacy compatible strings and bindings for
five panels. These compatible strings were never used by a DT file
present in Linux kernel and most likely were never used with the
upstream Linux kernel.

The following compatibles were never used by the devices supported by
the upstream kernel and are a subject to possible removal:

- lg,lp097qx1-spa1
- samsung,lsn122dl01-c01
- sharp,ld-d5116z01b

Ok to drop the sharp one I added. It should be able to be handled by
the (newish) edp-panel, but I think the TI bridge driver needs some work
for the specific platform (no I2C connection) to verify.

Is the platform supported upstream? If so, which platform is it? Is
the TI bridge chip the ti-sn65dsi86? If so, I'm confused how you could
use that bridge chip without an i2c connection, but perhaps I'm
misunderstanding. :-P

Yes, the platform is upstream. The 8998 laptops (clamshell). It is the ti-sn65si86. I suspect the I2C connection was not populated for cost reasons, then determined its much more convenient to have it as every generation after that I've seen has the I2C.

If you check the datasheet closely, the I2C connection is optional. You can also configure the bridge inband using DSI commands. This is what the FW and Windows does.

So, the DT binding needs to make the I2C property optional (this should be backwards compatible). The driver needs to detect that the I2C connection is not provided, and fall back to DSI commands. Regmap would be nice for this, but I got pushback on the proposal. Then I got sidetracked looking at other issues.

-Jeff