[PATCH v2 0/3] media: platform: Add support for the Amlogic Meson G12A AO CEC Controller

From: Neil Armstrong
Date: Mon Apr 01 2019 - 04:20:05 EST

The Amlogic G12A SoC embeds a second CEC controller with a totally
different design.

The two controller can work in the same time since the CEC line can
be set to two different pins on the two controllers.

This second CEC controller is documented as "AO-CEC-B", thus the
registers will be named "CECB_" to differentiate with the other
AO-CEC driver.

Unlike the other AO-CEC controller, this one takes the Oscillator
clock as input and embeds a dual-divider to provide a precise
32768Hz clock for communication. This is handled by registering
a clock in the driver.

Unlike the other AO-CEC controller, this controller supports setting
up to 15 logical addresses and supports the signal_free_time settings
in the transmit function.

Unfortunately, this controller does not support "monitor" mode.

This patchset :
- Update the bindings for this controller
- Add the controller driver
- Update the MAINTAINERS entry

Changes since v1:
- Fixed typos in bindings
- Fixed compatible used in driver, using the bindings defined one
- Fix regmap return value handling
- Fix irq error handling
- Fixed wrong clk unprepare on oscin

Neil Armstrong (3):
media: dt-bindings: media: meson-ao-cec: Add G12A AO-CEC-B Compatible
media: platform: meson: Add Amlogic Meson G12A AO CEC Controller
MAINTAINERS: Update AO CEC with ao-cec-g12a driver

.../bindings/media/meson-ao-cec.txt | 13 +-
drivers/media/platform/Kconfig | 13 +
drivers/media/platform/meson/Makefile | 1 +
drivers/media/platform/meson/ao-cec-g12a.c | 788 ++++++++++++++++++
5 files changed, 813 insertions(+), 3 deletions(-)
create mode 100644 drivers/media/platform/meson/ao-cec-g12a.c