From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751231AbbGaHqg (ORCPT ); Fri, 31 Jul 2015 03:46:36 -0400 Received: from mailout2.samsung.com ([203.254.224.25]:45888 "EHLO mailout2.samsung.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750786AbbGaHqe (ORCPT ); Fri, 31 Jul 2015 03:46:34 -0400 X-AuditID: cbfee68d-f79106d00000728c-64-55bb27d4a34f Message-id: <55BB27D3.8040209@samsung.com> Date: Fri, 31 Jul 2015 16:46:27 +0900 From: Chanwoo Choi User-Agent: Mozilla/5.0 (X11; Linux i686; rv:17.0) Gecko/20130106 Thunderbird/17.0.2 MIME-version: 1.0 To: Roger Quadros Cc: myungjoo.ham@samsung.com, tony@atomide.com, nm@ti.com, balbi@ti.com, linux-omap@vger.kernel.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH v2 1/2] extcon: palmas: Support GPIO based USB ID detection References: <1438002617-15152-1-git-send-email-rogerq@ti.com> <1438002617-15152-2-git-send-email-rogerq@ti.com> In-reply-to: <1438002617-15152-2-git-send-email-rogerq@ti.com> Content-type: text/plain; charset=ISO-8859-1 Content-transfer-encoding: 7bit X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFprJIsWRmVeSWpSXmKPExsWyRsSkRPeK+u5Qg875QhYH79dbXN41h81i 9pJ+FovbjSvYLN78OMtk0fNIy2L/FS8Hdo9vXyexePRtWcXocfzGdiaPz5vkAliiuGxSUnMy y1KL9O0SuDIWfX/EVnBFrOLvqpfMDYzbhboYOTkkBEwkdt+dxgZhi0lcuLcezBYSWMEocXA/ SxcjB1jNtGadLkYuoPBSRolZj1cwQTgPGCX2HVzIDFLEK6Al8X4CI0gvi4CqxP93f1lBbDag 8P4XN8BmigqESaycfoUFxOYVEJT4MfkemC0ioChxbyXIXi4OZoFmRonFf9eBNQsL+EucmvMX 6qBCieW71rOD2JwCdhIvd04AizML6Ejsb50GZctLbF7zlhnimVPsEpc/B0AcJCDxbfIhqGdk JTYdgCqRlDi44gbLBEaxWUhOmoVk6iwkUxcwMq9iFE0tSC4oTkovMtQrTswtLs1L10vOz93E CIyx0/+e9e5gvH3A+hCjAAejEg+vwOJdoUKsiWXFlbmHGE2BrpjILCWanA+M5LySeENjMyML UxNTYyNzSzMlcV5FqZ/BQgLpiSWp2ampBalF8UWlOanFhxiZODilGhgZPi9JWLdz0Q+p76ei PnE2fHpwcQWz4ftG5tem/XpPuFXdQjgO2rtk7M8XNewVu5UeYNjyRsHCze/aS/WstHteIruv PA0r/33U6VOoSskpKabi9+8Ud2x+eM6q/PNZs74sgf9zi/aX2RdwhT0TehC+53+i4BSxHg6N pOg+xrRn8xx7JjyvVlViKc5INNRiLipOBACYvfbMrAIAAA== X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFnrBIsWRmVeSWpSXmKPExsVy+t9jAd0r6rtDDT43c1kcvF9vcXnXHDaL 2Uv6WSxuN65gs3jz4yyTRc8jLYv9V7wc2D2+fZ3E4tG3ZRWjx/Eb25k8Pm+SC2CJamC0yUhN TEktUkjNS85PycxLt1XyDo53jjc1MzDUNbS0MFdSyEvMTbVVcvEJ0HXLzAHar6RQlphTChQK SCwuVtK3wzQhNMRN1wKmMULXNyQIrsfIAA0krGHMWPT9EVvBFbGKv6teMjcwbhfqYuTgkBAw kZjWrNPFyAlkiklcuLeerYuRi0NIYCmjxKzHK5ggnAeMEvsOLmQGaeAV0JJ4P4ERpIFFQFXi /7u/rCA2G1B4/4sbbCC2qECYxMrpV1hAbF4BQYkfk++B2SICihL3VkIsYBZoZpRY/HcdWLOw gL/EqTl/wZqFBAollu9azw5icwrYSbzcOQEsziygI7G/dRqULS+xec1b5gmMArOQ7JiFpGwW krIFjMyrGCVSC5ILipPScw3zUsv1ihNzi0vz0vWS83M3MYJj+ZnUDsaDu9wPMQpwMCrx8Aos 3hUqxJpYVlyZe4hRgoNZSYT3vtruUCHelMTKqtSi/Pii0pzU4kOMpsBQmMgsJZqcD0wzeSXx hsYmZkaWRuaGFkbG5krivLIbNocKCaQnlqRmp6YWpBbB9DFxcEo1MC5anTXrxco9TokXjE3X cW3nvuW0cPUz50TVi15r9z2ITvs9J2F3x5OjvTdq8h90Fu49ME8+mW1HUfTKPT+lFBu41B1C 7m/fKPxLT2FKq3DFjz+zDY5vW8eRvM3owbxbV5kfSxnOZDDYbeL1Xz4sQmrLs5r6JOHQfSs5 dnD75TPP6ZllfsxxwxIlluKMREMt5qLiRAAS45BA+wIAAA== DLP-Filter: Pass X-MTR: 20000000000000000@CPGS X-CFilter-Loop: Reflected Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi Roger, When I apply it for build test, merge conflict happen. So, I recommend that you rebase this patchset on extcon-next branch. On 07/27/2015 10:10 PM, Roger Quadros wrote: > Some palmas based chip variants do not have OTG based ID logic. > For these variants we rely on GPIO based USB ID detection. > > These chips do have VBUS comparator for VBUS detection so we > continue to use the old way of detecting VBUS. > > Signed-off-by: Roger Quadros > --- > .../devicetree/bindings/extcon/extcon-palmas.txt | 5 +- > drivers/extcon/extcon-palmas.c | 114 ++++++++++++++++++--- > include/linux/mfd/palmas.h | 6 ++ > 3 files changed, 109 insertions(+), 16 deletions(-) > > diff --git a/Documentation/devicetree/bindings/extcon/extcon-palmas.txt b/Documentation/devicetree/bindings/extcon/extcon-palmas.txt > index 45414bb..f61d5af 100644 > --- a/Documentation/devicetree/bindings/extcon/extcon-palmas.txt > +++ b/Documentation/devicetree/bindings/extcon/extcon-palmas.txt > @@ -10,8 +10,11 @@ Required Properties: > > Optional Properties: > - ti,wakeup : To enable the wakeup comparator in probe > - - ti,enable-id-detection: Perform ID detection. > + - ti,enable-id-detection: Perform ID detection. If id-gpio is specified > + it performs id-detection using GPIO else using OTG core. > - ti,enable-vbus-detection: Perform VBUS detection. > + - id-gpio: gpio for GPIO ID detection. See gpio binding. > + - debounce-delay-ms: debounce delay for GPIO ID pin in milliseconds. > > palmas-usb { > compatible = "ti,twl6035-usb", "ti,palmas-usb"; > diff --git a/drivers/extcon/extcon-palmas.c b/drivers/extcon/extcon-palmas.c > index 080d5cc..d0ed764 100644 > --- a/drivers/extcon/extcon-palmas.c > +++ b/drivers/extcon/extcon-palmas.c > @@ -28,6 +28,9 @@ > #include > #include > #include > +#include > + > +#define USB_GPIO_DEBOUNCE_MS 20 /* ms */ > > static const unsigned int palmas_extcon_cable[] = { > EXTCON_USB, > @@ -120,19 +123,52 @@ static irqreturn_t palmas_id_irq_handler(int irq, void *_palmas_usb) > return IRQ_HANDLED; > } > > +static void palmas_gpio_id_detect(struct palmas_usb *palmas_usb) > +{ > + int id; > + > + if (!palmas_usb->id_gpiod) > + return; > + > + id = gpiod_get_value_cansleep(palmas_usb->id_gpiod); > + > + if (id) { > + extcon_set_cable_state(palmas_usb->edev, "USB-HOST", false); Use the extcon_set_cable_state_() because extcon_set_cable_state() with cable name is deprecated. > + dev_info(palmas_usb->dev, "USB-HOST cable is detached\n"); > + } else { > + extcon_set_cable_state(palmas_usb->edev, "USB-HOST", true); ditto. Use the extcon_set_cable_state_() with extcon id. [snip] Thanks, Chanwoo Choi