Commit a5f6da0
committed
drm: adv7511: do 4 regmap_bulk_read() calls for EDID
Previously, 4 x i2c_transfer() calls used to be done, to read the EDID.
This does the same thing using regmap_bulk_read().
The i2c-cadence driver can only do 252 bytes, and some i2c controllers can
do 64-byte transfer-sizes.
The issue that is visible [without this change] is that the resolution
[read-back from the monitor] is reduced to a minimal [640x480].
I tried to see whether we can extend that 252-byte-transfer limit, but that
is a bit too difficult, because it requires too many i2c framework changes
that wouldn't make sense.
The i2c controller is configured to issue an i2c transfer, then an
interrupt shoots to notify that it completed.
Fixes 6a83880: ("drm: bridge: adv7511: Implement regmap for EDID memory map")
Signed-off-by: Alexandru Ardelean <[email protected]>1 parent 44e7b75 commit a5f6da0
1 file changed
+7
-5
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
531 | 531 | | |
532 | 532 | | |
533 | 533 | | |
534 | | - | |
| 534 | + | |
535 | 535 | | |
536 | 536 | | |
537 | 537 | | |
| |||
553 | 553 | | |
554 | 554 | | |
555 | 555 | | |
556 | | - | |
557 | | - | |
558 | | - | |
559 | | - | |
| 556 | + | |
| 557 | + | |
| 558 | + | |
| 559 | + | |
| 560 | + | |
| 561 | + | |
560 | 562 | | |
561 | 563 | | |
562 | 564 | | |
| |||
0 commit comments