summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorChris Wilson <chris@chris-wilson.co.uk>2013-07-25 23:19:02 +0100
committerChris Wilson <chris@chris-wilson.co.uk>2013-07-28 14:49:06 +0100
commit4c6871684b0006a89be6760db99fda9b47790226 (patch)
tree429293807542e3dec2ceaa213dc6e7e98609ca6b /src
parentb6bcb7ae20b92e48b8a2fa096c0e33b6b97b1b30 (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.c18
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,