Add an Ethernet VF in the PCT Configuration
Add a new device in guest configuration into the drive_av PCT guest configuration. Specify the properties of the new ethernet virtual function.
Ethernet Virtual Function Structure
This is defined in the pct. A new virtual function configuration must be added to the guest configuration file.
-
nr_chan
- Description:
- Specifies the count of DMA channels assigned to the virtual machine.
- Values:
- EQOS: The rage is from 1 to 8 max
- MGBE: The rage id from 1 to 10 max
- Conditions:
- The minimum value should be 1.
- Description:
-
stream_id
- Description:
- SMMU Stream is to be used by the virtual function.
- Values:
- EQOS:
- Description:
TEGRA_SID_NISO1_EQOS,
TEGRA_SID_NISO1_EQOS_VF1 to TEGRA_SID_NISO1_EQOS_VF4
- MGBEL
TEGRA_SID_NISO0_MGBE,
TEGRA_SID_NISO0_MGBE_VF1 to TEGRA_SID_NISO0_MGBE_VF20
- Condition:
- Should not use the stream ID used by other VFs
-
Channel[]
- Description:
- DMA channels list that needs to be used by this VF
- Values:
- EQOS: List values should be in 0 to 3
- MGBE: List values should be in 0 to 4
- Conditions:
- Must be a unique value for the corresponding controller across all VF’s
- The size of the list has to nr_chan value
- It shouldn’t contain duplicate values
- Description:
-
vinfterface
- Description:
- IVC channel between Virtual Machine and Ethernet Server
- Values:
- “RESOURCE_POOL(429, 1)” to “RESOURCE_POOL(445, 1)”
- Conditions:
- Only one IVC channel per VF
- Must be a unique value for the corresponding controller across all VF’s
- Description:
-
vf_id
- Description:
- VF number for this device.
- Values:
- PCT_ETHERNET_VF_ID_1 to PCT_ETHERNET_VF_ID_5
- Conditions:
- For EQOS controller, max of four IDs are possible
- For MGBE controller, max of five IDs are possible
- In a given EQOS/MGBE port configuration, all VFs should have unique IDs
- Description:
Reference PCT Device Node:
.ethernet_cfg = {
{
.nr_chan = 1,
.stream_id = TEGRA_SID_NISO1_EQOS_VF2,
.channel[0] = 2,
.vinterface = {
.queues = RESOURCE_POOL(436, 1),
},
.vf_id = PCT_ETHERNET_VF_ID_3,
},
{
.nr_chan = 1,
.stream_id = TEGRA_SID_NISO1_EQOS_VF3,
.channel[0] = 3,
.vinterface = {
.queues = RESOURCE_POOL(437, 1),
},
.vf_id = PCT_ETHERNET_VF_ID_4,
},
},