[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAHStOZ5Pe9LvDk4cKAVB4SS5wgFcK-bweFTqU_mnEhOAyZKHuA@mail.gmail.com>
Date: Sat, 13 Apr 2019 20:54:27 +0200
From: Maxime Jourdan <maxi.jourdan@...adoo.fr>
To: Martin Blumenstingl <martin.blumenstingl@...glemail.com>
Cc: linux-amlogic <linux-amlogic@...ts.infradead.org>,
Kevin Hilman <khilman@...libre.com>, mjourdan@...libre.com,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
linux-arm-kernel@...ts.infradead.org
Subject: Re: [PATCH 0/3] 32-bit Meson: add the canvas module
Hi Martin,
On Sat, Apr 13, 2019 at 7:15 PM Martin Blumenstingl
<martin.blumenstingl@...glemail.com> wrote:
>
> This adds the canvas module on Meson8, Meson8b and Meson8m2. The canvas
> IP is used by the video decoder hardware as well as the VPU (video
> output) hardware.
>
> Neither the VPU nor the video decoder driver support the 32-bit SoCs
> yet. However, we can still add the canvas module to have it available
> once these drivers gain support for the older SoCs.
>
> I have tested this on my Meson8m2 board by hacking the VPU driver to
> not re-initialize the VPU (and to use the configuration set by u-boot).
> With that hack I could get some image out of the CVBS connector. No
> changes to the canvas driver were required.
>
> Due to lack of hardware I could not test Meson8, but I'm following (as
> always) what the Amlogic 3.10 vendor kernel uses.
> Meson8b is also not tested because u-boot of my EC-100 doesn't have
> video output enabled (so I couldn't use the same hack I used on my
> Meson8m2 board).
>
> This series meant to be applied on top of "Meson8b: add support for the
> RTC on EC-100 and Odroid-C1" from [0]
>
>
The series looks good to me, however I wonder if we should maybe add a
new compatible ?
The canvas IP before the GX* generation does not handle what Amlogic
calls "endianness", the field that allows doing some byte-switching to
get proper NV12/NV21. So the following defines are unusable:
#define MESON_CANVAS_ENDIAN_SWAP16 0x1
#define MESON_CANVAS_ENDIAN_SWAP32 0x3
#define MESON_CANVAS_ENDIAN_SWAP64 0x7
#define MESON_CANVAS_ENDIAN_SWAP128 0xf
It wouldn't change much functionally, but we could have e.g a warning
if a m8 canvas user tries to set endianness even though it does
nothing.
Maxime
> [0] https://patchwork.kernel.org/cover/10899509/
>
>
> Martin Blumenstingl (3):
> ARM: dts: meson8: add the canvas module
> ARM: dts: meson8m2: update the offset of the canvas module
> ARM: dts: meson8b: add the canvas module
>
> arch/arm/boot/dts/meson8.dtsi | 21 +++++++++++++++++++++
> arch/arm/boot/dts/meson8b.dtsi | 21 +++++++++++++++++++++
> arch/arm/boot/dts/meson8m2.dtsi | 10 ++++++++++
> 3 files changed, 52 insertions(+)
>
> --
> 2.21.0
>
>
> _______________________________________________
> linux-amlogic mailing list
> linux-amlogic@...ts.infradead.org
> http://lists.infradead.org/mailman/listinfo/linux-amlogic
Powered by blists - more mailing lists