[Intel-gfx] [PATCH 00/12] drm/i915/bios: vbt child device rework

Lucas De Marchi lucas.demarchi at intel.com
Wed Feb 17 17:54:40 UTC 2021


On Wed, Feb 17, 2021 at 07:03:30PM +0200, Jani Nikula wrote:
>I see the parsing and caching of child device data into
>i915->vbt.ddi_port_info[] slightly problematic. We keep adding data to
>it, and it just duplicates information. Start moving towards a single
>point of truth, and getting the information directly from the child
>device data.
>
>One obstacle has been that init_vbt_missing_defaults() only initializes
>ddi_port_info, without child devices. As the same problem arose in a
>patch from Lucas, I thought it was time to start creating fake child
>devices to unify the code.
>
>There are a bunch of cleanups and refactoring here. Patches 1-5 are
>enough to fix Lucas' patch I think. Patch 10 does what Lucas was after,
>just in a different way and as a byproduct of something else. The later

humn... but we'd still need the patches in that series to cleanup
the calls to intel_ddi_init() from intel_display.c. Or did I miss
anything?

I did a quick scan through the patches and left a few comments. Overall
it looks good to me, but I need to dedicate a little more time to give a
proper r-b. I will do soon if no one beats me to it.


thanks
Lucas De Marchi

>patches in the series are more to show the direction, and seek
>validation for that direction.
>
>Naming is also a question mark. All of these are a bit questionable:
>intel_bios_encoder_data, devdata, intel_bios_encoder_supports_*, etc.
>
>BR,
>Jani.
>
>
>[1] http://patchwork.freedesktop.org/patch/msgid/20210213190511.1017088-2-lucas.demarchi@intel.com
>
>
>
>Cc: Lucas De Marchi <lucas.demarchi at intel.com>
>Cc: Ville Syrjälä <ville.syrjala at linux.intel.com>
>
>
>Jani Nikula (12):
>  drm/i915/bios: mass convert dev_priv to i915
>  drm/i915/bios: store bdb version in i915
>  drm/i915/bios: limit default outputs by platform on missing VBT
>  drm/i915/bios: limit default outputs to ports A through F
>  drm/i915/bios: create fake child devices on missing VBT
>  drm/i915/bios: rename display_device_data to intel_bios_encoder_data
>  drm/i915/bios: add i915 backpointer to intel_bios_encoder_data
>  drm/i915/vbt: add helper functions to check output support
>  drm/i915/bios: save a higher level pointer in ddi_vbt_port_info[]
>  drm/i915/bios: start using the intel_bios_encoder_data directly
>  drm/i915/bios: start using intel_bios_encoder_data for Type-C USB and
>    TBT
>  drm/i915/bios: add intel_bios_encoder_data to encoder, use for iboost
>
> drivers/gpu/drm/i915/display/intel_bios.c     | 1021 +++++++++--------
> drivers/gpu/drm/i915/display/intel_bios.h     |   17 +-
> drivers/gpu/drm/i915/display/intel_ddi.c      |   28 +-
> .../drm/i915/display/intel_display_types.h    |    3 +
> drivers/gpu/drm/i915/i915_drv.h               |    9 +-
> 5 files changed, 584 insertions(+), 494 deletions(-)
>
>-- 
>2.20.1
>


More information about the Intel-gfx mailing list