1
0
Fork 0

Partially revert "drm_hwcomposer: Produce stable port IDs"

* Android Automotive configurations rely on hardcoded port ids.
  These are used on EVS camera configuration and configuring instrument
  cluster on secondary display.
* On Pi 5 the reverted commit changed the port ids for HDMI-A-1 and HDMI-A-2
  from 0 and 1 to 32 and 33, respectively.
* Doesn't produce stable ids between rpi4 and rpi5 where there are different
  number of drm cards and in different order.
* Lets keep running number from 0 for now vs. what 3/5 bit split would
  produce on rpi4 and rpi5.

  rpi4:
  card0 - HDMI-A-1, HDMI-A-2, DSI-0 & DSI-1
  000 00000 -> 0
  000 00001 -> 1
  000 00010 -> 2
  000 00011 -> 3

  rpi5:
  card1 - HDMI-A-1 & HDMI-A-2
  001 00000 -> 32
  001 00001 -> 33
  card2 - DSI-0
  010 00000 -> 64
  card3 - DSI-1
  011 00000 -> 96

* Only revert the relevant part to avoid merge conflicts.

This partially reverts commit 907a51ab1b.
This commit is contained in:
Konsta 2025-03-18 01:42:50 +02:00
parent adcc927bd4
commit 56cb319f29

View file

@ -531,6 +531,7 @@ auto HwcDisplay::GetPort() const -> uint8_t {
return 0;
}
/*
auto *connector = GetPipe().connector->Get();
constexpr uint8_t kDrmDeviceBitShift = 5U;
@ -542,6 +543,8 @@ auto HwcDisplay::GetPort() const -> uint8_t {
connector->GetIndexInResArray());
return (((kDrmIdx << kDrmDeviceBitShift) & kDrmDeviceBitMask) |
(kConnectorIdx & kConnectorBitMask));
*/
return handle_; /* TODO: What should be here? */
}
auto HwcDisplay::GetDisplayType() -> DisplayType {