diff options
author | Chris Wilson <chris@chris-wilson.co.uk> | 2013-07-25 23:19:02 +0100 |
---|---|---|
committer | Chris Wilson <chris@chris-wilson.co.uk> | 2013-07-28 14:49:06 +0100 |
commit | 4c6871684b0006a89be6760db99fda9b47790226 (patch) | |
tree | 429293807542e3dec2ceaa213dc6e7e98609ca6b /src | |
parent | b6bcb7ae20b92e48b8a2fa096c0e33b6b97b1b30 (diff) |
intel: Cross-check an unnamed chipset against the list of known PCI-IDs
If we recognise the PCI-ID but do not have a marketing name for it, it
means we are deliberating ignoring it - presumably because it is an
engineering sample. In this case, we do not want to print out a warning
into the logfile so replace the "Unknown chipset" with some info
about the future product.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Diffstat (limited to 'src')
-rw-r--r-- | src/intel_module.c | 18 |
1 files changed, 17 insertions, 1 deletions
diff --git a/src/intel_module.c b/src/intel_module.c index ec309199..37ecb51f 100644 --- a/src/intel_module.c +++ b/src/intel_module.c @@ -293,7 +293,23 @@ intel_detect_chipset(ScrnInfoPtr scrn, } } if (name == NULL) { - xf86DrvMsg(scrn->scrnIndex, X_WARNING, "unknown chipset\n"); + int gen = 0; + + for (i = 0; intel_device_match[i].device_id != 0; i++) { + if (DEVICE_ID(pci) == intel_device_match[i].device_id) { + const struct intel_device_info *info = (void *)intel_device_match[i].match_data; + gen = info->gen >> 3; + break; + } + } + + if(gen) { + xf86DrvMsg(scrn->scrnIndex, from, + "gen%d engineering sample\n", gen); + } else { + xf86DrvMsg(scrn->scrnIndex, X_WARNING, + "Unknown chipset\n"); + } name = "unknown"; } else { xf86DrvMsg(scrn->scrnIndex, from, |