blob: 33183495578d0ab761f173f59e3b8f2ae7388acc [file] [log] [blame]
Angel Pons182dbde2020-04-02 23:49:05 +02001/* SPDX-License-Identifier: GPL-2.0-only */
Kyösti Mälkkie8b4da22014-10-21 18:22:32 +03002
Kyösti Mälkkie8b4da22014-10-21 18:22:32 +03003#include <device/device.h>
4#include <device/pci.h>
5#include <device/pci_ids.h>
Kyösti Mälkkie8b4da22014-10-21 18:22:32 +03006#include <device/pci_ehci.h>
Kyösti Mälkkie8b4da22014-10-21 18:22:32 +03007#include "hudson.h"
8
9static struct pci_operations lops_pci = {
10 .set_subsystem = pci_dev_set_subsystem,
11};
12
13static void usb_init(struct device *dev)
14{
15}
16
17static struct device_operations usb_ops = {
18 .read_resources = pci_ehci_read_resources,
19 .set_resources = pci_dev_set_resources,
20 .enable_resources = pci_dev_enable_resources,
21 .init = usb_init,
Kyösti Mälkkie8b4da22014-10-21 18:22:32 +030022 .ops_pci = &lops_pci,
23};
24
WANG Siyuanf2dfef02015-05-20 14:41:01 +080025static const unsigned short pci_device_ids[] = {
Kyösti Mälkki9d9a5522016-11-19 22:14:59 +020026 PCI_DEVICE_ID_AMD_SB900_USB_18_0,
27 PCI_DEVICE_ID_AMD_SB900_USB_18_2,
28 PCI_DEVICE_ID_AMD_SB900_USB_20_5,
WANG Siyuanf2dfef02015-05-20 14:41:01 +080029 PCI_DEVICE_ID_AMD_CZ_USB_0,
30 PCI_DEVICE_ID_AMD_CZ_USB_1,
zbaob0c68172015-08-26 22:29:07 -040031 PCI_DEVICE_ID_AMD_CZ_USB3_0,
WANG Siyuanf2dfef02015-05-20 14:41:01 +080032 0
33};
34
Kyösti Mälkkie8b4da22014-10-21 18:22:32 +030035static const struct pci_driver usb_0_driver __pci_driver = {
36 .ops = &usb_ops,
37 .vendor = PCI_VENDOR_ID_AMD,
WANG Siyuanf2dfef02015-05-20 14:41:01 +080038 .devices = pci_device_ids,
Kyösti Mälkkie8b4da22014-10-21 18:22:32 +030039};