From patchwork Tue May 16 09:01:18 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Benjamin Gaignard X-Patchwork-Id: 99854 Delivered-To: patch@linaro.org Received: by 10.140.96.100 with SMTP id j91csp1916188qge; Tue, 16 May 2017 02:01:40 -0700 (PDT) X-Received: by 10.84.176.131 with SMTP id v3mr14249196plb.138.1494925300144; Tue, 16 May 2017 02:01:40 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1494925300; cv=none; d=google.com; s=arc-20160816; b=eTUmmLsh379R43zsl25ZCeOS+i8BKUWuV1+BYpbPvofw+38kR7BpyOvNUJXdJhikbq xGGPu+655Phd3/kxbH42hi3RUZO0A0la35DrdKruXEma6is2k2GlhVpBk+ldJGrDH6pR 9QfwuehGwtcoPNLzxPRAm/taEaGRpa2QZSFXe6bGukMWXz27uxMiwHKsQSnJcOJFIqG0 6x0UPwAJB+Lc56MQSw9PoiwDPvC0aTyzVpGf8Ssvntk2Csbwgec85chlxnGl1nMhgwyo lE++rNdzhvTGAv+6H04La+ch60id/qnyvI3x7q0YMoOGEOGieBm1beisxftvhPio/uq4 W15w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:message-id:date:subject:cc:to:from :dkim-signature:arc-authentication-results; bh=86G1G5iZj3FiMiQXCyOg3JF3kZZUlzxF6BJukXt98X4=; b=o4GnzOdsM/JQYme2QnPVTEFkwp4fOCRmHubsOmR88JqFtTJWpSg4TMuYccAhLXdecR 2qArJgl53EdDrRWIiulh18SbXNZaC9SBuDnqd3BKnnqnD7nrflnN07/BETBiUo8wnQvJ 4dkVXx0iI7NLKIcJGiyyQxLDiE0efNANPPGatpr8LFXGYhoLH/R6wKxQvMP4ye+Lrrki gxxerkhPa7+mTsDkVasInIMMESCWH++Tgy1mDMD/+0dQm5qZkzyaoetjS+i+ciDjWagd wXNF9rG1ZGTMuGqQhh1vNGRBvIy3wTYX2Tb3YAuinrxbhv/XqwiF8cwNkv50OWpa/nZP ueVA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org; spf=pass (google.com: best guess record for domain of linux-media-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-media-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id v83si13197534pfd.250.2017.05.16.02.01.39; Tue, 16 May 2017 02:01:40 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-media-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org; spf=pass (google.com: best guess record for domain of linux-media-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-media-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751864AbdEPJBh (ORCPT + 4 others); Tue, 16 May 2017 05:01:37 -0400 Received: from mail-wm0-f51.google.com ([74.125.82.51]:37697 "EHLO mail-wm0-f51.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751302AbdEPJBe (ORCPT ); Tue, 16 May 2017 05:01:34 -0400 Received: by mail-wm0-f51.google.com with SMTP id d127so111519808wmf.0 for ; Tue, 16 May 2017 02:01:33 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id; bh=86G1G5iZj3FiMiQXCyOg3JF3kZZUlzxF6BJukXt98X4=; b=UoJ5eBwu2W8cARcWyZgDv1WOs2f7bg6mLE6HqDyfTWxAutkCQC+6j5UeTHevj9ZAps xgMpEygufIs88Upb9x1N5Ep4f5Qnc8A8XpMYlAzIK9NJzFQP9TYOESh8KTH7EdUYIz89 qfmCKI+m1jppPLylEHpeW4HkP7EK9vClB+gg4= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id; bh=86G1G5iZj3FiMiQXCyOg3JF3kZZUlzxF6BJukXt98X4=; b=i82cPnKOCa6UxaqPMX0nBsRFa7AzvgwfArGGbLtuwJ7iUyuD0CgeBISHCrmrx0C77P IXvhdfc6dVCfxG5hw23GD/QjbJmQ47fbxpRFdxEmL9znarYR8JlAdJjf9+va9RH74b2u J8ZVFtGBcy1LYQDNFgk01MJA6F1a3Th/LguiEvFZJxPmmUztEuVq/to5sC7zDNTsK46i yuX2GeYLgt+HMvtolJhxM5+zfl/j6rBizvjiBphn2fkjuVIfYtJE5o7H7AAP5IDseq6a G+EeyHVsUyMcZFYaXSxfflPuUJA21muNcTtx1+eqBvIJgKlKThKu2IBpY1dkoejSan8g DgfA== X-Gm-Message-State: AODbwcBD+DvXUwkeDMgXGyVsd0NQnEdvTFIu2HbznWRchaQmuo/BDFyt VMAPR9VNQ5PN2lll2Z62Ow== X-Received: by 10.223.161.70 with SMTP id r6mr6522703wrr.65.1494925292718; Tue, 16 May 2017 02:01:32 -0700 (PDT) Received: from lmenx321.st.com. ([80.215.37.242]) by smtp.gmail.com with ESMTPSA id x17sm1023436wrd.63.2017.05.16.02.01.30 (version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Tue, 16 May 2017 02:01:31 -0700 (PDT) From: Benjamin Gaignard To: yannick.ferte@st.com, alexandre.torgue@st.com, hverkuil@xs4all.nl, devicetree@vger.kernel.org, linux-media@vger.kernel.org, robh@kernel.org, hans.verkuil@cisco.com Cc: Benjamin Gaignard Subject: [PATCH 0/2] cec: STM32 driver Date: Tue, 16 May 2017 11:01:18 +0200 Message-Id: <1494925280-4527-1-git-send-email-benjamin.gaignard@linaro.org> X-Mailer: git-send-email 1.9.1 Sender: linux-media-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-media@vger.kernel.org This serie of patches add cec driver for STM32 platforms. This code doesn't implement cec notifier because STM32 doesn't provide HDMI yet but it will be added later. Those patches have been developped on top of media_tree master branch where STM32 DCMI code has not been merged so conflict in Kconfig and Makefile could occur depending of merge ordering. Compliance has been tested on STM32F769. ~ # cec-ctl -p 1.0.0.0 --playback Driver Info: Driver Name : stm32-cec Adapter Name : stm32-cec Capabilities : 0x0000000f Physical Address Logical Addresses Transmit Passthrough Driver version : 4.11.0 Available Logical Addresses: 1 Physical Address : 1.0.0.0 Logical Address Mask : 0x0010 CEC Version : 2.0 Vendor ID : 0x000c03 (HDMI) OSD Name : 'Playback' Logical Addresses : 1 (Allow RC Passthrough) Logical Address : 4 (Playback Device 1) Primary Device Type : Playback Logical Address Type : Playback All Device Types : Playback RC TV Profile : None Device Features : None ~ # cec-compliance -A cec-compliance SHA : 6acac5cec698de39b9398b66c4f5f4db6b2730d8 Driver Info: Driver Name : stm32-cec Adapter Name : stm32-cec Capabilities : 0x0000000f Physical Address Logical Addresses Transmit Passthrough Driver version : 4.11.0 Available Logical Addresses: 1 Physical Address : 1.0.0.0 Logical Address Mask : 0x0010 CEC Version : 2.0 Vendor ID : 0x000c03 Logical Addresses : 1 (Allow RC Passthrough) Logical Address : 4 Primary Device Type : Playback Logical Address Type : Playback All Device Types : Playback RC TV Profile : None Device Features : None Compliance test for device /dev/cec0: The test results mean the following: OK Supported correctly by the device. OK (Not Supported) Not supported and not mandatory for the device. OK (Presumed) Presumably supported. Manually check to confirm. OK (Unexpected) Supported correctly but is not expected to be supported for this device. OK (Refused) Supported by the device, but was refused. FAIL Failed and was expected to be supported by this device. Find remote devices: Polling: OK CEC API: CEC_ADAP_G_CAPS: OK CEC_DQEVENT: OK CEC_ADAP_G/S_PHYS_ADDR: OK CEC_ADAP_G/S_LOG_ADDRS: OK CEC_TRANSMIT: OK CEC_RECEIVE: OK CEC_TRANSMIT/RECEIVE (non-blocking): OK (Presumed) CEC_G/S_MODE: OK CEC_EVENT_LOST_MSGS: OK Network topology: System Information for device 0 (TV) from device 4 (Playback Device 1): CEC Version : 1.4 Physical Address : 0.0.0.0 Primary Device Type : TV Vendor ID : 0x00903e OSD Name : 'TV' Menu Language : fre Power Status : On Total: 10, Succeeded: 10, Failed: 0, Warnings: 0 Benjamin Gaignard (2): binding for stm32 cec driver cec: add STM32 cec driver .../devicetree/bindings/media/st,stm32-cec.txt | 19 ++ drivers/media/platform/Kconfig | 11 + drivers/media/platform/Makefile | 2 + drivers/media/platform/stm32/Makefile | 1 + drivers/media/platform/stm32/stm32-cec.c | 368 +++++++++++++++++++++ 5 files changed, 401 insertions(+) create mode 100644 Documentation/devicetree/bindings/media/st,stm32-cec.txt create mode 100644 drivers/media/platform/stm32/Makefile create mode 100644 drivers/media/platform/stm32/stm32-cec.c -- 1.9.1