Re: [PATCH 00/12] drm/i915/bios: vbt child device rework

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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@xxxxxxxxx



Cc: Lucas De Marchi <lucas.demarchi@xxxxxxxxx>
Cc: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx>


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

_______________________________________________
Intel-gfx mailing list
Intel-gfx@xxxxxxxxxxxxxxxxxxxxx
https://lists.freedesktop.org/mailman/listinfo/intel-gfx




[Index of Archives]     [AMD Graphics]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux