blob: ff06b0204c64590f52790dfa87bfc53f5cfc78b8 [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
3#ifndef _PI_HUDSON_PCI_DEVS_H_
4#define _PI_HUDSON_PCI_DEVS_H_
5
Elyes HAOUAS8ccc8fd2020-10-01 10:59:56 +02006#include <device/pci_def.h>
7
Kyösti Mälkkie8b4da22014-10-21 18:22:32 +03008/* XHCI */
Marshall Dawsonc1f32332017-04-21 13:54:08 -06009#define XHCI_DEV 0x10
10#define XHCI_FUNC 0
Elyes HAOUAS8ccc8fd2020-10-01 10:59:56 +020011#define XHCI_DEVFN PCI_DEVFN(XHCI_DEV, XHCI_FUNC)
Kyösti Mälkkie8b4da22014-10-21 18:22:32 +030012
Marshall Dawsonc1f32332017-04-21 13:54:08 -060013#define XHCI2_DEV 0x10
14#define XHCI2_FUNC 1
Elyes HAOUAS8ccc8fd2020-10-01 10:59:56 +020015#define XHCI2_DEVFN PCI_DEVFN(XHCI2_DEV, XHCI2_FUNC)
Dave Frodin9cfa7422015-01-27 07:19:48 -070016
Kyösti Mälkkie8b4da22014-10-21 18:22:32 +030017/* SATA */
Marshall Dawsonc1f32332017-04-21 13:54:08 -060018#define SATA_DEV 0x11
19#define SATA_FUNC 0
20#define SATA_IDE_DEVID 0x7800
21#define AHCI_DEVID_MS 0x7801
22#define AHCI_DEVID_AMD 0x7804
Elyes HAOUAS8ccc8fd2020-10-01 10:59:56 +020023#define SATA_DEVFN PCI_DEVFN(SATA_DEV, SATA_FUNC)
Kyösti Mälkkie8b4da22014-10-21 18:22:32 +030024
25/* OHCI */
Marshall Dawsonc1f32332017-04-21 13:54:08 -060026#define OHCI1_DEV 0x12
27#define OHCI1_FUNC 0
28#define OHCI2_DEV 0x13
29#define OHCI2_FUNC 0
30#define OHCI3_DEV 0x16
31#define OHCI3_FUNC 0
32#define OHCI4_DEV 0x14
33#define OHCI4_FUNC 5
Elyes HAOUAS8ccc8fd2020-10-01 10:59:56 +020034#define OHCI1_DEVFN PCI_DEVFN(OHCI1_DEV, OHCI1_FUNC)
35#define OHCI2_DEVFN PCI_DEVFN(OHCI2_DEV, OHCI2_FUNC)
36#define OHCI3_DEVFN PCI_DEVFN(OHCI3_DEV, OHCI3_FUNC)
37#define OHCI4_DEVFN PCI_DEVFN(OHCI4_DEV, OHCI4_FUNC)
Kyösti Mälkkie8b4da22014-10-21 18:22:32 +030038
39/* EHCI */
Marshall Dawsonc1f32332017-04-21 13:54:08 -060040#define EHCI1_DEV 0x12
41#define EHCI1_FUNC 2
42#define EHCI2_DEV 0x13
43#define EHCI2_FUNC 2
44#define EHCI3_DEV 0x16
45#define EHCI3_FUNC 2
Elyes HAOUAS8ccc8fd2020-10-01 10:59:56 +020046#define EHCI1_DEVFN PCI_DEVFN(EHCI1_DEV, EHCI1_FUNC)
47#define EHCI2_DEVFN PCI_DEVFN(EHCI2_DEV, EHCI2_FUNC)
48#define EHCI3_DEVFN PCI_DEVFN(EHCI3_DEV, EHCI3_FUNC)
Kyösti Mälkkie8b4da22014-10-21 18:22:32 +030049
50/* SMBUS */
Marshall Dawsonc1f32332017-04-21 13:54:08 -060051#define SMBUS_DEV 0x14
52#define SMBUS_FUNC 0
Elyes HAOUAS8ccc8fd2020-10-01 10:59:56 +020053#define SMBUS_DEVFN PCI_DEVFN(SMBUS_DEV, SMBUS_FUNC)
Kyösti Mälkkie8b4da22014-10-21 18:22:32 +030054
55/* HD Audio */
Marshall Dawsonc1f32332017-04-21 13:54:08 -060056#define HDA_DEV 0x14
57#define HDA_FUNC 2
Elyes HAOUAS8ccc8fd2020-10-01 10:59:56 +020058#define HDA_DEVFN PCI_DEVFN(HDA_DEV, HDA_FUNC)
Kyösti Mälkkie8b4da22014-10-21 18:22:32 +030059
60/* LPC BUS */
Marshall Dawsonc1f32332017-04-21 13:54:08 -060061#define PCU_DEV 0x14
Philipp Deppenwiese30670122017-03-01 02:24:33 +010062#define LPC_DEV PCU_DEV
Marshall Dawsonc1f32332017-04-21 13:54:08 -060063#define LPC_FUNC 3
Elyes HAOUAS8ccc8fd2020-10-01 10:59:56 +020064#define LPC_DEVFN PCI_DEVFN(LPC_DEV, LPC_FUNC)
Kyösti Mälkkie8b4da22014-10-21 18:22:32 +030065
66/* PCI Ports */
Marshall Dawsonc1f32332017-04-21 13:54:08 -060067#define SB_PCI_PORT_DEV 0x14
68#define SB_PCI_PORT_FUNC 4
Elyes HAOUAS8ccc8fd2020-10-01 10:59:56 +020069#define SB_PCI_PORT_DEVFN PCI_DEVFN(SB_PCI_PORT_DEV, SB_PCI_PORT_FUNC)
Kyösti Mälkkie8b4da22014-10-21 18:22:32 +030070
71/* SD Controller */
Marshall Dawsonc1f32332017-04-21 13:54:08 -060072#define SD_DEV 0x14
73#define SD_FUNC 7
Elyes HAOUAS8ccc8fd2020-10-01 10:59:56 +020074#define SD_DEVFN PCI_DEVFN(SD_DEV, SD_FUNC)
Kyösti Mälkkie8b4da22014-10-21 18:22:32 +030075
Kyösti Mälkkie8b4da22014-10-21 18:22:32 +030076#endif /* _PI_HUDSON_PCI_DEVS_H_ */