3 * by yinghai.lu@amd.com
6 #include <console/console.h>
7 #include <device/device.h>
8 #include <device/pci.h>
9 #include <device/pci_ids.h>
10 #include <device/pci_ops.h>
13 static void bcm5785_ide_read_resources(device_t dev)
18 /* Get the normal pci resources of this device */
19 pci_dev_read_resources(dev);
22 pci_get_resource(dev, 0x64);
24 compact_resources(dev);
27 static void ide_init(struct device *dev)
34 static void lpci_set_subsystem(device_t dev, unsigned vendor, unsigned device)
36 pci_write_config32(dev, 0x40,
37 ((device & 0xffff) << 16) | (vendor & 0xffff));
39 static struct pci_operations lops_pci = {
40 .set_subsystem = lpci_set_subsystem,
43 static struct device_operations ide_ops = {
44 .read_resources = bcm5785_ide_read_resources,
45 .set_resources = pci_dev_set_resources,
46 .enable_resources = pci_dev_enable_resources,
49 // .enable = bcm5785_enable,
53 static const struct pci_driver ide_driver __pci_driver = {
55 .vendor = PCI_VENDOR_ID_SERVERWORKS,
56 .device = PCI_DEVICE_ID_SERVERWORKS_BCM5785_IDE,