From 418e54d46f3771b35517786aa6fe4fc56139d9a2 Mon Sep 17 00:00:00 2001 From: Benjamin Herrenschmidt Date: Sat, 11 Oct 2003 20:01:43 +0200 Subject: [PATCH] Fix RAMDAC detection on some IMS TwinTurbo video cards ("Mac" cards only), without this, you get no display on machines with those cards --- drivers/video/imsttfb.c | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/drivers/video/imsttfb.c b/drivers/video/imsttfb.c index a66a3664a9cb5..3c7c42213f898 100644 --- a/drivers/video/imsttfb.c +++ b/drivers/video/imsttfb.c @@ -1461,6 +1461,15 @@ imsttfb_probe(struct pci_dev *pdev, const struct pci_device_id *ent) unsigned long addr, size; struct imstt_par *par; struct fb_info *info; +#ifdef CONFIG_PPC_OF + struct device_node *dp; + + dp = pci_device_to_OF_node(pdev); + if(dp) + printk(KERN_INFO "%s: OF name %s\n",__FUNCTION__, dp->name); + else + printk(KERN_ERR "imsttfb: no OF node for pci device\n"); +#endif /* CONFIG_PPC_OF */ size = sizeof(struct fb_info) + sizeof(struct imstt_par) + sizeof(u32) * 16; @@ -1488,6 +1497,11 @@ imsttfb_probe(struct pci_dev *pdev, const struct pci_device_id *ent) switch (pdev->device) { case PCI_DEVICE_ID_IMS_TT128: /* IMS,tt128mbA */ par->ramdac = IBM; +#ifdef CONFIG_PPC_OF + if (dp && ((strcmp(dp->name, "IMS,tt128mb8") == 0) || + (strcmp(dp->name, "IMS,tt128mb8A") == 0))) + par->ramdac = TVP; +#endif /* CONFIG_PPC_OF */ break; case PCI_DEVICE_ID_IMS_TT3D: /* IMS,tt3d */ par->ramdac = TVP; -- 2.53.0