SPRACD8 June 2019 DRA710 , DRA712 , DRA714 , DRA716 , DRA718 , DRA722 , DRA724 , DRA725 , DRA726 , DRA745 , DRA746 , DRA74P , DRA750 , DRA756 , DRA75P , DRA76P , DRA77P , DRA780 , DRA781 , DRA782 , DRA783 , DRA786 , DRA787 , DRA790 , DRA791 , DRA793 , DRA797 , TDA2EG-17 , TDA2HF , TDA2HG , TDA2HV , TDA2LF , TDA2P-ABZ , TDA2P-ACD , TDA2SA , TDA2SG , TDA2SX
vip1 {
#address-cells = <1>;
#size-cells = <0>;
ports {
vin1a: port@1A {
reg = <0>;
#address-cells = <1>;
endpoint@0 {
remote-endpoint = <&cam1>;
};
};
vin2a: port@1A {
...
};
...
};
};
The above snippet describes the SoC VIP1 instance. It creates endpoint nodes for each of the video ports available for that instance. By default, all the port nodes are empty, so it is not associated with any cameras. Certain port nodes need to be populated when a new camera gets interfaced to that port. Both endpoint nodes are cross referenced in the device tree.
Table 1 describes exact names of the ports (this also matches the Technical Reference Manual (TRM) terminology) for each instance.
Endpoint Name | VIP Instance | Slice | Port Name |
---|---|---|---|
vin1a | VIP1 | slice0 | port A |
vin1b | VIP1 | slice0 | port B |
vin2a | VIP1 | slice1 | port A |
vin2b | VIP1 | slice1 | port B |
vin3a | VIP1 | slice0 | port A |
vin3b | VIP1 | slice0 | port B |
vin4a | VIP1 | slice1 | port A |
vin4b | VIP1 | slice1 | port B |
vin5a | VIP1 | slice0 | port A |
vin6a | VIP1 | slice1 | port A |