mirror of
https://github.com/hardkernel/linux.git
synced 2026-06-05 10:31:46 +09:00
video: rockchip: vehicle: dts config virtual channel support
Signed-off-by: Wang Panzhenzhuan <randy.wang@rock-chips.com> Change-Id: I72d08995ebe700555617fba2554f0587145da70c
This commit is contained in:
committed by
Tao Huang
parent
2d31a747d3
commit
03955f9e63
@@ -3221,7 +3221,10 @@ static int vehicle_cif_stream_start(struct vehicle_cif *cif)
|
||||
|
||||
/* just need init virtual channel 0 */
|
||||
channel = &cif->channels[0];
|
||||
channel->id = 0;
|
||||
channel->id = cif->vc;
|
||||
|
||||
VEHICLE_INFO("@%s channel->id: %d.\n", __func__, channel->id);
|
||||
|
||||
vehicle_cif_csi_channel_init(cif, channel);
|
||||
if (cif->chip_id < CHIP_RK3588_VEHICLE_CIF)
|
||||
vehicle_cif_csi_channel_set(cif, channel, V4L2_MBUS_CSI2_DPHY);
|
||||
@@ -5118,12 +5121,20 @@ static int cif_parse_dt(struct vehicle_cif *cif)
|
||||
VEHICLE_INFO("%s:Get cif, drop-frames failed!\n", __func__);
|
||||
cif->drop_frames = 0; //default drop frames;
|
||||
}
|
||||
|
||||
if (of_property_read_u32(dev->of_node, "cif,chip-id",
|
||||
&cif->chip_id)) {
|
||||
VEHICLE_INFO("%s:Get cif, chip_id failed!\n", __func__);
|
||||
cif->chip_id = CHIP_RK3588_VEHICLE_CIF; //default rk3588;
|
||||
}
|
||||
if (of_property_read_u32(dev->of_node, "cif,virtual-channel",
|
||||
&cif->vc)) {
|
||||
VEHICLE_INFO("%s:Get cif, virtual-channel failed!\n", __func__);
|
||||
cif->vc = 0; //default virtual channel;
|
||||
}
|
||||
if ((cif->vc < 0) || (cif->vc > 3)) {
|
||||
VEHICLE_DGERR("virtual-channel over range, use default 0!\n");
|
||||
cif->vc = 0;
|
||||
}
|
||||
|
||||
cif_node = of_parse_phandle(dev->of_node, "rockchip,cif", 0);
|
||||
cif->base = (char *)of_iomap(cif_node, 0);
|
||||
|
||||
@@ -134,6 +134,7 @@ struct vehicle_cif {
|
||||
struct csi2_dphy_hw *dphy_hw;
|
||||
int num_channels;
|
||||
int chip_id;
|
||||
int vc;
|
||||
int inf_id;
|
||||
unsigned int csi_host_idx;
|
||||
struct vehicle_csi_channel_info channels[RKCIF_MAX_CSI_CHANNEL];
|
||||
|
||||
Reference in New Issue
Block a user