summaryrefslogtreecommitdiffstatshomepage
path: root/src
diff options
context:
space:
mode:
author yz70s <yz70s@users.noreply.github.com>2017-04-20 00:01:22 +0200
committer yz70s <yz70s@users.noreply.github.com>2017-04-20 00:04:16 +0200
commit61eba47cfbc63882ad15465908e664c39ea72647 (patch)
treed914eecd228be5533d90d47ab5113940723cdc29 /src
parent5890214f0f1d9ada8c3b0ac43f9a0d487e2f8f5d (diff)
pci-usb.cpp: add placeholder for OHCI device (nw)
Diffstat (limited to 'src')
-rw-r--r--src/devices/machine/pci-usb.cpp20
-rw-r--r--src/devices/machine/pci-usb.h16
2 files changed, 36 insertions, 0 deletions
diff --git a/src/devices/machine/pci-usb.cpp b/src/devices/machine/pci-usb.cpp
index f2f714e4612..1bcdeb0e72a 100644
--- a/src/devices/machine/pci-usb.cpp
+++ b/src/devices/machine/pci-usb.cpp
@@ -3,9 +3,29 @@
#include "emu.h"
#include "pci-usb.h"
+const device_type USB_OHCI = device_creator<usb_ohci_device>;
const device_type USB_UHCI = device_creator<usb_uhci_device>;
const device_type USB_EHCI = device_creator<usb_ehci_device>;
+DEVICE_ADDRESS_MAP_START(map, 32, usb_ohci_device)
+ADDRESS_MAP_END
+
+usb_ohci_device::usb_ohci_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
+ : pci_device(mconfig, USB_OHCI, "USB 1.1 OHCI interface", tag, owner, clock, "usb_ohci", __FILE__)
+{
+}
+
+void usb_ohci_device::device_start()
+{
+ pci_device::device_start();
+ add_map(4096, M_MEM, FUNC(usb_ohci_device::map));
+}
+
+void usb_ohci_device::device_reset()
+{
+ pci_device::device_reset();
+}
+
DEVICE_ADDRESS_MAP_START(map, 32, usb_uhci_device)
ADDRESS_MAP_END
diff --git a/src/devices/machine/pci-usb.h b/src/devices/machine/pci-usb.h
index 49b94200bb8..2fc5b3ef396 100644
--- a/src/devices/machine/pci-usb.h
+++ b/src/devices/machine/pci-usb.h
@@ -5,12 +5,27 @@
#include "pci.h"
+#define MCFG_USB_OHCI_ADD(_tag, _main_id, _revision, _subdevice_id) \
+ MCFG_PCI_DEVICE_ADD(_tag, USB_OHCI, _main_id, _revision, 0x0c0310, _subdevice_id)
+
#define MCFG_USB_UHCI_ADD(_tag, _main_id, _revision, _subdevice_id) \
MCFG_PCI_DEVICE_ADD(_tag, USB_UHCI, _main_id, _revision, 0x0c0300, _subdevice_id)
#define MCFG_USB_EHCI_ADD(_tag, _main_id, _revision, _subdevice_id) \
MCFG_PCI_DEVICE_ADD(_tag, USB_EHCI, _main_id, _revision, 0x0c0320, _subdevice_id)
+class usb_ohci_device : public pci_device {
+public:
+ usb_ohci_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
+
+protected:
+ virtual void device_start() override;
+ virtual void device_reset() override;
+
+private:
+ DECLARE_ADDRESS_MAP(map, 32);
+};
+
class usb_uhci_device : public pci_device {
public:
usb_uhci_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
@@ -35,6 +50,7 @@ private:
DECLARE_ADDRESS_MAP(map, 32);
};
+extern const device_type USB_OHCI;
extern const device_type USB_UHCI;
extern const device_type USB_EHCI;