summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/bus/lpci/pci.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/devices/bus/lpci/pci.cpp')
-rw-r--r--src/devices/bus/lpci/pci.cpp10
1 files changed, 4 insertions, 6 deletions
diff --git a/src/devices/bus/lpci/pci.cpp b/src/devices/bus/lpci/pci.cpp
index 3c2f6b2a990..4a9ccaa1da7 100644
--- a/src/devices/bus/lpci/pci.cpp
+++ b/src/devices/bus/lpci/pci.cpp
@@ -91,7 +91,8 @@ DEFINE_DEVICE_TYPE(PCI_BUS, pci_bus_device, "pci_bus", "PCI Bus")
//-------------------------------------------------
pci_bus_device::pci_bus_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) :
device_t(mconfig, PCI_BUS, tag, owner, clock), m_busnum(0),
- m_father(nullptr), m_address(0), m_devicenum(0), m_busnumber(0), m_busnumaddr(nullptr)
+ m_father(nullptr), m_address(0), m_devicenum(0), m_busnumber(0), m_busnumaddr(nullptr),
+ m_pcifather(*this, finder_base::DUMMY_TAG)
{
for (auto & elem : m_devtag) {
elem= nullptr;
@@ -284,11 +285,8 @@ void pci_bus_device::device_start()
m_device[i] = nullptr;
}
- if (m_father != nullptr) {
- pci_bus_device *father = machine().device<pci_bus_device>(m_father);
- if (father)
- father->add_sibling(this, m_busnum);
- }
+ if (m_pcifather.found())
+ m_pcifather->add_sibling(this, m_busnum);
/* register pci states */
save_item(NAME(m_address));