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 >>