diff options
author | Ben Skeggs <bskeggs@redhat.com> | 2015-10-01 09:42:54 +1000 |
---|---|---|
committer | Ben Skeggs <bskeggs@redhat.com> | 2015-10-22 09:11:27 +1000 |
commit | 0ff94b2c716c2eeaca2047503a91c2c3f8cb302d (patch) | |
tree | bf7a300c30356b3067f2a89e11ef1f1a9dfc1ab2 | |
parent | f5491d0f1031e3657f15dafed0c3d2d02434c1ab (diff) | |
download | nouveau-0ff94b2c716c2eeaca2047503a91c2c3f8cb302d.tar.gz |
pci: prepare for chipset-specific initialisation tasks
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
-rw-r--r-- | drm/nouveau/nvkm/subdev/pci/base.c | 3 | ||||
-rw-r--r-- | drm/nouveau/nvkm/subdev/pci/priv.h | 1 |
2 files changed, 4 insertions, 0 deletions
diff --git a/drm/nouveau/nvkm/subdev/pci/base.c b/drm/nouveau/nvkm/subdev/pci/base.c index d1c148e51..21106223c 100644 --- a/drm/nouveau/nvkm/subdev/pci/base.c +++ b/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; diff --git a/drm/nouveau/nvkm/subdev/pci/priv.h b/drm/nouveau/nvkm/subdev/pci/priv.h index 473b8ab25..1acd4bc64 100644 --- a/drm/nouveau/nvkm/subdev/pci/priv.h +++ b/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); |