From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753619AbbBMWLj (ORCPT ); Fri, 13 Feb 2015 17:11:39 -0500 Received: from mga14.intel.com ([192.55.52.115]:4901 "EHLO mga14.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752743AbbBMWLi (ORCPT ); Fri, 13 Feb 2015 17:11:38 -0500 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.09,573,1418112000"; d="scan'208";a="666183943" Date: Fri, 13 Feb 2015 14:13:14 -0800 From: David Cohen To: Felipe Balbi Cc: Heikki Krogerus , Greg Kroah-Hartman , Baolu Lu , linux-usb@vger.kernel.org, linux-kernel@vger.kernel.org, Kishon Vijay Abraham I Subject: Re: [PATCH 8/8] phy: add driver for TI TUSB1210 ULPI PHY Message-ID: <20150213221314.GC25281@psi-dev26.jf.intel.com> References: <20150124235811.GA24665@psi-dev26.jf.intel.com> <20150126125503.GB28539@kuha.fi.intel.com> <20150126192337.GA13936@psi-dev26.jf.intel.com> <20150127092856.GD28539@kuha.fi.intel.com> <20150127173801.GA8441@psi-dev26.jf.intel.com> <20150128142024.GA2378@kuha.fi.intel.com> <20150128180255.GA7551@psi-dev26.jf.intel.com> <20150129141412.GA2570@kuha.fi.intel.com> <20150213220211.GA25281@psi-dev26.jf.intel.com> <20150213220357.GK26980@saruman.tx.rr.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20150213220357.GK26980@saruman.tx.rr.com> User-Agent: Mutt/1.5.23 (2014-03-12) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Fri, Feb 13, 2015 at 04:03:57PM -0600, Felipe Balbi wrote: > On Fri, Feb 13, 2015 at 02:02:11PM -0800, David Cohen wrote: > > Hi Felipe, > > > > [snip] > > > > > diff --git a/drivers/usb/dwc3/dwc3-pci.c b/drivers/usb/dwc3/dwc3-pci.c > > > index 8d95056..53902ea 100644 > > > --- a/drivers/usb/dwc3/dwc3-pci.c > > > +++ b/drivers/usb/dwc3/dwc3-pci.c > > > @@ -21,6 +21,7 @@ > > > #include > > > #include > > > #include > > > +#include > > > > > > #include "platform_data.h" > > > > > > @@ -35,6 +36,24 @@ > > > > > > static int dwc3_pci_quirks(struct pci_dev *pdev) > > > { > > > + if (pdev->vendor == PCI_VENDOR_ID_INTEL && > > > + pdev->device == PCI_DEVICE_ID_INTEL_BYT) { > > > + struct gpio_desc *gpio; > > > + > > > + gpio = gpiod_get_index(&pdev->dev, "reset", 0); > > > + if (!IS_ERR(gpio)) { > > > + gpiod_direction_output(gpio, 0); > > > + gpiod_set_value_cansleep(gpio, 1); > > > + gpiod_put(gpio); > > > + } > > > + gpio = gpiod_get_index(&pdev->dev, "cs", 1); > > > + if (!IS_ERR(gpio)) { > > > + gpiod_direction_output(gpio, 0); > > > + gpiod_set_value_cansleep(gpio, 1); > > > + gpiod_put(gpio); > > > + } > > > + } > > > + > > > > A lot has been discussed in other branches of this thread. > > > > But in resume, this is the last open point to make Heikki's proposal > > good on my side. If you accept this ugly quirk (but necessary for > > current BYT-CR products when ULPI bus enumerates phy), everything seems > > good to me. If you don't accept, we need to figure out a way to get the > > platform driver code back to give gpio to phy as platform data in a way > > that it could live together with ULPI bus (BYT-CR needs the ULPI bus too). > > Is this needed to *all* Baytrail devices or could we have devices with > updated firmware which won't need this ? I wonder if we should apply the > quirk for each known product that actually needs this. The products that need this quirk will have the gpios on DSDT, otherwise it won't be there. Except for the order of gpios (CS needs to be enabled first and it's index 0 AFAIR), the quirk should follow Heikki's logic here: if gpio isn't found we silently ignore it. > > Also, I will only accept the series, after I'm shown logs that it works > with your known-to-be-broken device. I can provide that when Heikki resends his patch set. Br, David > > cheers > > -- > balbi