[PATCH 2/2] ARM: dts: imx6-gw5xxx: Pass 'adv,force-bt656-4'

Tim Harvey tharvey at gateworks.com
Tue Mar 15 08:20:10 PDT 2022


On Mon, Mar 14, 2022 at 6:32 PM Fabio Estevam <festevam at gmail.com> wrote:
>
> A common problem on imx6 designs with AD7180 is that video may get
> out sync, producing a 'rolling' image.
>
> Pass 'adv,force-bt656-4' to avoid such problem.
>
> Signed-off-by: Fabio Estevam <festevam at gmail.com>
> ---
>  arch/arm/boot/dts/imx6dl-gw52xx.dts   | 1 +
>  arch/arm/boot/dts/imx6dl-gw53xx.dts   | 1 +
>  arch/arm/boot/dts/imx6dl-gw54xx.dts   | 1 +
>  arch/arm/boot/dts/imx6q-gw52xx.dts    | 1 +
>  arch/arm/boot/dts/imx6q-gw53xx.dts    | 1 +
>  arch/arm/boot/dts/imx6q-gw54xx.dts    | 1 +
>  arch/arm/boot/dts/imx6qdl-gw51xx.dtsi | 1 +
>  arch/arm/boot/dts/imx6qdl-gw553x.dtsi | 1 +
>  8 files changed, 8 insertions(+)
>
> diff --git a/arch/arm/boot/dts/imx6dl-gw52xx.dts b/arch/arm/boot/dts/imx6dl-gw52xx.dts
> index 9ea23dd54f3c..7e52ff8a37c3 100644
> --- a/arch/arm/boot/dts/imx6dl-gw52xx.dts
> +++ b/arch/arm/boot/dts/imx6dl-gw52xx.dts
> @@ -18,6 +18,7 @@ adv7180: camera at 20 {
>                 pinctrl-names = "default";
>                 pinctrl-0 = <&pinctrl_adv7180>;
>                 reg = <0x20>;
> +               adv,force-bt656-4;
>                 powerdown-gpios = <&gpio3 31 GPIO_ACTIVE_LOW>;
>                 interrupt-parent = <&gpio3>;
>                 interrupts = <30 IRQ_TYPE_LEVEL_LOW>;
> diff --git a/arch/arm/boot/dts/imx6dl-gw53xx.dts b/arch/arm/boot/dts/imx6dl-gw53xx.dts
> index 182e8194c249..5c0a3f4b208b 100644
> --- a/arch/arm/boot/dts/imx6dl-gw53xx.dts
> +++ b/arch/arm/boot/dts/imx6dl-gw53xx.dts
> @@ -18,6 +18,7 @@ adv7180: camera at 20 {
>                 pinctrl-names = "default";
>                 pinctrl-0 = <&pinctrl_adv7180>;
>                 reg = <0x20>;
> +               adv,force-bt656-4;
>                 powerdown-gpios = <&gpio3 31 GPIO_ACTIVE_LOW>;
>                 interrupt-parent = <&gpio3>;
>                 interrupts = <30 IRQ_TYPE_LEVEL_LOW>;
> diff --git a/arch/arm/boot/dts/imx6dl-gw54xx.dts b/arch/arm/boot/dts/imx6dl-gw54xx.dts
> index a106c4e3e329..22346d46805d 100644
> --- a/arch/arm/boot/dts/imx6dl-gw54xx.dts
> +++ b/arch/arm/boot/dts/imx6dl-gw54xx.dts
> @@ -18,6 +18,7 @@ adv7180: camera at 20 {
>                 pinctrl-names = "default";
>                 pinctrl-0 = <&pinctrl_adv7180>;
>                 reg = <0x20>;
> +               adv,force-bt656-4;
>                 powerdown-gpios = <&gpio3 31 GPIO_ACTIVE_LOW>;
>                 interrupt-parent = <&gpio3>;
>                 interrupts = <30 IRQ_TYPE_LEVEL_LOW>;
> diff --git a/arch/arm/boot/dts/imx6q-gw52xx.dts b/arch/arm/boot/dts/imx6q-gw52xx.dts
> index 6e1c493c9c8c..c8fe6ea33492 100644
> --- a/arch/arm/boot/dts/imx6q-gw52xx.dts
> +++ b/arch/arm/boot/dts/imx6q-gw52xx.dts
> @@ -18,6 +18,7 @@ adv7180: camera at 20 {
>                 pinctrl-names = "default";
>                 pinctrl-0 = <&pinctrl_adv7180>;
>                 reg = <0x20>;
> +               adv,force-bt656-4;
>                 powerdown-gpios = <&gpio3 31 GPIO_ACTIVE_LOW>;
>                 interrupt-parent = <&gpio3>;
>                 interrupts = <30 IRQ_TYPE_LEVEL_LOW>;
> diff --git a/arch/arm/boot/dts/imx6q-gw53xx.dts b/arch/arm/boot/dts/imx6q-gw53xx.dts
> index f13df8e9c8c4..a62a3b02029a 100644
> --- a/arch/arm/boot/dts/imx6q-gw53xx.dts
> +++ b/arch/arm/boot/dts/imx6q-gw53xx.dts
> @@ -18,6 +18,7 @@ adv7180: camera at 20 {
>                 pinctrl-names = "default";
>                 pinctrl-0 = <&pinctrl_adv7180>;
>                 reg = <0x20>;
> +               adv,force-bt656-4;
>                 powerdown-gpios = <&gpio3 31 GPIO_ACTIVE_LOW>;
>                 interrupt-parent = <&gpio3>;
>                 interrupts = <30 IRQ_TYPE_LEVEL_LOW>;
> diff --git a/arch/arm/boot/dts/imx6q-gw54xx.dts b/arch/arm/boot/dts/imx6q-gw54xx.dts
> index d5d46908cf6e..7725e1fb0b92 100644
> --- a/arch/arm/boot/dts/imx6q-gw54xx.dts
> +++ b/arch/arm/boot/dts/imx6q-gw54xx.dts
> @@ -35,6 +35,7 @@ adv7180: camera at 20 {
>                 pinctrl-names = "default";
>                 pinctrl-0 = <&pinctrl_adv7180>;
>                 reg = <0x20>;
> +               adv,force-bt656-4;
>                 powerdown-gpios = <&gpio3 31 GPIO_ACTIVE_LOW>;
>                 interrupt-parent = <&gpio3>;
>                 interrupts = <30 IRQ_TYPE_LEVEL_LOW>;
> diff --git a/arch/arm/boot/dts/imx6qdl-gw51xx.dtsi b/arch/arm/boot/dts/imx6qdl-gw51xx.dtsi
> index 069c27fab432..e367084d15f5 100644
> --- a/arch/arm/boot/dts/imx6qdl-gw51xx.dtsi
> +++ b/arch/arm/boot/dts/imx6qdl-gw51xx.dtsi
> @@ -369,6 +369,7 @@ adv7180: camera at 20 {
>                 pinctrl-names = "default";
>                 pinctrl-0 = <&pinctrl_adv7180>;
>                 reg = <0x20>;
> +               adv,force-bt656-4;
>                 powerdown-gpios = <&gpio5 20 GPIO_ACTIVE_LOW>;
>                 interrupt-parent = <&gpio5>;
>                 interrupts = <23 IRQ_TYPE_LEVEL_LOW>;
> diff --git a/arch/arm/boot/dts/imx6qdl-gw553x.dtsi b/arch/arm/boot/dts/imx6qdl-gw553x.dtsi
> index 4662408b225a..905d4260db4c 100644
> --- a/arch/arm/boot/dts/imx6qdl-gw553x.dtsi
> +++ b/arch/arm/boot/dts/imx6qdl-gw553x.dtsi
> @@ -424,6 +424,7 @@ adv7180: camera at 20 {

>                 pinctrl-names = "default";
>                 pinctrl-0 = <&pinctrl_adv7180>;
>                 reg = <0x20>;
> +               adv,force-bt656-4;
>                 powerdown-gpios = <&gpio5 20 GPIO_ACTIVE_LOW>;
>                 interrupt-parent = <&gpio5>;
>                 interrupts = <23 IRQ_TYPE_LEVEL_LOW>;
> --
> 2.25.1
>

Fabio,

This was done to support ADV7280's but the original boards have an
ADV7180. I think its ok to set this even for ADV7180's as the codepath
that uses it won't get hit correct?

I had originally handled this via boot firmware that updated dt per
board model [1][2] but if there is no harm having it set for ADV7180's
as well I'm good with this patch.

Best regards,

Tim
[1] https://github.com/u-boot/u-boot/commit/249ee657e620829b0ebe119936d0e82c83534b45
[2] https://github.com/u-boot/u-boot/commit/bf6bdefd36cfaa53fb4e492e160a9b7349c01d3d



More information about the linux-arm-kernel mailing list