浏览代码

drm/nouveau/pci: prepare for chipset-specific initialisation tasks

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
Ben Skeggs 10 年之前
父节点
当前提交
779d16aacc
共有 2 个文件被更改,包括 4 次插入0 次删除
  1. 3 0
      drivers/gpu/drm/nouveau/nvkm/subdev/pci/base.c
  2. 1 0
      drivers/gpu/drm/nouveau/nvkm/subdev/pci/priv.h

+ 3 - 0
drivers/gpu/drm/nouveau/nvkm/subdev/pci/base.c

@@ -111,6 +111,9 @@ nvkm_pci_init(struct nvkm_subdev *subdev)
 			return ret;
 	}
 
+	if (pci->func->init)
+		pci->func->init(pci);
+
 	ret = request_irq(pdev->irq, nvkm_pci_intr, IRQF_SHARED, "nvkm", pci);
 	if (ret)
 		return ret;

+ 1 - 0
drivers/gpu/drm/nouveau/nvkm/subdev/pci/priv.h

@@ -7,6 +7,7 @@ int nvkm_pci_new_(const struct nvkm_pci_func *, struct nvkm_device *,
 		  int index, struct nvkm_pci **);
 
 struct nvkm_pci_func {
+	void (*init)(struct nvkm_pci *);
 	u32 (*rd32)(struct nvkm_pci *, u16 addr);
 	void (*wr08)(struct nvkm_pci *, u16 addr, u8 data);
 	void (*wr32)(struct nvkm_pci *, u16 addr, u32 data);