xref: /dragonfly/sys/dev/drm/include/uapi/linux/pci_regs.h (revision 78973132)
1465fa37bSFrançois Tigeot /*
23f2dd94aSFrançois Tigeot  * Copyright (c) 2019-2020 François Tigeot <ftigeot@wolfpond.org>
3465fa37bSFrançois Tigeot  * All rights reserved.
4465fa37bSFrançois Tigeot  *
5465fa37bSFrançois Tigeot  * Redistribution and use in source and binary forms, with or without
6465fa37bSFrançois Tigeot  * modification, are permitted provided that the following conditions
7465fa37bSFrançois Tigeot  * are met:
8465fa37bSFrançois Tigeot  * 1. Redistributions of source code must retain the above copyright
9465fa37bSFrançois Tigeot  *    notice unmodified, this list of conditions, and the following
10465fa37bSFrançois Tigeot  *    disclaimer.
11465fa37bSFrançois Tigeot  * 2. Redistributions in binary form must reproduce the above copyright
12465fa37bSFrançois Tigeot  *    notice, this list of conditions and the following disclaimer in the
13465fa37bSFrançois Tigeot  *    documentation and/or other materials provided with the distribution.
14465fa37bSFrançois Tigeot  *
15465fa37bSFrançois Tigeot  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
16465fa37bSFrançois Tigeot  * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
17465fa37bSFrançois Tigeot  * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
18465fa37bSFrançois Tigeot  * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
19465fa37bSFrançois Tigeot  * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
20465fa37bSFrançois Tigeot  * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
21465fa37bSFrançois Tigeot  * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
22465fa37bSFrançois Tigeot  * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
23465fa37bSFrançois Tigeot  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
24465fa37bSFrançois Tigeot  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
25465fa37bSFrançois Tigeot  */
26465fa37bSFrançois Tigeot 
27465fa37bSFrançois Tigeot #ifndef UAPI_LINUX_PCIREGS_H
28465fa37bSFrançois Tigeot #define UAPI_LINUX_PCIREGS_H
29465fa37bSFrançois Tigeot 
30465fa37bSFrançois Tigeot #define PCI_EXP_RTCAP		30
31465fa37bSFrançois Tigeot 
32465fa37bSFrançois Tigeot #define PCI_EXP_FLAGS		2
33465fa37bSFrançois Tigeot #define PCI_EXP_FLAGS_VERS	0x000f
34465fa37bSFrançois Tigeot #define PCI_EXP_FLAGS_TYPE	0x00f0
35465fa37bSFrançois Tigeot 
36465fa37bSFrançois Tigeot #define PCI_EXP_DEVCAP		4
37465fa37bSFrançois Tigeot 
38465fa37bSFrançois Tigeot #define PCI_EXP_LNKCAP		12
39465fa37bSFrançois Tigeot 
40465fa37bSFrançois Tigeot #define PCI_EXP_DEVCTL		8
41465fa37bSFrançois Tigeot #define PCI_EXP_DEVCTL2		40
42465fa37bSFrançois Tigeot 
43465fa37bSFrançois Tigeot #define PCI_EXP_LNKSTA		18
44465fa37bSFrançois Tigeot #define PCI_EXP_LNKSTA2		50
45465fa37bSFrançois Tigeot 
46465fa37bSFrançois Tigeot #define PCI_EXP_SLTCAP		20
47465fa37bSFrançois Tigeot 
48465fa37bSFrançois Tigeot #define PCI_CAP_ID_EXP		0x10
49465fa37bSFrançois Tigeot 
50465fa37bSFrançois Tigeot #define PCI_EXP_TYPE_ENDPOINT	0x0
51465fa37bSFrançois Tigeot #define PCI_EXP_TYPE_LEG_END	0x1
52465fa37bSFrançois Tigeot #define PCI_EXP_TYPE_ROOT_PORT	0x4
53465fa37bSFrançois Tigeot #define PCI_EXP_TYPE_DOWNSTREAM 0x6
54465fa37bSFrançois Tigeot #define PCI_EXP_TYPE_RC_EC	0xa
55465fa37bSFrançois Tigeot 
56465fa37bSFrançois Tigeot #define PCI_EXP_SLTCTL		24
57465fa37bSFrançois Tigeot 
58465fa37bSFrançois Tigeot #define PCI_EXP_SLTSTA		26
59465fa37bSFrançois Tigeot 
60465fa37bSFrançois Tigeot #define PCI_EXP_FLAGS_SLOT	0x0100
61465fa37bSFrançois Tigeot 
62465fa37bSFrançois Tigeot #define PCI_EXP_RTCTL		28
63465fa37bSFrançois Tigeot 
64465fa37bSFrançois Tigeot #define PCI_EXP_RTSTA		32
65465fa37bSFrançois Tigeot 
66465fa37bSFrançois Tigeot #define PCI_EXP_DEVCAP2		36
67465fa37bSFrançois Tigeot 
68465fa37bSFrançois Tigeot #define PCI_EXP_LNKCAP2		44
69465fa37bSFrançois Tigeot 
70465fa37bSFrançois Tigeot #define PCI_EXP_LNKCAP_MLW	0x000003f0
71465fa37bSFrançois Tigeot 
72*78973132SSergey Zigachev #define PCI_EXP_LNKCAP_SLS_2_5GB	0x01	/* Supported Link Speed 2.5GT/s */
73*78973132SSergey Zigachev #define PCI_EXP_LNKCAP_SLS_5_0GB	0x02	/* Supported Link Speed 5.0GT/s */
74*78973132SSergey Zigachev #define	PCI_EXP_LNKCAP_SLS_8_0GB	0x04	/* Supported Link Speed 8.0GT/s */
75*78973132SSergey Zigachev #define	PCI_EXP_LNKCAP_SLS_16_0GB	0x08	/* Supported Link Speed 16.0GT/s */
763f2dd94aSFrançois Tigeot 
773f2dd94aSFrançois Tigeot #define PCI_EXP_LNKCAP2_SLS_2_5GB	0x02	/* Supported Link Speed 2.5GT/s */
783f2dd94aSFrançois Tigeot #define PCI_EXP_LNKCAP2_SLS_5_0GB	0x04	/* Supported Link Speed 5.0GT/s */
793f2dd94aSFrançois Tigeot #define PCI_EXP_LNKCAP2_SLS_8_0GB	0x08	/* Supported Link Speed 8.0GT/s */
80*78973132SSergey Zigachev #define PCI_EXP_LNKCAP2_SLS_16_0GB	0x10	/* Supported Link Speed 16.0GT/s */
813f2dd94aSFrançois Tigeot 
82465fa37bSFrançois Tigeot #endif /* UAPI_LINUX_PCIREGS_H */
83