An error occurred fetching the project authors.
- 14 Nov, 2018 1 commit
-
-
Kuppuswamy Sathyanarayanan authored
In dwc3_pci_quirks() function, gpiod lookup table is only registered for baytrail SOC. But in dwc3_pci_remove(), we try to unregistered it without any checks. This leads to NULL pointer de-reference exception in gpiod_remove_lookup_table() when unloading the module for non baytrail SOCs. This patch fixes this issue. Fixes: 5741022c ("usb: dwc3: pci: Add GPIO lookup table on platforms without ACPI GPIO resources") Cc: <stable@vger.kernel.org> Signed-off-by:
Kuppuswamy Sathyanarayanan <sathyanarayanan.kuppuswamy@linux.intel.com> Reviewed-by:
Heikki Krogerus <heikki.krogerus@linux.intel.com> Signed-off-by:
Felipe Balbi <felipe.balbi@linux.intel.com>
-
- 29 Aug, 2018 1 commit
-
-
Wei Yongjun authored
In case of error, the function pcim_iomap() returns NULL pointer not ERR_PTR(). The IS_ERR() test in the return value check should be replaced with NULL test. Fixes: 7740d04d ("usb: dwc3: pci: Enable ULPI Refclk on platforms where the firmware does not") Reviewed-by:
Hans de Goede <hdegoede@redhat.com> Signed-off-by:
Wei Yongjun <weiyongjun1@huawei.com> Signed-off-by:
Felipe Balbi <felipe.balbi@linux.intel.com>
-
- 30 Jul, 2018 3 commits
-
-
Andy Shevchenko authored
On Intel Edison board the OTG function is enabled, thus, USB can switch to the host mode. Allow that by changing dr_mode property to "otg" for Intel Merrifield. Signed-off-by:
Andy Shevchenko <andriy.shevchenko@linux.intel.com> Signed-off-by:
Felipe Balbi <felipe.balbi@linux.intel.com>
-
Andy Shevchenko authored
For now all PCI enumerated dwc3 devices require some properties to be present. This allows us to unconditionally append them and supply via driver_data. No functional change intended. Signed-off-by:
Andy Shevchenko <andriy.shevchenko@linux.intel.com> Signed-off-by:
Felipe Balbi <felipe.balbi@linux.intel.com>
-
Andy Shevchenko authored
Describe 'wakeup_work' field of struct dwc3_pci to avoid a warning: drivers/usb/dwc3/dwc3-pci.c:59: warning: Function parameter or member 'wakeup_work' not described in 'dwc3_pci' Signed-off-by:
Andy Shevchenko <andriy.shevchenko@linux.intel.com> Signed-off-by:
Felipe Balbi <felipe.balbi@linux.intel.com>
-
- 26 Jul, 2018 4 commits
-
-
Hans de Goede authored
Even though we only use them once, it is better to not put/release the GPIOs immediately after use, so that others cannot claim them. Use devm functions to get the phy GPIOs, so that they will be automatically released when were unbound from the device and remove the gpio_put calls. Signed-off-by:
Hans de Goede <hdegoede@redhat.com> Signed-off-by:
Felipe Balbi <felipe.balbi@linux.intel.com>
-
Hans de Goede authored
On some Bay Trail (BYT) systems the firmware does not enable the ULPI Refclk. This commit adds a helper which checks and if necessary enabled the Refclk and calls this helper for BYT machines. Signed-off-by:
Hans de Goede <hdegoede@redhat.com> Signed-off-by:
Felipe Balbi <felipe.balbi@linux.intel.com>
-
Hans de Goede authored
Bay Trail / BYT SoCs do not have a builtin device-mode phy, instead they require an external ULPI phy for device-mode. Only some BYT devices have an external phy, but even on those devices device-mode is not working because the dwc3 does not see the phy. The problem is that the ACPI fwnode for the dwc3 does not contain the expected GPIO resources for the GPIOs connected to the chip-select and reset pins of the phy. I've found the workaround which some Android x86 kernels use for this: https://github.com/BORETS24/Kernel-for-Asus-Zenfone-2/blob/master/arch/x86/platform/intel-mid/device_libs/pci/platform_usb_otg.c Which boils down to hardcoding the GPIOs for these devices. The good news it that all boards (*) use the same GPIOs. This commit fixes the ULPI phy not woring by adding a gpiod_lookup_table call which adds a hardcoded mapping for BYT devices. Note that the mapping added by gpiod_add_lookup_table is a fallback mapping, so boards which properly provide GPIO resources in the ACPI firmware-node resources will not use this. *) Except for the first revision of the evalulation-kit, which normal users don't have Signed-off-by:
Hans de Goede <hdegoede@redhat.com> Signed-off-by:
Felipe Balbi <felipe.balbi@linux.intel.com>
-
Thinh Nguyen authored
This driver is to be used for Synopsys PCIe-base HAPS platform. Move the the HAPS support from dwc3-pci to this driver. Signed-off-by:
Thinh Nguyen <thinhn@synopsys.com> Signed-off-by:
Felipe Balbi <felipe.balbi@linux.intel.com>
-
- 18 Jun, 2018 1 commit
-
-
Heikki Krogerus authored
PCI IDs for Intel IceLake. Signed-off-by:
Heikki Krogerus <heikki.krogerus@linux.intel.com> Signed-off-by:
Felipe Balbi <felipe.balbi@linux.intel.com>
-
- 22 Mar, 2018 1 commit
-
-
Thinh Nguyen authored
Platform device is allocated before adding resources. Make sure to properly cleanup on error case. Cc: <stable@vger.kernel.org> Fixes: f1c7e710 ("usb: dwc3: convert to pcim_enable_device()") Signed-off-by:
Thinh Nguyen <thinhn@synopsys.com> Signed-off-by:
Felipe Balbi <felipe.balbi@linux.intel.com>
-
- 07 Nov, 2017 1 commit
-
-
Greg Kroah-Hartman authored
Now that the SPDX tag is in all USB files, that identifies the license in a specific and legally-defined manner. So the extra GPL text wording can be removed as it is no longer needed at all. This is done on a quest to remove the 700+ different ways that files in the kernel describe the GPL license text. And there's unneeded stuff like the address (sometimes incorrect) for the FSF which is never needed. No copyright headers or other non-license-description text was removed. Cc: Kukjin Kim <kgene@kernel.org> Cc: Krzysztof Kozlowski <krzk@kernel.org> Cc: Patrice Chotard <patrice.chotard@st.com> Acked-by:
Felipe Balbi <felipe.balbi@linux.intel.com> Signed-off-by:
Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-
- 04 Nov, 2017 1 commit
-
-
Greg Kroah-Hartman authored
It's good to have SPDX identifiers in all files to make it easier to audit the kernel tree for correct licenses. Update the drivers/usb/ and include/linux/usb* files with the correct SPDX license identifier based on the license text in the file itself. The SPDX identifier is a legally binding shorthand, which can be used instead of the full boiler plate text. This work is based on a script and data from Thomas Gleixner, Philippe Ombredanne, and Kate Stewart. Cc: Thomas Gleixner <tglx@linutronix.de> Cc: Kate Stewart <kstewart@linuxfoundation.org> Cc: Philippe Ombredanne <pombredanne@nexb.com> Signed-off-by:
Greg Kroah-Hartman <gregkh@linuxfoundation.org> Acked-by:
Felipe Balbi <felipe.balbi@linux.intel.com> Acked-by:
Johan Hovold <johan@kernel.org> Signed-off-by:
Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-
- 24 Oct, 2017 1 commit
-
-
Manu Gautam authored
Driver currently resumes and increments pm usage_count of its child device (dwc3 main) from its runtime_resume handler. This requires dwc3 runtime_resume to perform pm_runtime_put to decrement the pm usage_count. However runtime_put from dwc3 happens for non pci drivers (e.g. dwc3-if-simple.c) as well which results in dwc3 pm usage_count becoming negative after couple of runtime suspend resume iterations. Fix this by performing runtime_get/put from dwc3-pci driver only using workqueue. Signed-off-by:
Manu Gautam <mgautam@codeaurora.org> Signed-off-by:
Felipe Balbi <felipe.balbi@linux.intel.com>
-
- 10 Aug, 2017 1 commit
-
-
Doug Wilson authored
dev_pm_ops is not supposed to change at runtime. Marking it constant. Signed-off-by:
Doug Wilson <doug.wilson@gmail.com> Signed-off-by:
Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-
- 09 Aug, 2017 1 commit
-
-
Doug Wilson authored
dev_pm_ops is not supposed to change at runtime. Marking it constant. Signed-off-by:
Doug Wilson <doug.wilson@gmail.com> Signed-off-by:
Felipe Balbi <felipe.balbi@linux.intel.com>
-
- 27 Jun, 2017 1 commit
-
-
Rafael J. Wysocki authored
The run_wake flag in struct dev_pm_info is used to indicate whether or not the device is capable of generating remote wakeup signals at run time (or in the system working state), but the distinction between runtime remote wakeup and system wakeup signaling has always been rather artificial. The only practical reason for it to exist at the core level was that ACPI and PCI treated those two cases differently, but that's not the case any more after recent changes. For this reason, get rid of the run_wake flag and, when applicable, use device_set_wakeup_capable() and device_can_wakeup() instead of device_set_run_wake() and device_run_wake(), respectively. Signed-off-by:
Rafael J. Wysocki <rafael.j.wysocki@intel.com> Reviewed-by:
Mika Westerberg <mika.westerberg@linux.intel.com> Acked-by:
Bjorn Helgaas <bhelgaas@google.com>
-
- 07 Jun, 2017 1 commit
-
-
Andy Shevchenko authored
acpi_evaluate_dsm() and friends take a pointer to a raw buffer of 16 bytes. Instead we convert them to use guid_t type. At the same time we convert current users. acpi_str_to_uuid() becomes useless after the conversion and it's safe to get rid of it. Acked-by:
Rafael J. Wysocki <rafael.j.wysocki@intel.com> Cc: Borislav Petkov <bp@suse.de> Acked-by:
Dan Williams <dan.j.williams@intel.com> Cc: Amir Goldstein <amir73il@gmail.com> Reviewed-by:
Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com> Reviewed-by:
Jani Nikula <jani.nikula@intel.com> Acked-by:
Jani Nikula <jani.nikula@intel.com> Cc: Ben Skeggs <bskeggs@redhat.com> Acked-by:
Benjamin Tissoires <benjamin.tissoires@redhat.com> Acked-by:
Joerg Roedel <jroedel@suse.de> Acked-by:
Adrian Hunter <adrian.hunter@intel.com> Cc: Yisen Zhuang <yisen.zhuang@huawei.com> Acked-by:
Bjorn Helgaas <bhelgaas@google.com> Acked-by:
Felipe Balbi <felipe.balbi@linux.intel.com> Acked-by:
Mathias Nyman <mathias.nyman@linux.intel.com> Reviewed-by:
Heikki Krogerus <heikki.krogerus@linux.intel.com> Acked-by:
Mark Brown <broonie@kernel.org> Signed-off-by:
Andy Shevchenko <andriy.shevchenko@linux.intel.com> Signed-off-by:
Christoph Hellwig <hch@lst.de>
-
- 16 May, 2017 1 commit
-
-
Heikki Krogerus authored
Intel Cannonlake PCH has the same DWC3 than Intel Sunrisepoint. Add the new IDs to the supported devices. Signed-off-by:
Heikki Krogerus <heikki.krogerus@linux.intel.com> Signed-off-by:
Felipe Balbi <felipe.balbi@linux.intel.com>
-
- 23 Mar, 2017 1 commit
-
-
Andy Shevchenko authored
Switch to use managed variant of acpi_dev_add_driver_gpios() to simplify error path and fix potentially wrong assignment if ->probe() fails. While here, add a debug message in case assignment fails to allow user see the cause of a potential issue. Signed-off-by:
Andy Shevchenko <andriy.shevchenko@linux.intel.com> Acked-by:
Felipe Balbi <felipe.balbi@linux.intel.com> Signed-off-by:
Linus Walleij <linus.walleij@linaro.org>
-
- 02 Jan, 2017 3 commits
-
-
Heikki Krogerus authored
Intel Gemini Lake SoC has the same DWC3 than Broxton. Add the new ID to the supported Devices. Signed-off-by:
Heikki Krogerus <heikki.krogerus@linux.intel.com> Signed-off-by:
Felipe Balbi <felipe.balbi@linux.intel.com>
-
John Youn authored
Calling platform_device_add_properties() replaces existing properties so the "linux,sysdev_is_parent" property doesn't get set. Add this property to each platform. Fixes: d64ff406 ("usb: dwc3: use bus->sysdev for DMA configuration") Signed-off-by:
John Youn <johnyoun@synopsys.com> Signed-off-by:
Felipe Balbi <felipe.balbi@linux.intel.com>
-
Hans de Goede authored
usb_get_dr_mode() expects the device-property to be spelled "dr_mode" not "dr-mode". Spelling it properly fixes the following warning showing up in dmesg: [ 8704.500545] dwc3 dwc3.2.auto: Configuration mismatch. dr_mode forced to gadget Signed-off-by: Hans de Goede <hdegoede@redhat.com Signed-off-by:
Felipe Balbi <felipe.balbi@linux.intel.com>
-
- 18 Nov, 2016 2 commits
-
-
Arnd Bergmann authored
The dma ops for dwc3 devices are not set properly. So, use a physical device sysdev, which will be inherited from parent, to set the hardware / firmware parameters like dma. Signed-off-by:
Arnd Bergmann <arnd@arndb.de> Signed-off-by:
Sriram Dash <sriram.dash@nxp.com> Tested-by:
Baolin Wang <baolin.wang@linaro.org> Signed-off-by:
Felipe Balbi <felipe.balbi@linux.intel.com>
-
Felipe Balbi authored
dwc3_pci_dsm() is only needed if (PM || PM_SLEEP), we should make sure it's not defined if neither of those is defined. This fixes a randconfig build warning. Acked-by:
Arnd Bergmann <arnd@arndb.de> Reported-by:
Arnd Bergmann <arnd@arndb.de> Signed-off-by:
Felipe Balbi <felipe.balbi@linux.intel.com>
-
- 03 Nov, 2016 2 commits
-
-
Felipe Balbi authored
Intel's BXT devices need to execute a _DSM method during {runtime_,}{suspend,resume} in order to get a chunk of dwc3 to power gate and save some extra power. Let's do that now. Signed-off-by:
Felipe Balbi <felipe.balbi@linux.intel.com>
-
Felipe Balbi authored
We'll be tracking a little more information for PCI drivers, it's about time we add a private structure for that. Signed-off-by:
Felipe Balbi <felipe.balbi@linux.intel.com>
-
- 07 Sep, 2016 1 commit
-
-
Felipe Balbi authored
When building a kernel with CONFIG_PM_SLEEP=n, we get the following warning: drivers/usb/dwc3/dwc3-pci.c:253:12: warning: 'dwc3_pci_pm_dummy' defined but not used In order to fix this, we should only define dwc3_pci_pm_dummy() when CONFIG_PM_SLEEP is defined. Fixes: f6c274e1 ("usb: dwc3: pci: runtime_resume child device") Reported-by:
Arnd Bergmann <arnd@arndb.de> Acked-by:
Arnd Bergmann <arnd@arndb.de> Signed-off-by:
Felipe Balbi <felipe.balbi@linux.intel.com>
-
- 22 Aug, 2016 1 commit
-
-
Felipe Balbi authored
During runtime_resume of dwc3-pci.c, we need to runtime suspend our child device (which is dwc3 proper) otherwise nothing will happen. Signed-off-by:
Felipe Balbi <felipe.balbi@linux.intel.com>
-
- 10 Aug, 2016 1 commit
-
-
Heikki Krogerus authored
Intel Kabylake PCH has the same DWC3 than Intel Sunrisepoint. Add the new ID to the supported devices. Cc: <stable@vger.kernel.org> Signed-off-by:
Heikki Krogerus <heikki.krogerus@linux.intel.com> Signed-off-by:
Felipe Balbi <felipe.balbi@linux.intel.com>
-
- 21 Jun, 2016 1 commit
-
-
Felipe Balbi authored
It's know that Intel's SoCs' dwc3 integration is peripheral-only since Intel implements its own portmux for role-swapping. In order to prevent dwc3 from ever registering and XHCI platform_device, let's just set dr-mode to peripheral-only on Intel SoCs. Signed-off-by:
Felipe Balbi <felipe.balbi@linux.intel.com>
-
- 20 Jun, 2016 2 commits
-
-
Heikki Krogerus authored
This should allow the core driver to drop handling of platform data and expect the platform specific details to always come from properties. Tested-by:
John Youn <johnyoun@synopsys.com> Signed-off-by:
Heikki Krogerus <heikki.krogerus@linux.intel.com> Cc: Huang Rui <ray.huang@amd.com> CC: John Youn <John.Youn@synopsys.com> Signed-off-by:
Felipe Balbi <felipe.balbi@linux.intel.com>
-
Felipe Balbi authored
Allow for dwc3-pci to reach D3 and enable pm_runtime by providing dummy PM hooks. Without them, PCI subsystem won't put device to D3. Signed-off-by:
Felipe Balbi <felipe.balbi@linux.intel.com>
-
- 28 Apr, 2016 2 commits
-
-
Heikki Krogerus authored
For convenience, passing the dwc3 platform device as a parameter to dwc3_pci_quirks() function. Signed-off-by:
Heikki Krogerus <heikki.krogerus@linux.intel.com> Signed-off-by:
Felipe Balbi <felipe.balbi@linux.intel.com>
-
Heikki Krogerus authored
Setting the ACPI companion before calling dwc3_pci_quirks. The ACPI companion will be set unconditionally as the primary fwnode, overriding any previously set primary fwnode. This will make sure that any build-in properties added to the platform device will be added as the secondary fwnode in cases where also ACPI companion exists. Signed-off-by:
Heikki Krogerus <heikki.krogerus@linux.intel.com> Signed-off-by:
Felipe Balbi <felipe.balbi@linux.intel.com>
-
- 06 Apr, 2016 1 commit
-
-
Heikki Krogerus authored
BXT-M is a Intel Broxton SoC based platform with unique PCI ID. Signed-off-by:
Heikki Krogerus <heikki.krogerus@linux.intel.com> Signed-off-by:
Felipe Balbi <felipe.balbi@linux.intel.com>
-
- 16 Nov, 2015 1 commit
-
-
Heikki Krogerus authored
PCI IDs for Broxton based platforms. Signed-off-by:
Heikki Krogerus <heikki.krogerus@linux.intel.com> Signed-off-by:
Felipe Balbi <balbi@ti.com>
-
- 09 Oct, 2015 3 commits
-
-
John Youn authored
Certain Synopsys prototyping PHY boards are not able to meet timings constraints for LPM. This allows the PHY to meet those timings by leaving the PHY clock running during suspend. Cc: <stable@vger.kernel.org> # v3.18+ Signed-off-by:
John Youn <johnyoun@synopsys.com> Signed-off-by:
Felipe Balbi <balbi@ti.com>
-
John Youn authored
Add platform data and set usb3_lpm_capable and has_lpm_erratum. Cc: <stable@vger.kernel.org> # v3.18+ Signed-off-by:
John Youn <johnyoun@synopsys.com> Signed-off-by:
Felipe Balbi <balbi@ti.com>
-
John Youn authored
Fix the alignment of the PCI device definitions. Also change the hex digit capitalization of one constant to make it consistent with the rest of the file and driver. Signed-off-by:
John Youn <johnyoun@synopsys.com> Signed-off-by:
Felipe Balbi <balbi@ti.com>
-