if (dev_priv->ring.virtual_start)
                        drm_legacy_ioremapfree(&dev_priv->ring.map, dev);
                if (dev_priv->hw_status_page) {
-                       dma_free_coherent(&dev->pdev->dev, PAGE_SIZE,
+                       dma_free_coherent(dev->dev, PAGE_SIZE,
                                          dev_priv->hw_status_page,
                                          dev_priv->dma_status_page);
                }
 
        /* Program Hardware Status Page */
        dev_priv->hw_status_page =
-               dma_alloc_coherent(&dev->pdev->dev, PAGE_SIZE,
+               dma_alloc_coherent(dev->dev, PAGE_SIZE,
                                   &dev_priv->dma_status_page, GFP_KERNEL);
        if (!dev_priv->hw_status_page) {
                dev->dev_private = (void *)dev_priv;
 
 int i810_driver_load(struct drm_device *dev, unsigned long flags)
 {
+       struct pci_dev *pdev = to_pci_dev(dev->dev);
+
        dev->agp = drm_agp_init(dev);
        if (dev->agp) {
                dev->agp->agp_mtrr = arch_phys_wc_add(
        if (!dev->agp)
                return -EINVAL;
 
-       pci_set_master(dev->pdev);
+       pci_set_master(pdev);
 
        return 0;
 }