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