← Documents Documentation/ABI/testing/configfs-spear-pcie-gadget GitHub 원문 ↗

Linux 6.18.37 · ABI / testing

SPEAr PCIe gadget configfs testing ABI

SPEAr dual-mode PCIe controller를 device로 구성하고 LTSSM link, INTA·MSI, vendor/device ID 및 BAR0 mapping을 제어하는 configfs node를 설명합니다.

Source pathDocumentation/ABI/testing/configfs-spear-pcie-gadget
Source versionLinux v6.18.37
TranslationDUJINLABS 전문 번역 + 해설

요약·해설과 원문, 전문 번역을 서로 분리했습니다. API 이름, symbol, source path는 원문 표기를 사용합니다.

1. 요약·해설

원문의 핵심 논리와 kernel programming 관점의 보충 설명입니다. 아래의 전문 번역과는 별도로 작성했습니다.

Dual-mode controller의 PCIe device 구성

configfs-spear-pcie-gadget:1-17

Configfs를 mount한 뒤 선택한 dual-mode PCIe controller를 device mode로 구성하고 register를 program해 특정 device type으로 만듭니다.

Controller별 link, interrupt, identity와 BAR0 node

configfs-spear-pcie-gadget:19-33

/config/pcie-gadget.n 아래 node에서 LTSSM 상태, interrupt 유형과 vector, PCI ID, BAR0 크기·주소·offset·data를 읽거나 설정합니다.

2. 영어 원문 전체

번역 기준이 된 Linux v6.18.37 원문입니다. 줄 번호는 이 버전의 파일 좌표입니다.

원문 전체 펼치기
1 What: /config/pcie-gadget
2 Date: Feb 2011
3 KernelVersion: 2.6.37
4 Contact: Pratyush Anand <[email protected]>
5 Description:
6
7 Interface is used to configure selected dual mode PCIe controller
8 as device and then program its various registers to configure it
9 as a particular device type.
10 This interfaces can be used to show spear's PCIe device capability.
11
12 Nodes are only visible when configfs is mounted. To mount configfs
13 in /config directory use::
14
15 # mount -t configfs none /config/
16
17 For nth PCIe Device Controller /config/pcie-gadget.n/:
18
19 =============== ======================================================
20 link used to enable ltssm and read its status.
21 int_type used to configure and read type of supported interrupt
22 no_of_msi used to configure number of MSI vector needed and
23 to read no of MSI granted.
24 inta write 1 to assert INTA and 0 to de-assert.
25 send_msi write MSI vector to be sent.
26 vendor_id used to write and read vendor id (hex)
27 device_id used to write and read device id (hex)
28 bar0_size used to write and read bar0_size
29 bar0_address used to write and read bar0 mapped area in hex.
30 bar0_rw_offset used to write and read offset of bar0 where bar0_data
31 will be written or read.
32 bar0_data used to write and read data at bar0_rw_offset.
33 =============== ======================================================
34

3. 한국어 전문 번역

영어 원문의 문단 순서와 의미를 유지한 전체 번역입니다. 코드, 함수명, symbol과 URL은 원문 표기를 유지합니다.

SPEAr dual-mode PCIe controller의 device mode 구성

1-17
항목내용
What/config/pcie-gadget
Date2011년 2월
KernelVersion2.6.37
ContactPratyush Anand <[email protected]>

이 interface는 선택한 dual-mode PCIe controller를 device로 구성한 다음, 여러 register를 program해 특정 device type으로 설정하는 데 사용한다. 이 interface로 SPEAr의 PCIe device capability를 보여줄 수 있다.

Node는 configfs가 mount되어 있을 때만 보인다. `/config` directory에 configfs를 mount하려면 다음 명령을 사용한다.

# mount -t configfs none /config/

N번째 PCIe Device Controller의 node는 `/config/pcie-gadget.n/` 아래에 있다.

PCIe gadget controller node

19-33
Node설명
linkLTSSM을 활성화하고 그 상태를 읽는 데 사용한다.
int_type지원하는 interrupt type을 구성하고 읽는 데 사용한다.
no_of_msi필요한 MSI vector 수를 구성하고 승인된 MSI 수를 읽는 데 사용한다.
inta`1`을 쓰면 INTA를 assert하고 `0`을 쓰면 deassert한다.
send_msi전송할 MSI vector를 쓴다.
vendor_idHexadecimal vendor ID를 쓰고 읽는 데 사용한다.
device_idHexadecimal device ID를 쓰고 읽는 데 사용한다.
bar0_sizeBAR0 크기를 쓰고 읽는 데 사용한다.
bar0_addressBAR0가 map된 영역을 hexadecimal로 쓰고 읽는 데 사용한다.
bar0_rw_offsetbar0_data를 쓰거나 읽을 BAR0 내부 offset을 쓰고 읽는 데 사용한다.
bar0_databar0_rw_offset 위치의 data를 쓰고 읽는 데 사용한다.
pcie-gadget.n의 control surface
/config/pcie-gadget.nlinkLTSSM enable 및 status
/config/pcie-gadget.nint_type / no_of_msiInterrupt 유형 및 MSI vector 수inta 또는 send_msiINTA assert/deassert 또는 MSI 전송
/config/pcie-gadget.nvendor_id / device_idPCI device identity
/config/pcie-gadget.nbar0_size / bar0_addressBAR0 mappingbar0_rw_offsetbar0_data read/write

하나의 PCIe Device Controller directory에서 link, interrupt, identity, BAR0 access를 독립된 node 집합으로 구성한다.