[Intel-gfx] [PATCH] drm/i915: Tighten mmio arrays for MIPI_PORT

Jani Nikula jani.nikula at intel.com
Tue Feb 28 15:00:28 UTC 2017


On Tue, 28 Feb 2017, Chris Wilson <chris at chris-wilson.co.uk> wrote:
> drivers/gpu/drm/i915/intel_dsi.c: In function ‘intel_dsi_prepare’:
> drivers/gpu/drm/i915/intel_dsi.c:1308:1: error: the frame size of 2488 bytes is larger than 2048 bytes [-Werror=frame-larger-than=]
>
> which is caused by the compiling expanding every _MIPI_PORT into an
> on-stack array of u32[3] at every callsite. Not sure why only one
> machine/compiler appears susceptible, but with a minor tweak to _MIPI_PORT
> we can defer the error until later.
>
> This is a partial revert of commit ce64645d86ac ("drm/i915: use variadic
> macros and arrays to choose port/pipe based registers") for a particular
> bad offender.
>
> Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>
> Cc: Jani Nikula <jani.nikula at intel.com>

:(

Acked-by: Jani Nikula <jani.nikula at intel.com>



> ---
>  drivers/gpu/drm/i915/i915_reg.h | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/i915/i915_reg.h b/drivers/gpu/drm/i915/i915_reg.h
> index 93dcbbccb740..4906ce4d3a5d 100644
> --- a/drivers/gpu/drm/i915/i915_reg.h
> +++ b/drivers/gpu/drm/i915/i915_reg.h
> @@ -8264,7 +8264,7 @@ enum {
>  
>  /* MIPI DSI registers */
>  
> -#define _MIPI_PORT(port, a, c)	_PORT3(port, a, 0, c)	/* ports A and C only */
> +#define _MIPI_PORT(port, a, c)	((port) ? c : a)	/* ports A and C only */
>  #define _MMIO_MIPI(port, a, c)	_MMIO(_MIPI_PORT(port, a, c))
>  
>  #define MIPIO_TXESC_CLK_DIV1			_MMIO(0x160004)

-- 
Jani Nikula, Intel Open Source Technology Center


More information about the Intel-gfx mailing list