Age | Commit message (Collapse) | Author |
|
are happening though a device connection on host port.
Currently for harmony, an intergrated SMSC hub present on USB3. Because
of this device connection is present on USB3 and USB power busy hints
are always on. To avoid this, for host by default busy hints are off and
USB busy hints will be on for :
1.Bulk and isochronus transfers
2.Interrupts transfers with buffer length >= 256.
Busy hint will be on for pre-defined amount of time
and after that busy hints will be off automatically.
With this in idle state power is reduced.
Tested on : Harmony
Enumeartion is happening fine.
LAN and USB HID devices are working fine
Change-Id: Ifd653bebfb52c7702f7d24bf11ccf93e62ea0f66
Reviewed-on: http://git-master/r/915
Reviewed-by: Gary King <gking@nvidia.com>
Tested-by: Gary King <gking@nvidia.com>
|
|
If CONFIG_PM is not selected, don't compile EHCI bus suspend/resume.
Change-Id: Ia89612fa3d82dc671accc597e4d1ca05f56eaa5c
Reviewed-on: http://git-master/r/783
Reviewed-by: Gary King <gking@nvidia.com>
Tested-by: Gary King <gking@nvidia.com>
|
|
cable/usb device connection
Currently on resume from LP1, though there is no adb cable/USB device connected to
USB1/USB3 then also usb busy hints are getting on. With this change on resume:
For gadget driver, if cable is not connected then busy hints made off.
For host driver, if device(s) are not connected then busy hints are off.
Code Clean-up for power improvement
Tested on : Whistler board USB1 OTG + USB3 host
Tested with all possible connection on USB1 and USB3
Change-Id: I6d210bba1264d9c0134d586d3f67ff609ba2b3fe
Reviewed-on: http://git-master/r/745
Reviewed-by: Narendra Damahe <ndamahe@nvidia.com>
Tested-by: Narendra Damahe <ndamahe@nvidia.com>
Reviewed-by: Gary King <gking@nvidia.com>
Tested-by: Gary King <gking@nvidia.com>
|
|
Usb host initialization code clean up for using native calls instead of Rm APIs.
Change-Id: I98af3666f310cf44554f78bcdec47eb860d71f18
Reviewed-on: http://git-master/r/717
Reviewed-by: Pavan Kunapuli <pkunapuli@nvidia.com>
Tested-by: Pavan Kunapuli <pkunapuli@nvidia.com>
Reviewed-by: Gary King <gking@nvidia.com>
|
|
In OTG mode during suspend/resume functionalities both device driver and host
driver are accessing the USB1 controller registers with out checking the
operation mode. Host driver is reading wrong status values from the registers
causing the stack dump. This is fixed by checking the OTG state and guarding
the hardware to access by only one driver(host or device), which is currently
in operation.
Bug 651253 : [Whistler] : USB gadget and/or EHCI bus suspend/resume API causes
crash 1st after suspend/resume
Tested on : Android/whistler with suspend/resume framework enabled.
Suspend/resume sequence work fine with OTG enabled.
|
|
With OTG disabled on whistler the suspend/resume code was hanging. The
reason is because register reads hang when clocks are disabled. This fix
tries to skip the suspend calls when device is already in suspend state.
This avoids attempts to read register with clocks disabled.
Bug 651253 : [Whistler] : USB gadget and/or EHCI bus suspend/resume
API causes crash 1st after suspend/resume
Reviewed by: vmoganty
Tested on : whistler with suspend/resume framework enabled. Suspend/resume
sequence seems to work fine on whistler and harmony with OTG
disabled in kernel and odm_query.
Change-Id: Iedc096648deab5c3b80350446c4ee67f625df27e
|
|
suspend/resume APIs defined for tegra usb host
Bug 635299
Tested on : harmony. suspend/resume calls success.
Change-Id: I5dad8bc2cc524de74c2fd3260b014de4764c604c
|
|
commit 98968646e2f ("Adding USB OTG feature") causes the build to
break due to dependencies on otg_get_transceiver if OTG isn't enabled
for the platform.
Change-Id: I97af1bb032297f922932a30fa4ef7e4607133592
|
|
Enabling support for the OTG in NVIDIA Tegra SoCs by providing simple
transceiver interface for detecting the Host or Device based on the
USBID and VBUS sensors.
Bug 629098 USB OTG problem
Tested on Whistler with Android
USB OTG is tested on whistler USB port1, by setting the USB mode type
as "NvOdmUsbModeType_OTG" in the ODM usb property of
arch/arm/mach-tegra/odm_kit/query/whistler/nvodm_query.c
Tested OTG-HOST by connecting USB keyboard and OTG-device by connecting adb.
Change-Id: I860e1f4be5f7c96765c2ce1ca320fdf212164811
|
|
This is needed as ehci_bus_suspend() gets called during bootup
which causes the boot process to hang when tegra suspend ops is
registered with kernel.
Change-Id: Ic6976ee8c04e284d3fb89a8f69cb662f5dbeffa6
|
|
tegra dynamically clocks access to the controller, so if no peripherals
are attached the controller clocks will be disabled to conserve power
since shutdown accesses the controller registers, the controller must
have its clocks enabled, regardless of the presence of peripherals
Change-Id: Ia95859fda514001cb8ad58260c3e58b4f470080c
|
|
use VBUS_WAKEUP_EVENT rather than A_SESSION_VALID for cable detection.
disable OTG_BIAS circuitry when no cable connected
set UTMIP to reset when device is suspended
reduces measured idle USB power from 36mW to 3mW
|
|
Change-Id: Ibcbc2a5d8ebe5d346d008019571ab9a659b7479d
|