<p dir="ltr"><br>
On Aug 10, 2015 4:14 AM, "Neil Roberts" <<a href="mailto:neil@linux.intel.com">neil@linux.intel.com</a>> wrote:<br>
><br>
> If we go with this patch perhaps it would be good to remove<br>
> supports_simd16_3src entirely from brw_device_info and any code that is<br>
> referring to it in order to avoid carrying around useless code.<br>
> Currently it seems like it would be quite easy to add a new<br>
> brw_device_info and forget to add supports_simd16_3src and never notice<br>
> that it is redundantly using the fallback.</p>
<p dir="ltr">I would second that.</p>
<p dir="ltr">> This would be sort of a pain for me because my Skylake is still one that<br>
> needs this workaround but I guess I can just upgrade easily enough.<br>
><br>
> Regards,<br>
> - Neil<br>
><br>
> Ben Widawsky <<a href="mailto:benjamin.widawsky@intel.com">benjamin.widawsky@intel.com</a>> writes:<br>
><br>
> > We do not want bug reports from this early stepping of SKL. Few if any were ever<br>
> > shipped outside of Intel to early enabling partners, and none will be sold.<br>
> ><br>
> > There is a functional change here. If you're using new mesa on an old<br>
> > kernel/libdrm, the revid will be -1, and we'll use new SKL values instead of<br>
> > early ones (a hopefully irrelevant improvement IMO).<br>
> ><br>
> > Cc: Jason Ekstrand <<a href="mailto:jason@jlekstrand.net">jason@jlekstrand.net</a>><br>
> > Cc: Neil Roberts <<a href="mailto:neil@linux.intel.com">neil@linux.intel.com</a>><br>
> > Signed-off-by: Ben Widawsky <<a href="mailto:ben@bwidawsk.net">ben@bwidawsk.net</a>><br>
> > ---<br>
> > src/mesa/drivers/dri/i965/brw_device_info.c | 15 +++++++--------<br>
> > 1 file changed, 7 insertions(+), 8 deletions(-)<br>
> ><br>
> > diff --git a/src/mesa/drivers/dri/i965/brw_device_info.c b/src/mesa/drivers/dri/i965/brw_device_info.c<br>
> > index be517e8..fc89221 100644<br>
> > --- a/src/mesa/drivers/dri/i965/brw_device_info.c<br>
> > +++ b/src/mesa/drivers/dri/i965/brw_device_info.c<br>
> > @@ -322,10 +322,7 @@ static const struct brw_device_info brw_device_info_chv = {<br>
> > .max_gs_entries = 640, \<br>
> > }<br>
> ><br>
> > -static const struct brw_device_info brw_device_info_skl_early = {<br>
> > - GEN9_FEATURES, .gt = 1,<br>
> > - .supports_simd16_3src = false,<br>
> > -};<br>
> > +#define IS_SKL(devinfo) ((devinfo)->gen == 9 && !(devinfo)->is_broxton)<br>
> ><br>
> > static const struct brw_device_info brw_device_info_skl_gt1 = {<br>
> > GEN9_FEATURES, .gt = 1,<br>
> > @@ -376,10 +373,12 @@ brw_get_device_info(int devid, int revision)<br>
> > return NULL;<br>
> > }<br>
> ><br>
> > - if (devinfo->gen == 9 &&<br>
> > - !devinfo->is_broxton &&<br>
> > - (revision == 2 || revision == 3 || revision == -1))<br>
> > - return &brw_device_info_skl_early;<br>
> > + if (IS_SKL(devinfo) && (revision != -1 && revision <= 3)) {<br>
> > + fprintf(stderr,<br>
> > + "i965_dri.so does not support this PCI ID with revision %d.\n",<br>
> > + revision);<br>
> > + return NULL;<br>
> > + }<br>
> ><br>
> > return devinfo;<br>
> > }<br>
> > --<br>
> > 2.5.0<br>
</p>