1.. SPDX-License-Identifier: GPL-2.0
2.. include:: ../disclaimer-zh_CN.rst
3
4:Original: Documentation/PCI/sysfs-pci.rst
5
6:������:
7
8 ��������� Yanteng Si <siyanteng@loongson.cn>
9
10:������:
11
12
13
14========================
15������sysfs������PCI������������
16========================
17
18sysfs������������������/sys������������������������������������PCI������������������������������������������������������������
19������������::
20
21     /sys/devices/pci0000:17
22     |-- 0000:17:00.0
23     |   |-- class
24     |   |-- config
25     |   |-- device
26     |   |-- enable
27     |   |-- irq
28     |   |-- local_cpus
29     |   |-- remove
30     |   |-- resource
31     |   |-- resource0
32     |   |-- resource1
33     |   |-- resource2
34     |   |-- revision
35     |   |-- rom
36     |   |-- subsystem_device
37     |   |-- subsystem_vendor
38     |   `-- vendor
39     `-- ...
40
41���������������������������PCI���������������������������������������������������0000���������������17������������������������������������
42���������������0���������������������������������������������������������������������������������������������������������������������������
43���������������������������������������������������������
44
45       =================== =====================================================
46       ������		           ������
47       =================== =====================================================
48       class		       PCI������ (ascii, ro)
49       config		       PCI������������ (binary, rw)
50       device		       PCI������ (ascii, ro)
51       enable	           ��������������������� (ascii, rw)
52       irq		           IRQ������ (ascii, ro)
53       local_cpus	       ������CPU������(cpumask, ro)
54       remove		       ��������������������������������� (ascii, wo)
55       resource		       PCI������������������ (ascii, ro)
56       resource0..N	       PCI������N��������������������� (binary, mmap, rw\ [1]_)
57       resource0_wc..N_wc  PCI WC������������N������������������������ (binary, mmap)
58       revision		       PCI��������� (ascii, ro)
59       rom		           PCI ROM��������������������������� (binary, ro)
60       subsystem_device	   PCI��������������� (ascii, ro)
61       subsystem_vendor	   PCI������������������ (ascii, ro)
62       vendor		       PCI��������� (ascii, ro)
63       =================== =====================================================
64
65::
66
67  ro - ������������
68  rw - ���������������������������
69  wo - ������������
70  mmap - ���������������������
71  ascii - ������������ascii������
72  binary - ���������������������������
73  cpumask - ������������������cpumask���������
74
75.. [1] rw ������������ IORESOURCE_IO���I/O ���������������
76
77������������������������������������������������������������������ "rom "������������������������������������������������������
78������������������������������������������������������������ mmapable������������������������������0������������mmap���������
79������������������������������������������������������������������������������������������������������mmapping������������������
80���������������������mmap������������������������������������������I/O������������������������������/������������
81
82enable "���������������������������������������������������������������������������������'enable'������������������'4'���
83���������'1'���������������������������'5'���������������������'0'���������������������������������������������0���������������
84������������������������������
85
86rom "���������������������������������������������ROM���������������������������������������������������������������������������
87��������������������������������������������������������������������������� "1 "���������������������������������������������������
88"0 "���������������������������������������������������������������������������������������������������������������������������������
89��������������������������������� "enable "���������������������
90
91remove "���������������������PCI������������������������������������������������������������������������������������������������
92������������������������������������������������������������������PCI������������������������������sysfs���������������������������
93������������������������������������������������������������������PCI���������������������������
94
95������sysfs������������������
96---------------------
97
98������������������������������������������I/O���������ISA���������������������sysfs������������������������PCI������������������
99������������::
100
101	/sys/class/pci_bus/0000:17/
102	|-- bridge -> ../../../devices/pci0000:17
103	|-- cpuaffinity
104	|-- legacy_io
105	`-- legacy_mem
106
107legacy_io������������������/���������������������������������������������������������I/O������������������������������������������
108���������������������������0x3e8���������������1���2���4���������������������legacy_mem���������������mmapped������������
109������������������������������������������������0xa0000������VGA���������������������������������������������������������������������
110������������������������������������������������������������������������������
111
112���������������������PCI������
113---------------------
114
115���������������������PCI���������������Linux������������������������ARCH_GENERIC_PCI_MMAP_RESOURCE������������
116������������������������������������������/proc/bus/pci������������������mmap()���������������������������������������
117HAVE_PCI_MMAP���
118
119������������������ HAVE_PCI_MMAP ������������������������������������ pci_mmap_page_range() ���������������������
120��� ARCH_GENERIC_PCI_MMAP_RESOURCE���
121
122������PCI���������������������������������������������arch_can_pci_mmap_wc()���������������������������������������������
123������������������������I/O���������������������������������arch_can_pci_mmap_io()���
124
125���������������HAVE_PCI_LEGACY������������������������������������������������������������������������ pci_legacy_read,
126pci_legacy_write ��� pci_mmap_legacy_page_range ���������
127