@@ -77,6 +77,17 @@ vsp1_entity_get_size() {
sed 's/.*\/\([0-9x]*\).*/\1/'
}
+vsp1_entity_set_format() {
+ local entity=$1
+ local pad=$2
+ local format=$3
+ local size=$4
+ shift 4
+ local options="$*"
+
+ $mediactl -d $mdev -V "'$dev $entity':$pad [fmt:$format/$size $options]"
+}
+
vsp1_has_control() {
local subdev=$(vsp1_entity_subdev $1)
local control_name=$(echo $2 | tr '+' ' ')
@@ -555,7 +566,7 @@ format_rpf() {
local size=$2
local rpf=$3
- $mediactl -d $mdev -V "'$dev rpf.$rpf':0 [fmt:$format/$size]"
+ vsp1_entity_set_format rpf.$rpf 0 $format $size
__vsp_rpf_format=$1
}
@@ -571,13 +582,13 @@ __format_rpf_brx() {
for input in `seq 0 1 $((ninputs-1))` ; do
offset=$((offset+50))
- $mediactl -d $mdev -V "'$dev rpf.$input':0 [fmt:$format/$size]"
- $mediactl -d $mdev -V "'$dev $name':$input [fmt:$format/$size compose:($offset,$offset)/$size]"
+ vsp1_entity_set_format rpf.$input 0 $format $size
+ vsp1_entity_set_format $name $input $format $size "compose:($offset,$offset)/$size"
done
- $mediactl -d $mdev -V "'$dev $name':$output [fmt:$format/$size]"
- $mediactl -d $mdev -V "'$dev wpf.0':0 [fmt:$format/$size]"
- $mediactl -d $mdev -V "'$dev wpf.0':1 [fmt:$format/$size]"
+ vsp1_entity_set_format $name $output $format $size
+ vsp1_entity_set_format wpf.0 0 $format $size
+ vsp1_entity_set_format wpf.0 1 $format $size
__vsp_rpf_format=$2
__vsp_wpf_format=$2
@@ -599,13 +610,13 @@ format_rpf_bru_uds() {
local bru_output=$(vsp1_count_bru_inputs)
- $mediactl -d $mdev -V "'$dev rpf.0':0 [fmt:$infmt/$insize]"
- $mediactl -d $mdev -V "'$dev bru':0 [fmt:$infmt/$insize]"
- $mediactl -d $mdev -V "'$dev bru':$bru_output [fmt:$infmt/$insize]"
- $mediactl -d $mdev -V "'$dev uds.0':0 [fmt:$infmt/$insize]"
- $mediactl -d $mdev -V "'$dev uds.0':1 [fmt:$infmt/$outsize]"
- $mediactl -d $mdev -V "'$dev wpf.0':0 [fmt:$infmt/$outsize]"
- $mediactl -d $mdev -V "'$dev wpf.0':1 [fmt:$outfmt/$outsize]"
+ vsp1_entity_set_format rpf.0 0 $infmt $insize
+ vsp1_entity_set_format bru 0 $infmt $insize
+ vsp1_entity_set_format bru $bru_output $infmt $insize
+ vsp1_entity_set_format uds.0 0 $infmt $insize
+ vsp1_entity_set_format uds.0 1 $infmt $outsize
+ vsp1_entity_set_format wpf.0 0 $infmt $outsize
+ vsp1_entity_set_format wpf.0 1 $outfmt $outsize
[ $insize != $outsize ] && __vsp_pixel_perfect=false
__vsp_rpf_format=$1
@@ -616,11 +627,11 @@ format_rpf_clu() {
local format=$(format_v4l2_to_mbus $1)
local size=$2
- $mediactl -d $mdev -V "'$dev rpf.0':0 [fmt:$format/$size]"
- $mediactl -d $mdev -V "'$dev clu':0 [fmt:$format/$size]"
- $mediactl -d $mdev -V "'$dev clu':1 [fmt:$format/$size]"
- $mediactl -d $mdev -V "'$dev wpf.0':0 [fmt:$format/$size]"
- $mediactl -d $mdev -V "'$dev wpf.0':1 [fmt:$format/$size]"
+ vsp1_entity_set_format rpf.0 0 $format $size
+ vsp1_entity_set_format clu 0 $format $size
+ vsp1_entity_set_format clu 1 $format $size
+ vsp1_entity_set_format wpf.0 0 $format $size
+ vsp1_entity_set_format wpf.0 1 $format $size
__vsp_rpf_format=$1
__vsp_wpf_format=$1
@@ -630,11 +641,11 @@ format_rpf_hst() {
local format=$(format_v4l2_to_mbus $1)
local size=$2
- $mediactl -d $mdev -V "'$dev rpf.0':0 [fmt:$format/$size]"
- $mediactl -d $mdev -V "'$dev hst':0 [fmt:$format/$size]"
- $mediactl -d $mdev -V "'$dev hst':1 [fmt:AHSV8888_1X32/$size]"
- $mediactl -d $mdev -V "'$dev wpf.0':0 [fmt:AHSV8888_1X32/$size]"
- $mediactl -d $mdev -V "'$dev wpf.0':1 [fmt:AHSV8888_1X32/$size]"
+ vsp1_entity_set_format rpf.0 0 $format $size
+ vsp1_entity_set_format hst 0 $format $size
+ vsp1_entity_set_format hst 1 AHSV8888_1X32 $size
+ vsp1_entity_set_format wpf.0 0 AHSV8888_1X32 $size
+ vsp1_entity_set_format wpf.0 1 AHSV8888_1X32 $size
__vsp_rpf_format=$1
__vsp_wpf_format=$3
@@ -646,10 +657,10 @@ format_rpf_hgo() {
local crop=${3:+crop:$3}
local compose=${4:+compose:$4}
- $mediactl -d $mdev -V "'$dev rpf.0':0 [fmt:$format/$size]"
- $mediactl -d $mdev -V "'$dev wpf.0':0 [fmt:$format/$size]"
- $mediactl -d $mdev -V "'$dev wpf.0':1 [fmt:$format/$size]"
- $mediactl -d $mdev -V "'$dev hgo':0 [fmt:$format/$size $crop $compose]"
+ vsp1_entity_set_format rpf.0 0 $format $size
+ vsp1_entity_set_format wpf.0 0 $format $size
+ vsp1_entity_set_format wpf.0 1 $format $size
+ vsp1_entity_set_format hgo 0 $format $size $crop $compose
__vsp_histo_type=hgo
__vsp_rpf_format=$1
@@ -662,12 +673,12 @@ format_rpf_hgt() {
local crop=${3:+crop:$3}
local compose=${4:+compose:$4}
- $mediactl -d $mdev -V "'$dev rpf.0':0 [fmt:$format/$size]"
- $mediactl -d $mdev -V "'$dev hst':0 [fmt:$format/$size]"
- $mediactl -d $mdev -V "'$dev hgt':0 [fmt:$format/$size $crop $compose]"
- $mediactl -d $mdev -V "'$dev hsi':0 [fmt:$format/$size]"
- $mediactl -d $mdev -V "'$dev wpf.0':0 [fmt:$format/$size]"
- $mediactl -d $mdev -V "'$dev wpf.0':1 [fmt:$format/$size]"
+ vsp1_entity_set_format rpf.0 0 $format $size
+ vsp1_entity_set_format hst 0 $format $size
+ vsp1_entity_set_format hgt 0 $format $size $crop $compose
+ vsp1_entity_set_format hsi 0 $format $size
+ vsp1_entity_set_format wpf.0 0 $format $size
+ vsp1_entity_set_format wpf.0 1 $format $size
__vsp_histo_type=hgt
__vsp_rpf_format=$1
@@ -678,11 +689,11 @@ format_rpf_lut() {
local format=$(format_v4l2_to_mbus $1)
local size=$2
- $mediactl -d $mdev -V "'$dev rpf.0':0 [fmt:$format/$size]"
- $mediactl -d $mdev -V "'$dev lut':0 [fmt:$format/$size]"
- $mediactl -d $mdev -V "'$dev lut':1 [fmt:$format/$size]"
- $mediactl -d $mdev -V "'$dev wpf.0':0 [fmt:$format/$size]"
- $mediactl -d $mdev -V "'$dev wpf.0':1 [fmt:$format/$size]"
+ vsp1_entity_set_format rpf.0 0 $format $size
+ vsp1_entity_set_format lut 0 $format $size
+ vsp1_entity_set_format lut 1 $format $size
+ vsp1_entity_set_format wpf.0 0 $format $size
+ vsp1_entity_set_format wpf.0 1 $format $size
__vsp_rpf_format=$1
__vsp_wpf_format=$1
@@ -694,11 +705,11 @@ format_rpf_uds() {
local outfmt=$(format_v4l2_to_mbus $3)
local outsize=$4
- $mediactl -d $mdev -V "'$dev rpf.0':0 [fmt:$infmt/$insize]"
- $mediactl -d $mdev -V "'$dev uds.0':0 [fmt:$infmt/$insize]"
- $mediactl -d $mdev -V "'$dev uds.0':1 [fmt:$infmt/$outsize]"
- $mediactl -d $mdev -V "'$dev wpf.0':0 [fmt:$infmt/$outsize]"
- $mediactl -d $mdev -V "'$dev wpf.0':1 [fmt:$outfmt/$outsize]"
+ vsp1_entity_set_format rpf.0 0 $infmt $insize
+ vsp1_entity_set_format uds.0 0 $infmt $insize
+ vsp1_entity_set_format uds.0 1 $infmt $outsize
+ vsp1_entity_set_format wpf.0 0 $infmt $outsize
+ vsp1_entity_set_format wpf.0 1 $outfmt $outsize
[ $insize != $outsize ] && __vsp_pixel_perfect=false
__vsp_rpf_format=$1
@@ -713,13 +724,13 @@ format_rpf_uds_bru() {
local bru_output=$(vsp1_count_bru_inputs)
- $mediactl -d $mdev -V "'$dev rpf.0':0 [fmt:$infmt/$insize]"
- $mediactl -d $mdev -V "'$dev uds.0':0 [fmt:$infmt/$insize]"
- $mediactl -d $mdev -V "'$dev uds.0':1 [fmt:$infmt/$outsize]"
- $mediactl -d $mdev -V "'$dev bru':0 [fmt:$infmt/$outsize]"
- $mediactl -d $mdev -V "'$dev bru':$bru_output [fmt:$infmt/$outsize]"
- $mediactl -d $mdev -V "'$dev wpf.0':0 [fmt:$infmt/$outsize]"
- $mediactl -d $mdev -V "'$dev wpf.0':1 [fmt:$outfmt/$outsize]"
+ vsp1_entity_set_format rpf.0 0 $infmt $insize
+ vsp1_entity_set_format uds.0 0 $infmt $insize
+ vsp1_entity_set_format uds.0 1 $infmt $outsize
+ vsp1_entity_set_format bru 0 $infmt $outsize
+ vsp1_entity_set_format bru $bru_output $infmt $outsize
+ vsp1_entity_set_format wpf.0 0 $infmt $outsize
+ vsp1_entity_set_format wpf.0 1 $outfmt $outsize
[ $insize != $outsize ] && __vsp_pixel_perfect=false
__vsp_rpf_format=$1
@@ -733,13 +744,13 @@ format_rpf_uds_sru() {
local outfmt=$(format_v4l2_to_mbus $4)
local outsize=$5
- $mediactl -d $mdev -V "'$dev rpf.0':0 [fmt:$infmt/$insize]"
- $mediactl -d $mdev -V "'$dev uds.0':0 [fmt:$infmt/$insize]"
- $mediactl -d $mdev -V "'$dev uds.0':1 [fmt:$infmt/$midsize]"
- $mediactl -d $mdev -V "'$dev sru':0 [fmt:$infmt/$midsize]"
- $mediactl -d $mdev -V "'$dev sru':1 [fmt:$infmt/$outsize]"
- $mediactl -d $mdev -V "'$dev wpf.0':0 [fmt:$infmt/$outsize]"
- $mediactl -d $mdev -V "'$dev wpf.0':1 [fmt:$outfmt/$outsize]"
+ vsp1_entity_set_format rpf.0 0 $infmt $insize
+ vsp1_entity_set_format uds.0 0 $infmt $insize
+ vsp1_entity_set_format uds.0 1 $infmt $midsize
+ vsp1_entity_set_format sru 0 $infmt $midsize
+ vsp1_entity_set_format sru 1 $infmt $outsize
+ vsp1_entity_set_format wpf.0 0 $infmt $outsize
+ vsp1_entity_set_format wpf.0 1 $outfmt $outsize
__vsp_pixel_perfect=false
__vsp_rpf_format=$1
@@ -752,11 +763,11 @@ format_rpf_sru() {
local outfmt=$(format_v4l2_to_mbus $3)
local outsize=$4
- $mediactl -d $mdev -V "'$dev rpf.0':0 [fmt:$infmt/$insize]"
- $mediactl -d $mdev -V "'$dev sru':0 [fmt:$infmt/$insize]"
- $mediactl -d $mdev -V "'$dev sru':1 [fmt:$infmt/$outsize]"
- $mediactl -d $mdev -V "'$dev wpf.0':0 [fmt:$infmt/$outsize]"
- $mediactl -d $mdev -V "'$dev wpf.0':1 [fmt:$outfmt/$outsize]"
+ vsp1_entity_set_format rpf.0 0 $infmt $insize
+ vsp1_entity_set_format sru 0 $infmt $insize
+ vsp1_entity_set_format sru 1 $infmt $outsize
+ vsp1_entity_set_format wpf.0 0 $infmt $outsize
+ vsp1_entity_set_format wpf.0 1 $outfmt $outsize
__vsp_pixel_perfect=false
__vsp_rpf_format=$1
@@ -770,13 +781,13 @@ format_rpf_sru_uds() {
local outfmt=$(format_v4l2_to_mbus $4)
local outsize=$5
- $mediactl -d $mdev -V "'$dev rpf.0':0 [fmt:$infmt/$insize]"
- $mediactl -d $mdev -V "'$dev sru':0 [fmt:$infmt/$insize]"
- $mediactl -d $mdev -V "'$dev sru':1 [fmt:$infmt/$midsize]"
- $mediactl -d $mdev -V "'$dev uds.0':0 [fmt:$infmt/$midsize]"
- $mediactl -d $mdev -V "'$dev uds.0':1 [fmt:$infmt/$outsize]"
- $mediactl -d $mdev -V "'$dev wpf.0':0 [fmt:$infmt/$outsize]"
- $mediactl -d $mdev -V "'$dev wpf.0':1 [fmt:$outfmt/$outsize]"
+ vsp1_entity_set_format rpf.0 0 $infmt $insize
+ vsp1_entity_set_format sru 0 $infmt $insize
+ vsp1_entity_set_format sru 1 $infmt $midsize
+ vsp1_entity_set_format uds.0 0 $infmt $midsize
+ vsp1_entity_set_format uds.0 1 $infmt $outsize
+ vsp1_entity_set_format wpf.0 0 $infmt $outsize
+ vsp1_entity_set_format wpf.0 1 $outfmt $outsize
__vsp_pixel_perfect=false
__vsp_rpf_format=$1
@@ -834,10 +845,10 @@ format_rpf_wpf() {
outsize=$rpfoutsize
fi
- $mediactl -d $mdev -V "'$dev rpf.$rpf':0 [fmt:$infmt/$size $rpfcrop]"
- $mediactl -d $mdev -V "'$dev rpf.$rpf':1 [fmt:$midfmt/$rpfoutsize]"
- $mediactl -d $mdev -V "'$dev wpf.$wpf':0 [fmt:$midfmt/$rpfoutsize $wpfcrop]"
- $mediactl -d $mdev -V "'$dev wpf.$wpf':1 [fmt:$outfmt/$outsize]"
+ vsp1_entity_set_format rpf.$rpf 0 $infmt $size $rpfcrop
+ vsp1_entity_set_format rpf.$rpf 1 $midfmt $rpfoutsize
+ vsp1_entity_set_format wpf.$wpf 0 $midfmt $rpfoutsize $wpfcrop
+ vsp1_entity_set_format wpf.$wpf 1 $outfmt $outsize
}
format_wpf() {
@@ -845,8 +856,8 @@ format_wpf() {
local size=$2
local wpf=$3
- $mediactl -d $mdev -V "'$dev wpf.$wpf':0 [fmt:$format/$size]"
- $mediactl -d $mdev -V "'$dev wpf.$wpf':1 [fmt:$format/$size]"
+ vsp1_entity_set_format wpf.$wpf 0 $format $size
+ vsp1_entity_set_format wpf.$wpf 1 $format $size
__vsp_wpf_format=$1
}
Create a new vsp1_entity_set_format() function to set a pad format, and use it through the code. This prepares for automating configuration of colour space parameters. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> --- scripts/vsp-lib.sh | 161 ++++++++++++++++++++++++--------------------- 1 file changed, 86 insertions(+), 75 deletions(-)