1. 21 Mar, 2023 4 commits
  2. 20 Mar, 2023 4 commits
  3. 18 Mar, 2023 4 commits
  4. 17 Mar, 2023 9 commits
  5. 16 Mar, 2023 3 commits
  6. 15 Mar, 2023 2 commits
  7. 14 Mar, 2023 2 commits
  8. 10 Mar, 2023 7 commits
  9. 09 Mar, 2023 4 commits
  10. 07 Mar, 2023 1 commit
    • Ville Syrjälä's avatar
      drm/i915: Get rid of the gm45 HPD live state nonsense · 4b736ed4
      Ville Syrjälä authored
      The idea that ctg uses different HPD live state bits is
      total nonsense, at least on my machine (Dell Latitude
      E5400).
      
      The only reason DP-B even works on my ctg is that DP-D
      live state is stuck high, even though there is no physical
      DP-D port. So when the detect checks DP-B live state it
      sees the stuck live state of DP-D instead. If I hack
      the driver to not register DP-D at all, and thus we never
      enabe DP-D HPD, DP-B stops working as well.
      
      Just to put some conclusive evidence into this mess,
      here are the actual hotplug register values for each port:
       Everything disconnected:
                          PORT_HOTPLUG_EN (0x00061110): 0x00000000
                        PORT_HOTPLUG_STAT (0x00061114): 0x00000000
                          PORT_HOTPLUG_EN (0x00061110): 0x08000000
                        PORT_HOTPLUG_STAT (0x00061114): 0x08000000
                          PORT_HOTPLUG_EN (0x00061110): 0x10000000
                        PORT_HOTPLUG_STAT (0x00061114): 0x00000000
                          PORT_HOTPLUG_EN (0x00061110): 0x20000000
                        PORT_HOTPLUG_STAT (0x00061114): 0x00000000
       Only port B connected:
                          PORT_HOTPLUG_EN (0x00061110): 0x00000000
                        PORT_HOTPLUG_STAT (0x00061114): 0x00000000
                          PORT_HOTPLUG_EN (0x00061110): 0x08000000
                        PORT_HOTPLUG_STAT (0x00061114): 0x08000000
                          PORT_HOTPLUG_EN (0x00061110): 0x10000000
                        PORT_HOTPLUG_STAT (0x00061114): 0x00000000
                          PORT_HOTPLUG_EN (0x00061110): 0x20000000
                        PORT_HOTPLUG_STAT (0x00061114): 0x20000000
       Only port C connected:
                          PORT_HOTPLUG_EN (0x00061110): 0x00000000
                        PORT_HOTPLUG_STAT (0x00061114): 0x00000000
                          PORT_HOTPLUG_EN (0x00061110): 0x08000000
                        PORT_HOTPLUG_STAT (0x00061114): 0x08000000
                          PORT_HOTPLUG_EN (0x00061110): 0x10000000
                        PORT_HOTPLUG_STAT (0x00061114): 0x10000000
                          PORT_HOTPLUG_EN (0x00061110): 0x20000000
                        PORT_HOTPLUG_STAT (0x00061114): 0x00000000
      
      So the enable bit and live state bit always match 1:1.
      Acked-by: default avatarJani Nikula <jani.nikula@intel.com>
      Signed-off-by: default avatarVille Syrjälä <ville.syrjala@linux.intel.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20230302161013.29213-4-ville.syrjala@linux.intel.com
      4b736ed4