Re: [PATCH v2 0/5] Add ChromeOS EC CEC Support

From: Neil Armstrong
Date: Mon May 21 2018 - 04:07:32 EST


On 18/05/2018 16:04, Enric Balletbo Serra wrote:
> Hi Neil,
>
> 2018-05-18 15:04 GMT+02:00 Neil Armstrong <narmstrong@xxxxxxxxxxxx>:
>> Hi All,
>>
>> The new Google "Fizz" Intel-based ChromeOS device is gaining CEC support
>> through it's Embedded Controller, to enable the Linux CEC Core to communicate
>> with it and get the CEC Physical Address from the correct HDMI Connector, the
>> following must be added/changed:
>> - Add the CEC sub-device registration in the ChromeOS EC MFD Driver
>> - Add the CEC related commands and events definitions into the EC MFD driver
>> - Add a way to get a CEC notifier with it's (optional) connector name
>> - Add the CEC notifier to the i915 HDMI driver
>> - Add the proper ChromeOS EC CEC Driver
>>
>> The CEC notifier with the connector name is the tricky point, since even on
>> Device-Tree platforms, there is no way to distinguish between multiple HDMI
>> connectors from the same DRM driver. The solution I implemented is pretty
>> simple and only adds an optional connector name to eventually distinguish
>> an HDMI connector notifier from another if they share the same device.
>>
>> Feel free to comment this patchset !
>>
>> Changes since v2:
>> - Add i915 port_identifier() and use this stable name as cec_notifier conn name
>> - Fixed and cleaned up the CEC commands and events handling
>> - Rebased the CEC sub-device registration on top of Enric's serie
>> - Fixed comments typo on cec driver
>> - Protected the DMI match only with PCI and DMI Kconfigs
>>
>
> Just because I got confused when I saw two v2 in my inbox. This is v3, right?

Yes, sorry it's v3... next will be v4.

>
>> Changes since v1:
>> - Added cec_notifier_put to intel_hdmi
>> - Fixed all small reported issues on the EC CEC driver
>> - Moved the cec_notifier_get out of the #if .. #else .. #endif
>>
>> Changes since RFC:
>> - Moved CEC sub-device registration after CEC commands and events definitions patch
>> - Removed get_notifier_get_byname
>> - Added CEC_CORE select into i915 Kconfig
>> - Removed CEC driver fallback if notifier is not configured on HW, added explicit warn
>> - Fixed CEC core return type on error
>> - Moved to cros-ec-cec media platform directory
>> - Use bus_find_device() to find the pci i915 device instead of get_notifier_get_byname()
>> - Fix Logical Address setup
>> - Added comment about HW support
>> - Removed memset of msg structures
>>
>> Neil Armstrong (5):
>> media: cec-notifier: Get notifier by device and connector name
>> drm/i915: hdmi: add CEC notifier to intel_hdmi
>> mfd: cros-ec: Introduce CEC commands and events definitions.
>> mfd: cros_ec_dev: Add CEC sub-device registration
>> media: platform: Add Chrome OS EC CEC driver
>>
>> drivers/gpu/drm/i915/Kconfig | 1 +
>> drivers/gpu/drm/i915/intel_display.h | 20 ++
>> drivers/gpu/drm/i915/intel_drv.h | 2 +
>> drivers/gpu/drm/i915/intel_hdmi.c | 13 +
>> drivers/media/cec/cec-notifier.c | 11 +-
>> drivers/media/platform/Kconfig | 11 +
>> drivers/media/platform/Makefile | 2 +
>> drivers/media/platform/cros-ec-cec/Makefile | 1 +
>> drivers/media/platform/cros-ec-cec/cros-ec-cec.c | 347 +++++++++++++++++++++++
>> drivers/mfd/cros_ec_dev.c | 16 ++
>> drivers/platform/chrome/cros_ec_proto.c | 40 ++-
>> include/linux/mfd/cros_ec.h | 2 +-
>> include/linux/mfd/cros_ec_commands.h | 80 ++++++
>> include/media/cec-notifier.h | 27 +-
>> 14 files changed, 557 insertions(+), 16 deletions(-)
>> create mode 100644 drivers/media/platform/cros-ec-cec/Makefile
>> create mode 100644 drivers/media/platform/cros-ec-cec/cros-ec-cec.c
>>
>> --
>> 2.7.4
>>