[Intel-gfx] [PATCH 38/43] drm/i915: Parametrize AUX registes

Jani Nikula jani.nikula at linux.intel.com
Mon Sep 28 06:57:12 PDT 2015


On Mon, 28 Sep 2015, Daniel Vetter <daniel at ffwll.ch> wrote:
> On Mon, Sep 28, 2015 at 04:34:10PM +0300, Ville Syrjälä wrote:
>> On Mon, Sep 28, 2015 at 03:28:39PM +0200, Daniel Vetter wrote:
>> > On Mon, Sep 28, 2015 at 03:15:18PM +0300, Jani Nikula wrote:
>> > > On Fri, 18 Sep 2015, ville.syrjala at linux.intel.com wrote:
>> > > > @@ -1012,35 +1012,16 @@ intel_dp_aux_transfer(struct drm_dp_aux *aux, struct drm_dp_aux_msg *msg)
>> > > >  static uint32_t g4x_aux_ctl_reg(struct drm_i915_private *dev_priv,
>> > > >  				enum port port)
>> > > >  {
>> > > > -	switch (port) {
>> > > > -	case PORT_B:
>> > > > -		return DPB_AUX_CH_CTL;
>> > > > -	case PORT_C:
>> > > > -		return DPC_AUX_CH_CTL;
>> > > > -	case PORT_D:
>> > > > -		return DPD_AUX_CH_CTL;
>> > > > -	default:
>> > > > -		MISSING_CASE(port);
>> > > > -		return DPB_AUX_CH_CTL;
>> > > > -	}
>> > > > +	return DP_AUX_CH_CTL(port);
>> > > 
>> > > Together with the previous patch you now lose all MISSING_CASE/BUG/WARN
>> > > for having an out-of-bounds/unsupported port. I kinda liked them.
>> > 
>> > MISSING_REG() to satisfy the typechecks would be good I think. Or
>> > MISSING_CASE_REG().
>> 
>> I've never caught anything with such checks, but if people want then I
>> could keep them around. I suppose the fact that we don't have AUX for
>> port E+ means they could actually be useful here, at least on SKL. For
>> the other platforms they're pointless IMO, but I can include them there
>> if people so wish. I didn't actually check if port E on SKL was the only
>> exception, or if we continue with similar limitations in the future.
>
> It's not so much that it catches bugs, but it does prevent people from
> using BUG() instead. And I don't take patches with BUG() any more because
> too much time wasted with machines dying under console_lock because of
> that ;-)

We don't catch such bugs in the wild precisely because they've been
caught during enabling. Without the checks, some might slip through, and
we end up debugging.

BR,
Jani.


> -Daniel
> -- 
> Daniel Vetter
> Software Engineer, Intel Corporation
> http://blog.ffwll.ch

-- 
Jani Nikula, Intel Open Source Technology Center


More information about the Intel-gfx mailing list