From: Rodrigo Vivi <rodrigo.vivi@intel.com>
To: Jani Nikula <jani.nikula@intel.com>
Cc: <intel-gfx@lists.freedesktop.org>,
<intel-xe@lists.freedesktop.org>, <lucas.demarchi@intel.com>,
<maarten.lankhorst@linux.intel.com>
Subject: Re: [PATCH v4 11/15] drm/i915/bios: use display->platform.<platform> instead of IS_<PLATFORM>()
Date: Tue, 22 Oct 2024 13:45:05 -0400 [thread overview]
Message-ID: <ZxfkoX8YL5Lukjk3@intel.com> (raw)
In-Reply-To: <ef32162e2027d3e7916ec32ffe1fb8159ff0be8c.1729518793.git.jani.nikula@intel.com>
On Mon, Oct 21, 2024 at 04:54:12PM +0300, Jani Nikula wrote:
> Switch to using the new display->platform.<platform> members for
> platform identification in display code.
>
> Signed-off-by: Jani Nikula <jani.nikula@intel.com>
Reviewed-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
> ---
> drivers/gpu/drm/i915/display/intel_bios.c | 40 +++++++++--------------
> 1 file changed, 15 insertions(+), 25 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/display/intel_bios.c b/drivers/gpu/drm/i915/display/intel_bios.c
> index 9967b65e3cf6..ef3fc831ac88 100644
> --- a/drivers/gpu/drm/i915/display/intel_bios.c
> +++ b/drivers/gpu/drm/i915/display/intel_bios.c
> @@ -1169,7 +1169,6 @@ static int intel_bios_ssc_frequency(struct intel_display *display,
> static void
> parse_general_features(struct intel_display *display)
> {
> - struct drm_i915_private *i915 = to_i915(display->drm);
> const struct bdb_general_features *general;
>
> general = bdb_find_section(display, BDB_GENERAL_FEATURES);
> @@ -1179,7 +1178,7 @@ parse_general_features(struct intel_display *display)
> display->vbt.int_tv_support = general->int_tv_support;
> /* int_crt_support can't be trusted on earlier platforms */
> if (display->vbt.version >= 155 &&
> - (HAS_DDI(display) || IS_VALLEYVIEW(i915)))
> + (HAS_DDI(display) || display->platform.valleyview))
> display->vbt.int_crt_support = general->int_crt_support;
> display->vbt.lvds_use_ssc = general->enable_ssc;
> display->vbt.lvds_ssc_freq =
> @@ -1542,7 +1541,6 @@ static void
> parse_psr(struct intel_display *display,
> struct intel_panel *panel)
> {
> - struct drm_i915_private *i915 = to_i915(display->drm);
> const struct bdb_psr *psr;
> const struct psr_table *psr_table;
> int panel_type = panel->vbt.panel_type;
> @@ -1567,7 +1565,7 @@ parse_psr(struct intel_display *display,
> * Old decimal value is wake up time in multiples of 100 us.
> */
> if (display->vbt.version >= 205 &&
> - (DISPLAY_VER(display) >= 9 && !IS_BROXTON(i915))) {
> + (DISPLAY_VER(display) >= 9 && !display->platform.broxton)) {
> switch (psr_table->tp1_wakeup_time) {
> case 0:
> panel->vbt.psr.tp1_wakeup_time_us = 500;
> @@ -2029,11 +2027,9 @@ static void icl_fixup_mipi_sequences(struct intel_display *display,
> static void fixup_mipi_sequences(struct intel_display *display,
> struct intel_panel *panel)
> {
> - struct drm_i915_private *i915 = to_i915(display->drm);
> -
> if (DISPLAY_VER(display) >= 11)
> icl_fixup_mipi_sequences(display, panel);
> - else if (IS_VALLEYVIEW(i915))
> + else if (display->platform.valleyview)
> vlv_fixup_mipi_sequences(display, panel);
> }
>
> @@ -2243,15 +2239,15 @@ static u8 map_ddc_pin(struct intel_display *display, u8 vbt_pin)
> const u8 *ddc_pin_map;
> int i, n_entries;
>
> - if (INTEL_PCH_TYPE(i915) >= PCH_MTL || IS_ALDERLAKE_P(i915)) {
> + if (INTEL_PCH_TYPE(i915) >= PCH_MTL || display->platform.alderlake_p) {
> ddc_pin_map = adlp_ddc_pin_map;
> n_entries = ARRAY_SIZE(adlp_ddc_pin_map);
> - } else if (IS_ALDERLAKE_S(i915)) {
> + } else if (display->platform.alderlake_s) {
> ddc_pin_map = adls_ddc_pin_map;
> n_entries = ARRAY_SIZE(adls_ddc_pin_map);
> } else if (INTEL_PCH_TYPE(i915) >= PCH_DG1) {
> return vbt_pin;
> - } else if (IS_ROCKETLAKE(i915) && INTEL_PCH_TYPE(i915) == PCH_TGP) {
> + } else if (display->platform.rocketlake && INTEL_PCH_TYPE(i915) == PCH_TGP) {
> ddc_pin_map = rkl_pch_tgp_ddc_pin_map;
> n_entries = ARRAY_SIZE(rkl_pch_tgp_ddc_pin_map);
> } else if (HAS_PCH_TGP(i915) && DISPLAY_VER(display) == 9) {
> @@ -2334,7 +2330,6 @@ static enum port __dvo_port_to_port(int n_ports, int n_dvo,
> static enum port dvo_port_to_port(struct intel_display *display,
> u8 dvo_port)
> {
> - struct drm_i915_private *i915 = to_i915(display->drm);
> /*
> * Each DDI port can have more than one value on the "DVO Port" field,
> * so look for all the possible values for each port.
> @@ -2391,12 +2386,12 @@ static enum port dvo_port_to_port(struct intel_display *display,
> ARRAY_SIZE(xelpd_port_mapping[0]),
> xelpd_port_mapping,
> dvo_port);
> - else if (IS_ALDERLAKE_S(i915))
> + else if (display->platform.alderlake_s)
> return __dvo_port_to_port(ARRAY_SIZE(adls_port_mapping),
> ARRAY_SIZE(adls_port_mapping[0]),
> adls_port_mapping,
> dvo_port);
> - else if (IS_DG1(i915) || IS_ROCKETLAKE(i915))
> + else if (display->platform.dg1 || display->platform.rocketlake)
> return __dvo_port_to_port(ARRAY_SIZE(rkl_port_mapping),
> ARRAY_SIZE(rkl_port_mapping[0]),
> rkl_port_mapping,
> @@ -2519,7 +2514,6 @@ static void sanitize_hdmi_level_shift(struct intel_bios_encoder_data *devdata,
> enum port port)
> {
> struct intel_display *display = devdata->display;
> - struct drm_i915_private *i915 = to_i915(display->drm);
>
> if (!intel_bios_encoder_supports_dvi(devdata))
> return;
> @@ -2529,7 +2523,7 @@ static void sanitize_hdmi_level_shift(struct intel_bios_encoder_data *devdata,
> * with a HSW VBT where the level shifter value goes
> * up to 11, whereas the BDW max is 9.
> */
> - if (IS_BROADWELL(i915) && devdata->child.hdmi_level_shifter_value > 9) {
> + if (display->platform.broadwell && devdata->child.hdmi_level_shifter_value > 9) {
> drm_dbg_kms(display->drm,
> "Bogus port %c VBT HDMI level shift %d, adjusting to %d\n",
> port_name(port), devdata->child.hdmi_level_shifter_value, 9);
> @@ -2618,14 +2612,13 @@ int intel_bios_hdmi_max_tmds_clock(const struct intel_bios_encoder_data *devdata
>
> static bool is_port_valid(struct intel_display *display, enum port port)
> {
> - struct drm_i915_private *i915 = to_i915(display->drm);
> /*
> * On some ICL SKUs port F is not present, but broken VBTs mark
> * the port as present. Only try to initialize port F for the
> * SKUs that may actually have it.
> */
> - if (port == PORT_F && IS_ICELAKE(i915))
> - return IS_ICL_WITH_PORT_F(i915);
> + if (port == PORT_F && display->platform.icelake)
> + return display->platform.icelake_port_f;
>
> return true;
> }
> @@ -2723,9 +2716,7 @@ static void parse_ddi_port(struct intel_bios_encoder_data *devdata)
>
> static bool has_ddi_port_info(struct intel_display *display)
> {
> - struct drm_i915_private *i915 = to_i915(display->drm);
> -
> - return DISPLAY_VER(display) >= 5 || IS_G4X(i915);
> + return DISPLAY_VER(display) >= 5 || display->platform.g4x;
> }
>
> static void parse_ddi_ports(struct intel_display *display)
> @@ -2907,7 +2898,7 @@ init_vbt_missing_defaults(struct intel_display *display)
> unsigned int ports = DISPLAY_RUNTIME_INFO(display)->port_mask;
> enum port port;
>
> - if (!HAS_DDI(display) && !IS_CHERRYVIEW(i915))
> + if (!HAS_DDI(display) && !display->platform.cherryview)
> return;
>
> for_each_port_masked(port, ports) {
> @@ -3603,17 +3594,16 @@ static const u8 direct_aux_ch_map[] = {
>
> static enum aux_ch map_aux_ch(struct intel_display *display, u8 aux_channel)
> {
> - struct drm_i915_private *i915 = to_i915(display->drm);
> const u8 *aux_ch_map;
> int i, n_entries;
>
> if (DISPLAY_VER(display) >= 13) {
> aux_ch_map = adlp_aux_ch_map;
> n_entries = ARRAY_SIZE(adlp_aux_ch_map);
> - } else if (IS_ALDERLAKE_S(i915)) {
> + } else if (display->platform.alderlake_s) {
> aux_ch_map = adls_aux_ch_map;
> n_entries = ARRAY_SIZE(adls_aux_ch_map);
> - } else if (IS_DG1(i915) || IS_ROCKETLAKE(i915)) {
> + } else if (display->platform.dg1 || display->platform.rocketlake) {
> aux_ch_map = rkl_aux_ch_map;
> n_entries = ARRAY_SIZE(rkl_aux_ch_map);
> } else {
> --
> 2.39.5
>
next prev parent reply other threads:[~2024-10-22 17:45 UTC|newest]
Thread overview: 36+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-10-21 13:54 [PATCH v4 00/15] drm/i915/display: platform identification with display->platform.<platform> Jani Nikula
2024-10-21 13:54 ` [PATCH v4 01/15] drm/i915/display: reindent subplatform initialization Jani Nikula
2024-10-21 13:54 ` [PATCH v4 02/15] drm/i915/display: use a macro to initialize subplatforms Jani Nikula
2024-10-21 13:54 ` [PATCH v4 03/15] drm/i915/display: use a macro to define platform enumerations Jani Nikula
2024-10-21 13:54 ` [PATCH v4 04/15] drm/i915/display: join the platform and subplatform enums Jani Nikula
2024-10-21 13:54 ` [PATCH v4 05/15] drm/i915/display: convert display platforms to lower case Jani Nikula
2024-10-21 13:54 ` [PATCH v4 06/15] drm/i915/display: add display platforms structure with platform members Jani Nikula
2024-10-22 17:52 ` Rodrigo Vivi
2024-10-21 13:54 ` [PATCH v4 07/15] drm/i915/display: add platform member to struct intel_display Jani Nikula
2024-10-22 17:51 ` Rodrigo Vivi
2024-10-21 13:54 ` [PATCH v4 08/15] drm/i915/display: remove the display platform enum as unnecessary Jani Nikula
2024-10-22 17:49 ` Rodrigo Vivi
2024-10-23 13:09 ` Jani Nikula
2024-10-23 14:40 ` Rodrigo Vivi
2024-10-21 13:54 ` [PATCH v4 09/15] drm/i915/display: add platform group for g4x Jani Nikula
2024-10-22 17:45 ` Rodrigo Vivi
2024-10-21 13:54 ` [PATCH v4 10/15] drm/i915/display: add subplatform group for HSW/BDW ULT Jani Nikula
2024-10-23 15:08 ` Rodrigo Vivi
2024-10-21 13:54 ` [PATCH v4 11/15] drm/i915/bios: use display->platform.<platform> instead of IS_<PLATFORM>() Jani Nikula
2024-10-22 17:45 ` Rodrigo Vivi [this message]
2024-10-21 13:54 ` [PATCH v4 12/15] drm/i915/pps: " Jani Nikula
2024-10-22 17:43 ` Rodrigo Vivi
2024-10-21 13:54 ` [PATCH v4 13/15] drm/i915/tv: " Jani Nikula
2024-10-22 17:43 ` Rodrigo Vivi
2024-10-21 13:54 ` [PATCH v4 14/15] drm/i915/vga: " Jani Nikula
2024-10-22 17:42 ` Rodrigo Vivi
2024-10-21 13:54 ` [PATCH v4 15/15] drm/i915/vblank: " Jani Nikula
2024-10-22 17:42 ` Rodrigo Vivi
2024-10-21 14:09 ` ✓ CI.Patch_applied: success for drm/i915/display: platform identification with display->platform.<platform> (rev2) Patchwork
2024-10-21 14:09 ` ✗ CI.checkpatch: warning " Patchwork
2024-10-21 14:11 ` ✓ CI.KUnit: success " Patchwork
2024-10-21 14:22 ` ✓ CI.Build: " Patchwork
2024-10-21 14:24 ` ✓ CI.Hooks: " Patchwork
2024-10-21 14:26 ` ✗ CI.checksparse: warning " Patchwork
2024-10-21 15:00 ` ✓ CI.BAT: success " Patchwork
2024-10-21 21:11 ` ✗ CI.FULL: failure " Patchwork
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=ZxfkoX8YL5Lukjk3@intel.com \
--to=rodrigo.vivi@intel.com \
--cc=intel-gfx@lists.freedesktop.org \
--cc=intel-xe@lists.freedesktop.org \
--cc=jani.nikula@intel.com \
--cc=lucas.demarchi@intel.com \
--cc=maarten.lankhorst@linux.intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).