[PATCH] drm/i915/display: move dmc_firmware_path to display params

Jani Nikula jani.nikula at intel.com
Thu Mar 21 16:20:57 UTC 2024


On Thu, 21 Mar 2024, Jani Nikula <jani.nikula at intel.com> wrote:
> The dmc_firmware_path parameter is clearly a display parameter. Move it
> there. This also cleans up the ugly member in struct xe_device.

Hmm, does this actually fix the parameter on xe?!

>
> Signed-off-by: Jani Nikula <jani.nikula at intel.com>
> ---
>  drivers/gpu/drm/i915/display/intel_display_params.c | 3 +++
>  drivers/gpu/drm/i915/display/intel_display_params.h | 1 +
>  drivers/gpu/drm/i915/display/intel_dmc.c            | 8 ++++----
>  drivers/gpu/drm/i915/i915_params.c                  | 3 ---
>  drivers/gpu/drm/i915/i915_params.h                  | 1 -
>  drivers/gpu/drm/xe/xe_device_types.h                | 3 ---
>  6 files changed, 8 insertions(+), 11 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/display/intel_display_params.c b/drivers/gpu/drm/i915/display/intel_display_params.c
> index 11e03cfb774d..c8e3d6892e23 100644
> --- a/drivers/gpu/drm/i915/display/intel_display_params.c
> +++ b/drivers/gpu/drm/i915/display/intel_display_params.c
> @@ -27,6 +27,9 @@ static struct intel_display_params intel_display_modparams __read_mostly = {
>   * debugfs mode to 0.
>   */
>  
> +intel_display_param_named_unsafe(dmc_firmware_path, charp, 0400,
> +	"DMC firmware path to use instead of the default one");
> +
>  intel_display_param_named_unsafe(vbt_firmware, charp, 0400,
>  	"Load VBT from specified file under /lib/firmware");
>  
> diff --git a/drivers/gpu/drm/i915/display/intel_display_params.h b/drivers/gpu/drm/i915/display/intel_display_params.h
> index 6206cc51df04..f95a6f79904f 100644
> --- a/drivers/gpu/drm/i915/display/intel_display_params.h
> +++ b/drivers/gpu/drm/i915/display/intel_display_params.h
> @@ -24,6 +24,7 @@ struct drm_i915_private;
>   *       debugfs file
>   */
>  #define INTEL_DISPLAY_PARAMS_FOR_EACH(param) \
> +	param(char *, dmc_firmware_path, NULL, 0400) \
>  	param(char *, vbt_firmware, NULL, 0400) \
>  	param(int, lvds_channel_mode, 0, 0400) \
>  	param(int, panel_use_ssc, -1, 0600) \
> diff --git a/drivers/gpu/drm/i915/display/intel_dmc.c b/drivers/gpu/drm/i915/display/intel_dmc.c
> index 3fa851b5c7a6..b4e730882ce2 100644
> --- a/drivers/gpu/drm/i915/display/intel_dmc.c
> +++ b/drivers/gpu/drm/i915/display/intel_dmc.c
> @@ -927,7 +927,7 @@ static void dmc_load_work_fn(struct work_struct *work)
>  
>  	err = request_firmware(&fw, dmc->fw_path, i915->drm.dev);
>  
> -	if (err == -ENOENT && !i915->params.dmc_firmware_path) {
> +	if (err == -ENOENT && !i915->display.params.dmc_firmware_path) {
>  		fallback_path = dmc_fallback_path(i915);
>  		if (fallback_path) {
>  			drm_dbg_kms(&i915->drm, "%s not found, falling back to %s\n",
> @@ -1034,14 +1034,14 @@ void intel_dmc_init(struct drm_i915_private *i915)
>  		dmc->max_fw_size = BXT_DMC_MAX_FW_SIZE;
>  	}
>  
> -	if (i915->params.dmc_firmware_path) {
> -		if (strlen(i915->params.dmc_firmware_path) == 0) {
> +	if (i915->display.params.dmc_firmware_path) {
> +		if (strlen(i915->display.params.dmc_firmware_path) == 0) {
>  			drm_info(&i915->drm,
>  				 "Disabling DMC firmware and runtime PM\n");
>  			goto out;
>  		}
>  
> -		dmc->fw_path = i915->params.dmc_firmware_path;
> +		dmc->fw_path = i915->display.params.dmc_firmware_path;
>  	}
>  
>  	if (!dmc->fw_path) {
> diff --git a/drivers/gpu/drm/i915/i915_params.c b/drivers/gpu/drm/i915/i915_params.c
> index de43048543e8..8c00169e3ab7 100644
> --- a/drivers/gpu/drm/i915/i915_params.c
> +++ b/drivers/gpu/drm/i915/i915_params.c
> @@ -108,9 +108,6 @@ i915_param_named_unsafe(guc_firmware_path, charp, 0400,
>  i915_param_named_unsafe(huc_firmware_path, charp, 0400,
>  	"HuC firmware path to use instead of the default one");
>  
> -i915_param_named_unsafe(dmc_firmware_path, charp, 0400,
> -	"DMC firmware path to use instead of the default one");
> -
>  i915_param_named_unsafe(gsc_firmware_path, charp, 0400,
>  	"GSC firmware path to use instead of the default one");
>  
> diff --git a/drivers/gpu/drm/i915/i915_params.h b/drivers/gpu/drm/i915/i915_params.h
> index 1315d7fac850..2eb3f2115ff2 100644
> --- a/drivers/gpu/drm/i915/i915_params.h
> +++ b/drivers/gpu/drm/i915/i915_params.h
> @@ -51,7 +51,6 @@ struct drm_printer;
>  	param(int, guc_log_level, -1, 0400) \
>  	param(char *, guc_firmware_path, NULL, 0400) \
>  	param(char *, huc_firmware_path, NULL, 0400) \
> -	param(char *, dmc_firmware_path, NULL, 0400) \
>  	param(char *, gsc_firmware_path, NULL, 0400) \
>  	param(bool, memtest, false, 0400) \
>  	param(int, mmio_debug, -IS_ENABLED(CONFIG_DRM_I915_DEBUG_MMIO), 0600) \
> diff --git a/drivers/gpu/drm/xe/xe_device_types.h b/drivers/gpu/drm/xe/xe_device_types.h
> index 9785eef2e5a4..eeab2002d6db 100644
> --- a/drivers/gpu/drm/xe/xe_device_types.h
> +++ b/drivers/gpu/drm/xe/xe_device_types.h
> @@ -524,9 +524,6 @@ struct xe_device {
>  		unsigned int fsb_freq, mem_freq, is_ddr3;
>  		u8 vblank_enabled;
>  	};
> -	struct {
> -		const char *dmc_firmware_path;
> -	} params;
>  
>  	void *pxp;
>  #endif

-- 
Jani Nikula, Intel


More information about the Intel-gfx mailing list