tiler:tiler-omap5.git
6 years agoarm: omap: dwc3: use pm macros to populate pm ops
Kishon Vijay Abraham I [Wed, 21 Mar 2012 09:24:06 +0000 (14:54 +0530)]
arm: omap: dwc3: use pm macros to populate pm ops

Used pm macros defined in pm.h like SET_SYSTEM_SLEEP_PM_OPS and
SET_RUNTIME_PM_OPS to fill pm ops for dwc3.

Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
6 years agodwc3: gadget: protect access to _is_connected_ flag in dwc gadget
Kishon Vijay Abraham I [Wed, 21 Mar 2012 08:34:12 +0000 (14:04 +0530)]
dwc3: gadget: protect access to _is_connected_ flag in dwc gadget

The is_connected flag in dwc3/gadget.c is used to check if the cable is
connected (even before insmoding gadget_driver), and enumerate the device
if it is already connected.
It should be protected because the is_connected flag can be modified
during connect/disconnect event.

Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
6 years agousb: dwc3: fix to have is_connected flag hold the correct value in all scenarios
Kishon Vijay Abraham I [Wed, 21 Mar 2012 05:37:50 +0000 (11:07 +0530)]
usb: dwc3: fix to have is_connected flag hold the correct value in all scenarios

The _is_connected_ flag holds the status of whether the cable is connected
or not. If the cable is disconnected after removing gadget driver (e.g g_zero),
the _is_connected_ holds the wrong status. It's fixed here.

Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
6 years agoarm: omap: dwc3: enable and disable clocks from glue
Kishon Vijay Abraham I [Wed, 21 Mar 2012 06:27:48 +0000 (11:57 +0530)]
arm: omap: dwc3: enable and disable clocks from glue

Some of the register writes in glue (dwc3_omap) depends on clocks to
be enabled by its child (core). It is fixed here so that such
inter-dependencies are not there.

Also if the cable is disconnected after rmmod gadget_driver (e.g g_zero), there
will be a crash since clocks are disabled during rmmod and cable disconnect
event will try to write to mailbox register.

Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
6 years agoMerge branch 'dwc3-v3.1' into for-omap5
Felipe Balbi [Thu, 22 Mar 2012 08:50:53 +0000 (10:50 +0200)]
Merge branch 'dwc3-v3.1' into for-omap5

* dwc3-v3.1:
  usb: dwc3: host: align on host device name
  usb: dwc3: debugfs: fix error check
  usb: dwc3: core: fix cached revision on our structure
  usb: dwc3: Free event buffers array
  usb: dwc3: ep0: add a default case for SetFeature command
  usb: dwc3: ep0: increment "actual" on bounced ep0 case
  usb: dwc3: ep0: Handle requests greater than wMaxPacketSize

Conflicts:
drivers/usb/dwc3/core.c

Signed-off-by: Felipe Balbi <balbi@ti.com>
6 years agousb: dwc3: host: align on host device name
Felipe Balbi [Fri, 3 Feb 2012 13:04:46 +0000 (15:04 +0200)]
usb: dwc3: host: align on host device name

PCI uses xhci-hcd, so let's use the same device
name to avoid confusion.

Signed-off-by: Felipe Balbi <balbi@ti.com>
6 years agousb: dwc3: debugfs: fix error check
Felipe Balbi [Tue, 31 Jan 2012 11:33:32 +0000 (13:33 +0200)]
usb: dwc3: debugfs: fix error check

debugfs APIs will return NULL if it fails
to create the file/directory we ask it to
create.

Instead of checking for IS_ERR(ptr) we must
check for !ptr.

Signed-off-by: Felipe Balbi <balbi@ti.com>
6 years agousb: dwc3: core: fix cached revision on our structure
Felipe Balbi [Wed, 14 Dec 2011 19:59:30 +0000 (21:59 +0200)]
usb: dwc3: core: fix cached revision on our structure

All our revision macros are defined with the entire
32-bits which we read from GSNPSID register, so we
must cache all 32-bits properly rather than masking
the top 16-bits.

This will fix all revision checks we have on current
driver.

Signed-off-by: Felipe Balbi <balbi@ti.com>
6 years agousb: dwc3: Free event buffers array
Anton Tikhomirov [Tue, 6 Mar 2012 08:05:15 +0000 (17:05 +0900)]
usb: dwc3: Free event buffers array

Array should be freed together with event buffers, since it was
allocated dynamically.

Signed-off-by: Anton Tikhomirov <av.tikhomirov@samsung.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
6 years agousb: dwc3: ep0: add a default case for SetFeature command
Gerard Cauvy [Fri, 16 Mar 2012 14:20:10 +0000 (16:20 +0200)]
usb: dwc3: ep0: add a default case for SetFeature command

Without this default case returning an error,
thus replying with a stall, we would fail
USB30CV TD 9.11 Bad Feature test case.

Cc: stable@vger.kernel.org
Signed-off-by: Gerard Cauvy <g-cauvy1@ti.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
6 years agousb: dwc3: ep0: increment "actual" on bounced ep0 case
Felipe Balbi [Wed, 21 Mar 2012 09:44:00 +0000 (11:44 +0200)]
usb: dwc3: ep0: increment "actual" on bounced ep0 case

due to a HW limitation we have a bounce buffer for ep0
out transfers which are not aligned with MaxPacketSize.

On such case we were not increment r->actual as we should.

This patch fixes that mistake.

Cc: stable@vger.kernel.org
Signed-off-by: Felipe Balbi <balbi@ti.com>
6 years agousb: dwc3: ep0: Handle requests greater than wMaxPacketSize
Moiz Sonasath [Wed, 14 Mar 2012 05:44:56 +0000 (00:44 -0500)]
usb: dwc3: ep0: Handle requests greater than wMaxPacketSize

To allow ep0 out transfers of upto bounce buffer size
instead of maxpacketsize, use the transfer size as multiple
of ep0 maxpacket size.

Cc: stable@vger.kernel.org
Signed-off-by: Moiz Sonasath <m-sonasath@ti.com>
Signed-off-by: Partha Basak <p-basak2@ti.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
6 years agoMerge branch 'for-omap5-pm' of git://gitorious.org/~kishon/linuxomap/linux-omap-usb...
Felipe Balbi [Tue, 20 Mar 2012 14:08:00 +0000 (16:08 +0200)]
Merge branch 'for-omap5-pm' of git://gitorious.org/~kishon/linuxomap/linux-omap-usb into kishon-merge

* 'for-omap5-pm' of git://gitorious.org/~kishon/linuxomap/linux-omap-usb:
  arm: omap: dwc3: prevent system low power state when device is enumerated
  arm: omap: dwc3: add off mode support
  arm: omap: dwc3: fix cold plug issue
  omap: dwc3: add aggressive PM support
  usb: udc-core: fix asymmetric calls in remove_driver
  arm: omap: usb3 phy: idle the dpll present in usb3 phy during suspend
  arm: omap: usb3 phy: enable and disable 32k clock during resume and suspend
  arm: omap: usb2 phy: enable and disable 32k clock during resume and suspend
  arm: omap5: clocks: change flag for coreaon_54xx_clkdm to CLKDM_CAN_HWSUP
  arm: omap: use hwmod flags so that runtime API set SYSCONFIG register
  arm: omap: hwmod: dwc3: change the order of address space data in hwmod data
  usb: dwc3: gadget: enable phys on disconnect interrupt

6 years agoarm: omap: dwc3: prevent system low power state when device is enumerated
Kishon Vijay Abraham I [Tue, 20 Mar 2012 09:52:00 +0000 (15:22 +0530)]
arm: omap: dwc3: prevent system low power state when device is enumerated

The suspend hooks are now added to prevent dwc3 from entering low power state
when the device is enumerated.

This is necessary because when the dwc3 module is disabled, the phy and dwc3
goes out of sync and both dwc3 and phy has to be reset to make it functional.
This will make the device to be disconnected and re-enumerated again. To avoid
device disconnect, dwc3 is prevented from entering low power state.

Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
6 years agoarm: omap: dwc3: add off mode support
Kishon Vijay Abraham I [Tue, 20 Mar 2012 08:58:00 +0000 (14:28 +0530)]
arm: omap: dwc3: add off mode support

Some of the registers in dwc3 core and dwc3 wrapper get lost after going
to off mode. These registers are restored on runtime resume calls.

Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
6 years agoarm: omap: dwc3: fix cold plug issue
Kishon Vijay Abraham I [Mon, 19 Mar 2012 10:31:43 +0000 (16:01 +0530)]
arm: omap: dwc3: fix cold plug issue

The aggressive PM implementation breaks cold plug. With modprobing
dwc3 modules after the cable is connected, the device is not enumerated.

This is fixed by writing to the mailbox from glue (dwc3-omap) after creating
the dwc3 device.

Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
6 years agoomap: dwc3: add aggressive PM support
Kishon Vijay Abraham I [Tue, 20 Mar 2012 08:56:37 +0000 (14:26 +0530)]
omap: dwc3: add aggressive PM support

Implements aggressive PM wherein the module gets enabled and initialized only
when the cable is connected and a gadget driver (e.g. g_zero) is inserted. And
the module is disabled when the cable is disconnected or gadget driver is
removed.
once the dwc3 module gets disabled, the synchronization between phy and dwc3
goes bad and so the phy and dwc3 core has to be reset again in order to get it
functional. This resetting is done during every connect.

Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Signed-off-by: Partha Basak <p-basak2@ti.com>
6 years agousb: udc-core: fix asymmetric calls in remove_driver
Kishon Vijay Abraham I [Mon, 19 Mar 2012 09:15:55 +0000 (14:45 +0530)]
usb: udc-core: fix asymmetric calls in remove_driver

During modprobe of gadget driver, pullup(RUN) is called after udc_start. To
follow symmetry while removing gadget driver, pullup(STOP) is called before
udc_stop.

This is needed for aggressive PM where udc_stop disables the module completely.
With aggressive PM, the module is completely disabled, clocks are cut during
udc_stop. Calling disconnect after udc_stop necessiates clocks to be enabled
again.

Signed-off-by: Partha Basak <p-basak2@ti.com>
Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
6 years agoarm: omap: usb3 phy: idle the dpll present in usb3 phy during suspend
Kishon Vijay Abraham I [Fri, 9 Mar 2012 15:41:26 +0000 (21:11 +0530)]
arm: omap: usb3 phy: idle the dpll present in usb3 phy during suspend

Select IDLE for the pll configuration during suspend and reset the IDLE
during resume. The pll is now locked just before powering on the phy. Also
the phy is powered down during suspend by writing to scm module.

Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
6 years agoarm: omap: usb3 phy: enable and disable 32k clock during resume and suspend
Kishon Vijay Abraham I [Fri, 9 Mar 2012 14:41:46 +0000 (20:11 +0530)]
arm: omap: usb3 phy: enable and disable 32k clock during resume and suspend

32k clock which was always enabled previously is now disabled during suspend
and enabled during resume. Without disabling it during suspend, the core
doesn't enter low power state.

Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
6 years agoarm: omap: usb2 phy: enable and disable 32k clock during resume and suspend
Kishon Vijay Abraham I [Fri, 9 Mar 2012 14:17:34 +0000 (19:47 +0530)]
arm: omap: usb2 phy: enable and disable 32k clock during resume and suspend

32k clock which was always enabled previously is now disabled during suspend
and enabled during resume. Without disabling it during suspend, the core
doesn't enter low power state.

Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
6 years agoarm: omap5: clocks: change flag for coreaon_54xx_clkdm to CLKDM_CAN_HWSUP
Kishon Vijay Abraham I [Tue, 20 Mar 2012 08:38:34 +0000 (14:08 +0530)]
arm: omap5: clocks: change flag for coreaon_54xx_clkdm to CLKDM_CAN_HWSUP

When clk_enable of "usb_phy_cm_clk32k" is done, CLKTRCTRL bit in
CM_COREAON_CLKSTCTRL register is set to 0x2(SW_WKUP). This doesn't
change to HW_AUTO on clk_disable. Because of this during suspend
("echo mem > /sys/power/state"), core_pwrdm is not entering low power state.

By changing the coreaon_54xx_clkdm flags to CLKDM_CAN_HWSUP, the core domain
enters low power state.

Cc: Benoit Cousson <b-cousson@ti.com>
Cc: Rajendra Nayak <rnayak@ti.com>
Signed-off-by: Partha Basak <p-basak2@ti.com>
Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
6 years agoarm: omap: use hwmod flags so that runtime API set SYSCONFIG register
Kishon Vijay Abraham I [Sat, 10 Mar 2012 10:31:11 +0000 (16:01 +0530)]
arm: omap: use hwmod flags so that runtime API set SYSCONFIG register

HWMOD_SWSUP_SIDLE hwmod flag is set so that get sync sets the SYSCONFIG to
NOIDLE. Setting it to SMARTIDLE makes _set endpoint configuration_ fail.

Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
6 years agoarm: omap: hwmod: dwc3: change the order of address space data in hwmod data
Kishon Vijay Abraham I [Sat, 10 Mar 2012 13:15:02 +0000 (18:45 +0530)]
arm: omap: hwmod: dwc3: change the order of address space data in hwmod data

There was an issue with get_sync when having multiple address spaces. If there
are multiple address spaces associated with a single device, get_sync will
take the first address space to modify the sysconfig register. Hence the order
of address space populated in 54xx hwmod data is swapped so that get sync
modifies the correct sysconfig. Corresponding modification is done in dwc3-omap
to get the correct address space and to create resource for dwc3 correctly
before creating platform device for dwc3.

Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
6 years agousb: dwc3: gadget: enable phys on disconnect interrupt
Felipe Balbi [Tue, 20 Mar 2012 09:50:50 +0000 (15:20 +0530)]
usb: dwc3: gadget: enable phys on disconnect interrupt

When we remove the USB cable, we must re-enable all
phys, rather than suspending them, otherwise we will
not enumerate reliably when we connect the cable again.

This bug was introduced by commit af3894e4 (usb: dwc3:
phy: hook phy to dwc3)

Signed-off-by: Felipe Balbi <balbi@ti.com>
6 years agousb: dwc3: ep0: add a default case for SetFeature command
Gerard Cauvy [Fri, 16 Mar 2012 14:20:10 +0000 (16:20 +0200)]
usb: dwc3: ep0: add a default case for SetFeature command

Without this default case returning an error,
thus replying with a stall, we would fail
USB30CV TD 9.11 Bad Feature test case.

Cc: stable@vger.kernel.org
Signed-off-by: Gerard Cauvy <g-cauvy1@ti.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
6 years agousb: gadget: udc-core: stop UDC on device-initiated disconnect
Felipe Balbi [Thu, 15 Mar 2012 14:37:18 +0000 (16:37 +0200)]
usb: gadget: udc-core: stop UDC on device-initiated disconnect

When we want to do device-initiated disconnect,
let's make sure we stop the UDC in order to
e.g. allow lower power states to be achieved by
turning off unnecessary clocks and/or stoping
PHYs.

When reconnecting, call ->udc_start() again to
make sure UDC is reinitialized.

Signed-off-by: Felipe Balbi <balbi@ti.com>
6 years agousb: dwc3: ep0: allow transfers of up to bounce buffer size
Felipe Balbi [Fri, 2 Mar 2012 12:55:37 +0000 (14:55 +0200)]
usb: dwc3: ep0: allow transfers of up to bounce buffer size

RNDIS Gadget have big descriptors (up to 98 bytes) but
our ep0 bounce buffer is big enough for such data
(up to 512 bytes), instead of testing for wMaxPacketSize,
which is 64 bytes in HighSpeed, we can test against the
size of bounce buffer, which is always 512 bytes.

Signed-off-by: Felipe Balbi <balbi@ti.com>
6 years agoMerge branch 'dwc3-v3.1' into for-omap5
Felipe Balbi [Mon, 27 Feb 2012 08:03:54 +0000 (10:03 +0200)]
Merge branch 'dwc3-v3.1' into for-omap5

* dwc3-v3.1:
  usb: dwc3: gadget: don't wrap around the TRB poll on non-ISOC
  usb: dwc3: gadget: don't wait for ep cmd IRQ
  usb: dwc3: gadget: drop useless code
  usb: dwc3: ep0: fix SetFeature(TEST)
  usb: dwc3: debugfs: fix off by one when entering testmode
  usb: dwc3: gadget: avoid memcpy()ing event buffer
  usb: dwc3: convert TRBs into bitshifts

6 years agousb: dwc3: gadget: don't wrap around the TRB poll on non-ISOC
Paul Zimmerman [Wed, 15 Feb 2012 11:35:06 +0000 (13:35 +0200)]
usb: dwc3: gadget: don't wrap around the TRB poll on non-ISOC

If we have a non-ISOC endpoint, we will not have a Link TRB
pointing to the beginning of the TRB pool. On such endpoints,
we don't want to let the driver wrap around the TRB pool
otherwise controller will hang waiting for a valid TRB.

Cc: stable@vger.kernel.org
Signed-off-by: Paul Zimmerman <paulz@synopsys.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
6 years agousb: dwc3: gadget: don't wait for ep cmd IRQ
Felipe Balbi [Fri, 17 Feb 2012 10:10:04 +0000 (12:10 +0200)]
usb: dwc3: gadget: don't wait for ep cmd IRQ

That IRQ is causing way too much trouble. We have
a different handling which was agreed with IP
provider and has been tested with FPGA and OMAP5.

Signed-off-by: Felipe Balbi <balbi@ti.com>
6 years agousb: dwc3: gadget: drop useless code
Felipe Balbi [Fri, 17 Feb 2012 09:58:14 +0000 (11:58 +0200)]
usb: dwc3: gadget: drop useless code

We never set CMDIOC bit for Start Transfer
command, so that code will never be used.

Signed-off-by: Felipe Balbi <balbi@ti.com>
6 years agousb: dwc3: ep0: fix SetFeature(TEST)
Gerard Cauvy [Fri, 10 Feb 2012 10:21:18 +0000 (12:21 +0200)]
usb: dwc3: ep0: fix SetFeature(TEST)

When host requests us to enter a test mode,
we cannot directly enter the test mode before
Status Phase is completed, otherwise the core
will never be able to deliver the Status ZLP
to host, because it has already entered the
requested Test Mode.

In order to fix the error, we move the actual
start of Test Mode right after we receive
Transfer Complete event of the status phase.

Signed-off-by: Gerard Cauvy <g-cauvy1@ti.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
6 years agousb: dwc3: debugfs: fix off by one when entering testmode
Gerard Cauvy [Fri, 10 Feb 2012 10:14:53 +0000 (12:14 +0200)]
usb: dwc3: debugfs: fix off by one when entering testmode

When implementing the USB2 testmode support via debugfs,
Felipe has committed a mistake when counting the number
of letters of some of the strings, resulting on an off
by one error which prevented some of the Test modes to
be entered properly.

This patch, fixes that mistake.

Signed-off-by: Gerard Cauvy <g-cauvy1@ti.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
6 years agousb: dwc3: gadget: avoid memcpy()ing event buffer
Felipe Balbi [Mon, 6 Feb 2012 11:40:17 +0000 (13:40 +0200)]
usb: dwc3: gadget: avoid memcpy()ing event buffer

We're only using the 4 byte events and memcpy()
will make us slower. We can easily avoid that.

Signed-off-by: Felipe Balbi <balbi@ti.com>
6 years agousb: dwc3: convert TRBs into bitshifts
Felipe Balbi [Mon, 6 Feb 2012 09:04:53 +0000 (11:04 +0200)]
usb: dwc3: convert TRBs into bitshifts

this will get rid of a useless memcpy on
IRQ handling, thus improving driver performance.

Signed-off-by: Felipe Balbi <balbi@ti.com>
6 years agoMerge branch 'dwc3-v3.1' into for-omap5
Felipe Balbi [Mon, 6 Feb 2012 07:22:40 +0000 (09:22 +0200)]
Merge branch 'dwc3-v3.1' into for-omap5

6 years agousb: dwc3: make dwc3_get_device_id() return the id
Dan Carpenter [Sat, 4 Feb 2012 13:37:14 +0000 (16:37 +0300)]
usb: dwc3: make dwc3_get_device_id() return the id

We always return zero instead of the id we found.

Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
6 years agoata: ahci_platform: allow modules to work
Felipe Balbi [Thu, 2 Feb 2012 13:58:34 +0000 (15:58 +0200)]
ata: ahci_platform: allow modules to work

That driver can be compiled as a module, so
we can't really use platform_device_probe().

Signed-off-by: Felipe Balbi <balbi@ti.com>
6 years agousb: dwc3: gadget: allocate 3 packets for bulk and isoc endpoints
Felipe Balbi [Thu, 2 Feb 2012 11:01:12 +0000 (13:01 +0200)]
usb: dwc3: gadget: allocate 3 packets for bulk and isoc endpoints

Those transfer types are generally high bandwidth, so we
want to optimize transfers with those endpoints.

For that, databook suggests allocating 3 * wMaxPacketSize
of FIFO. Let's do that.

Signed-off-by: Felipe Balbi <balbi@ti.com>
6 years agoARM: OMAP5: update defconfig to enable dwc3
Kishon Vijay Abraham I [Wed, 1 Feb 2012 10:35:47 +0000 (16:05 +0530)]
ARM: OMAP5: update defconfig to enable dwc3

Make dwc3, ocp2scp, gadget drivers, usb2/usb3 phy as modules

Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
6 years agoomap: ocp2scp: create omap device for ocp2scp
Kishon Vijay Abraham I [Wed, 1 Feb 2012 10:42:53 +0000 (16:12 +0530)]
omap: ocp2scp: create omap device for ocp2scp

Platfrom device for ocp2scp is created using omap_device_build in
devices file. This is used for both omap4(musb) and omap5(dwc3).

Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
6 years agousb: dwc3: phy: hook phy to dwc3
Kishon Vijay Abraham I [Wed, 1 Feb 2012 09:40:54 +0000 (15:10 +0530)]
usb: dwc3: phy: hook phy to dwc3

The phy's present in the system (usb3 phy and usb2 phy) are hooked
to dwc3. Dwc3 will now get notifications from phy on connect or disconnect
events and the wrapper will program the mailbox to notify dwc3.

Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
6 years agousb: dwc3: omap: use get_sync to enable module
Kishon Vijay Abraham I [Wed, 1 Feb 2012 09:38:30 +0000 (15:08 +0530)]
usb: dwc3: omap: use get_sync to enable module

Used runtime API's to enable module before register access.

Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
6 years agoomap: usb: palmas: make palmas as a comparator driver to omap_usb2
Kishon Vijay Abraham I [Wed, 1 Feb 2012 16:32:38 +0000 (22:02 +0530)]
omap: usb: palmas: make palmas as a comparator driver to omap_usb2

The phy driver (omap-usb2) is made to use palmas-usb as a comparator
driver for detecting VBUS and ID GND events. palmas-usb driver raises
notification on receving VBUS or ID interrupts.

Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
6 years agoUSB: Palmas OTG Transceiver Driver
Graeme Gregory [Tue, 31 Jan 2012 10:35:01 +0000 (16:05 +0530)]
USB: Palmas OTG Transceiver Driver

This is the driver for the OTG transceiver built into the Palmas chip. It
handles the various USB OTG events that can be generated by cable
insertion/removal.

Signed-off-by: Graeme Gregory <gg@slimlogic.co.uk>
Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
6 years agoarm: omap: add a new driver for usb3 phy
Kishon Vijay Abraham I [Wed, 1 Feb 2012 09:34:43 +0000 (15:04 +0530)]
arm: omap: add a new driver for usb3 phy

Added a driver for usb3 phy that handles the interaction between usb phy
device and dwc3 controller. Writing to control module is taken care of by
API's provided by scm driver.

Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
6 years agoomap: usb: twl6030: make twl6030_usb as a comparator driver to omap_usb2
Kishon Vijay Abraham I [Mon, 30 Jan 2012 06:52:46 +0000 (12:22 +0530)]
omap: usb: twl6030: make twl6030_usb as a comparator driver to omap_usb2

All the PHY capabilities other than VBUS, ID GND and OTG SRP are removed
from twl6030. These will be taken care of by the dedicated usb2 phy driver.

Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
6 years agoarm: omap: add a new driver for usb2 phy
Kishon Vijay Abraham I [Wed, 1 Feb 2012 16:14:52 +0000 (21:44 +0530)]
arm: omap: add a new driver for usb2 phy

Added a driver for usb phy that handles the interaction between usb phy
device and musb controller. In the case of omap4, phy functionality is split
between twl6030 and a UTMI phy embedded inside OMAP4. In order to acheive this,
a new structure _phy_companion_ is added.

Mailbox communication between usb2 phy and MUSB controller is achieved by
using SCM driver API'S (to write to control module register).

Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
6 years agoomap5: clock data: add clock node for usb_phy_core
Kishon Vijay Abraham I [Fri, 27 Jan 2012 08:51:31 +0000 (14:21 +0530)]
omap5: clock data: add clock node for usb_phy_core

COREAON_32K_GFCLK is used by usb2 phy and usb3 phy as debounce/wkup CLK.
A clock node has been added to represent this clock.

Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
6 years agousb: phy: scm: use scm driver to program control module register
Kishon Vijay Abraham I [Sun, 29 Jan 2012 13:29:39 +0000 (18:59 +0530)]
usb: phy: scm: use scm driver to program control module register

Usb phy in omap configures control module register for powering on the phy,
configuring VBUSVALID, AVALID, IDDIG and SESSEND. For performing the
above mentioned configuration, API's are added in the control module driver.

Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Cc: Keerthy <j-keerthy@ti.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
6 years agoomap: scm: export an API to get scm device pointer
Kishon Vijay Abraham I [Mon, 30 Jan 2012 08:35:15 +0000 (14:05 +0530)]
omap: scm: export an API to get scm device pointer

SCM module mandates all the modules dependant on SCM to be built-in.
By using an export API in scm module, the dependant module can be built as
built-in or module and at the time of creation it can use the SCM API to get
the scm device pointer. The SCM module should be created early and hence
changed to arch_initcall.

Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
6 years agoarm: omap: add a new driver for ocp2scp
Kishon Vijay Abraham I [Wed, 1 Feb 2012 10:12:03 +0000 (15:42 +0530)]
arm: omap: add a new driver for ocp2scp

Adds a new driver _ocp2scp_ to enable clocks and exports an API to set
timing parameters.

This driver takes the responsibility of creating all the devices that is
connected to OCP2SCP. In the case of OMAP4, USB2PHY is connected to ocp2scp.

Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
6 years agoARM: OMAP5: add _dev_attr_ to ocp2scp for representing usb_phy
Kishon Vijay Abraham I [Thu, 26 Jan 2012 09:13:22 +0000 (14:43 +0530)]
ARM: OMAP5: add _dev_attr_ to ocp2scp for representing usb_phy

In order to reflect devices(usb_phy) attached to ocp2scp bus, ocp2scp
is assigned a device attribute to represent the attached devices.

rev_id field has been added to differentiate the usb3 phy devices attached to
omap4 and omap5

Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Cc: Benoit Cousson <b-cousson@ti.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
6 years agoARM: OMAP5: Add hwmod data for ocp2scp
Benoit Cousson [Tue, 3 Jan 2012 11:49:14 +0000 (17:19 +0530)]
ARM: OMAP5: Add hwmod data for ocp2scp

autogenerated ocp2scp hwmod data

Signed-off-by: Benoit Cousson <b-cousson@ti.com>
Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
6 years agoARM: OMAP4: add _dev_attr_ to ocp2scp for representing usb_phy
Kishon Vijay Abraham I [Tue, 3 Jan 2012 11:49:13 +0000 (17:19 +0530)]
ARM: OMAP4: add _dev_attr_ to ocp2scp for representing usb_phy

In order to reflect devices(usb_phy) attached to ocp2scp bus, ocp2scp
is assigned a device attribute to represent the attached devices.

rev_id field has been added to differentiate the usb3 phy devices attached to
omap4 and omap5

Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Cc: Benoit Cousson <b-cousson@ti.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
6 years agoARM: OMAP4: update hwmod data for ocp2scp
Kishon Vijay Abraham I [Tue, 3 Jan 2012 11:49:12 +0000 (17:19 +0530)]
ARM: OMAP4: update hwmod data for ocp2scp

missing fields in the autogenerated hwmod like sysc field and memory
address space is added.

Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Cc: Benoit Cousson <b-cousson@ti.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
6 years agoARM: OMAP4: Add hwmod data for ocp2scp
Benoit Cousson [Tue, 3 Jan 2012 11:49:11 +0000 (17:19 +0530)]
ARM: OMAP4: Add hwmod data for ocp2scp

autogenerated ocp2scp hwmod data

Signed-off-by: Benoit Cousson <b-cousson@ti.com>
Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
6 years agousb: otg: support for multiple transceivers by a single controller
Kishon Vijay Abraham I [Thu, 26 Jan 2012 05:38:55 +0000 (11:08 +0530)]
usb: otg: support for multiple transceivers by a single controller

Add a linked list for keeping multiple PHY instances with different
types so that we can have separate USB2 and USB3 PHYs on one single
board. _get_phy_ has been changed so that the controller gets
the transceiver by type. _remove_phy_ has been added to let the phy
be removed from the phy list.

Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
6 years agousb: otg: utils: rename function name in OTG utils
Kishon Vijay Abraham I [Thu, 26 Jan 2012 05:25:55 +0000 (10:55 +0530)]
usb: otg: utils: rename function name in OTG utils

_transceiver() in otg.c is replaced with _phy. usb_set_transceiver is
replaced with usb_add_phy to make it similar to other usb standard
function
names like usb_add_hcd.

Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
6 years agousb: otg: Convert all users to pass struct usb_otg for OTG functions
Heikki Krogerus [Wed, 25 Jan 2012 17:03:07 +0000 (22:33 +0530)]
usb: otg: Convert all users to pass struct usb_otg for OTG functions

This changes the otg functions so that they receive struct
otg instead of struct usb_phy as parameter and
converts all users of these functions to pass the otg member
of their usb_phy.

Includes fixes to IMX code from Sascha Hauer.

Signed-off-by: Heikki Krogerus <heikki.krogerus@linux.intel.com>
Cc: Sascha Hauer <s.hauer@pengutronix.de>
Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
6 years agousb: otg: Remove OTG specific members from usb_phy
Heikki Krogerus [Tue, 24 Jan 2012 11:51:09 +0000 (13:51 +0200)]
usb: otg: Remove OTG specific members from usb_phy

All the drivers are now converted to use struct usb_otg, so
removing the OTG specific members from struct usb_phy.

Signed-off-by: Heikki Krogerus <heikki.krogerus@linux.intel.com>
Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
6 years agousb: Convert all users to new usb_phy
Heikki Krogerus [Thu, 26 Jan 2012 05:21:51 +0000 (10:51 +0530)]
usb: Convert all users to new usb_phy

Use the new usb_phy_* functions with transceiver
operations instead of the old otg functions.

Includes fixes from Sascha Hauer.

Signed-off-by: Heikki Krogerus <heikki.krogerus@linux.intel.com>
Cc: Sascha Hauer <s.hauer@pengutronix.de>
Cc: Pavankumar Kondeti <pkondeti@codeaurora.org>
Cc: Li Yang <leoli@freescale.com>
Cc: Eric Miao <eric.y.miao@gmail.com>
Cc: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
6 years agopower_supply: Convert all users to new usb_phy
Heikki Krogerus [Wed, 25 Jan 2012 14:43:07 +0000 (20:13 +0530)]
power_supply: Convert all users to new usb_phy

Use the new usb_phy_* functions instead of the old
otg_* ones.

Signed-off-by: Heikki Krogerus <heikki.krogerus@linux.intel.com>
Acked-by: Anton Vorontsov <cbouatmailru@gmail.com>
Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
6 years agousb: musb: Start using struct usb_otg
Heikki Krogerus [Tue, 24 Jan 2012 11:51:05 +0000 (13:51 +0200)]
usb: musb: Start using struct usb_otg

Use struct usb_otg members with OTG specific functions instead
of usb_phy members.

Signed-off-by: Heikki Krogerus <heikki.krogerus@linux.intel.com>
Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
6 years agoarm: imx: Start using struct usb_otg
Heikki Krogerus [Tue, 24 Jan 2012 11:51:04 +0000 (13:51 +0200)]
arm: imx: Start using struct usb_otg

Use struct usb_otg members with OTG specific functions instead
of usb_phy members.

Includes fixes from Sascha Hauer.

Signed-off-by: Heikki Krogerus <heikki.krogerus@linux.intel.com>
Acked-by: Igor Grinberg <grinberg@compulab.co.il>
Tested-by: Philippe RĂ©tornaz <philippe.retornaz@epfl.ch>
Tested-by: Sascha Hauer <s.hauer@pengutronix.de>
Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
6 years agousb: otg: ulpi: Start using struct usb_otg
Heikki Krogerus [Tue, 24 Jan 2012 11:51:03 +0000 (13:51 +0200)]
usb: otg: ulpi: Start using struct usb_otg

Use struct usb_otg members with OTG specific functions instead
of usb_phy members.

Signed-off-by: Heikki Krogerus <heikki.krogerus@linux.intel.com>
Acked-by: Igor Grinberg <grinberg@compulab.co.il>
Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
6 years agousb: otg: twl6030: Start using struct usb_otg
Heikki Krogerus [Tue, 24 Jan 2012 11:51:02 +0000 (13:51 +0200)]
usb: otg: twl6030: Start using struct usb_otg

Use struct usb_otg members with OTG specific functions instead
of usb_phy members.

Signed-off-by: Heikki Krogerus <heikki.krogerus@linux.intel.com>
Tested-by: Kishon Vijay Abraham I <kishon@ti.com>
Cc: Hema HK <hemahk@ti.com>
Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
6 years agousb: otg: twl4030: Start using struct usb_otg
Heikki Krogerus [Tue, 24 Jan 2012 11:51:01 +0000 (13:51 +0200)]
usb: otg: twl4030: Start using struct usb_otg

Use struct usb_otg members with OTG specific functions instead
of usb_phy members.

Signed-off-by: Heikki Krogerus <heikki.krogerus@linux.intel.com>
Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
6 years agousb: otg: nop: Start using struct usb_otg
Heikki Krogerus [Tue, 24 Jan 2012 11:51:00 +0000 (13:51 +0200)]
usb: otg: nop: Start using struct usb_otg

Use struct usb_otg members with OTG specific functions instead
of usb_phy members.

Signed-off-by: Heikki Krogerus <heikki.krogerus@linux.intel.com>
Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
6 years agousb: otg: langwell: Start using struct usb_otg
Heikki Krogerus [Thu, 26 Jan 2012 04:52:03 +0000 (10:22 +0530)]
usb: otg: langwell: Start using struct usb_otg

Use struct usb_otg members with OTG specific functions instead
of usb_phy members.

Signed-off-by: Heikki Krogerus <heikki.krogerus@linux.intel.com>
Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
6 years agousb: otg: msm: Start using struct usb_otg
Heikki Krogerus [Tue, 24 Jan 2012 11:50:59 +0000 (13:50 +0200)]
usb: otg: msm: Start using struct usb_otg

Use struct usb_otg members with OTG specific functions instead
of usb_phy members.

Signed-off-by: Heikki Krogerus <heikki.krogerus@linux.intel.com>
Cc: Pavankumar Kondeti <pkondeti@codeaurora.org>
Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
6 years agousb: otg: isp1301_omap: Start using struct usb_otg
Heikki Krogerus [Tue, 24 Jan 2012 11:50:58 +0000 (13:50 +0200)]
usb: otg: isp1301_omap: Start using struct usb_otg

Use struct usb_otg members with OTG specific functions instead
of usb_phy members.

Signed-off-by: Heikki Krogerus <heikki.krogerus@linux.intel.com>
Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
6 years agousb: otg: gpio_vbus: Start using struct usb_otg
Heikki Krogerus [Tue, 24 Jan 2012 11:50:57 +0000 (13:50 +0200)]
usb: otg: gpio_vbus: Start using struct usb_otg

Use struct usb_otg members with OTG specific functions instead
of usb_phy members.

Signed-off-by: Heikki Krogerus <heikki.krogerus@linux.intel.com>
Cc: Philipp Zabel <philipp.zabel@gmail.com>
Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
6 years agousb: otg: fsl: Start using struct usb_otg
Heikki Krogerus [Tue, 24 Jan 2012 11:50:56 +0000 (13:50 +0200)]
usb: otg: fsl: Start using struct usb_otg

Use struct usb_otg members with OTG specific functions instead
of usb_phy members.

Signed-off-by: Heikki Krogerus <heikki.krogerus@linux.intel.com>
Cc: Li Yang <leoli@freescale.com>
Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
6 years agousb: otg: ab8500: Start using struct usb_otg
Heikki Krogerus [Tue, 24 Jan 2012 11:50:55 +0000 (13:50 +0200)]
usb: otg: ab8500: Start using struct usb_otg

Use struct usb_otg members with OTG specific functions instead
of usb_phy members.

Signed-off-by: Heikki Krogerus <heikki.krogerus@linux.intel.com>
Acked-by: Mian Yousaf Kaukab <mian.yousaf.kaukab@stericsson.com>
Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
6 years agousb: otg: Separate otg members from usb_phy
Heikki Krogerus [Tue, 24 Jan 2012 11:50:54 +0000 (13:50 +0200)]
usb: otg: Separate otg members from usb_phy

Introducing struct otg and collecting otg specific members
to it from struct usb_phy. There are no changes to
struct usb_phy at this stage. This also renames
transceiver specific functions, and offers aliases for the
old otg ones.

Signed-off-by: Heikki Krogerus <heikki.krogerus@linux.intel.com>
Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
6 years agousb: otg: Rename usb_xceiv_event to usb_phy_event
Heikki Krogerus [Tue, 24 Jan 2012 11:50:53 +0000 (13:50 +0200)]
usb: otg: Rename usb_xceiv_event to usb_phy_event

Convert all users.

Signed-off-by: Heikki Krogerus <heikki.krogerus@linux.intel.com>
Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
6 years agousb: otg: Rename otg_transceiver to usb_phy
Heikki Krogerus [Wed, 25 Jan 2012 17:42:50 +0000 (23:12 +0530)]
usb: otg: Rename otg_transceiver to usb_phy

This is the first step in separating USB transceivers from
USB OTG utilities.

Includes fixes to IMX code from Sascha Hauer.

Signed-off-by: Heikki Krogerus <heikki.krogerus@linux.intel.com>
Cc: Sascha Hauer <s.hauer@pengutronix.de>
Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
6 years agoUSB: otg: remove unused function twl6030_set_phy_clk
Wanlong Gao [Sun, 21 Aug 2011 13:45:53 +0000 (21:45 +0800)]
USB: otg: remove unused function twl6030_set_phy_clk

Remove the unused function twl6030_set_phy_clk of twl6030-usb.c.

Signed-off-by: Wanlong Gao <gaowanlong@cn.fujitsu.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Signed-off-by: Felipe Balbi <balbi@ti.com>
6 years agoarm: omap: use hwmod to create a dwc3 device
Sebastian Andrzej Siewior [Thu, 31 Mar 2011 09:57:28 +0000 (11:57 +0200)]
arm: omap: use hwmod to create a dwc3 device

Create our DWC3 platform_device from hwmod database.

Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
Signed-off-by: Felipe Balbi <balbi@ti.com>
6 years agoarm: omap5: select USB_ARCH_HAS_XHCI
Felipe Balbi [Thu, 19 Jan 2012 09:14:52 +0000 (11:14 +0200)]
arm: omap5: select USB_ARCH_HAS_XHCI

OMAP5 have an xHCI internal to DWC3.

Signed-off-by: Felipe Balbi <balbi@ti.com>
6 years agoMerge branch 'dwc3-v3.1' into for-omap5
Felipe Balbi [Thu, 2 Feb 2012 07:10:38 +0000 (09:10 +0200)]
Merge branch 'dwc3-v3.1' into for-omap5

* dwc3-v3.1: (189 commits)
  usb: host: xhci: fix compile warning
  usb: gadget: zero: fix compile error
  usb: dwc3: core: always set needs_fifo_resize flag
  usb/g_zero: don't access private data in complete callback on error
  usb/host: introduce USB_ARCH_HAS_XHCI
  usb/xhci: add platform driver support
  xHCI: fix bug in xhci_clear_command_ring()
  USB: XHCI: resume root hubs when the controller resumes
  xhci: Set slot and ep0 flags for address command.
  usb, xhci: fix lockdep warning on endpoint timeout
  usb: fix implicit usage of gfp.h in host/xhci-hub.c
  usb: Add module.h to drivers/usb consumers who really use it.
  xHCI/USB: Make xHCI driver have a BOS descriptor.
  usb/xhci: remove CONFIG_PCI in xhci.c's probe function
  usb/xhci: move xhci_gen_setup() away from -pci.
  usb/xhci: refactor xhci_pci_setup()
  usb/xhci: replace pci_*_consistent() with dma_*_coherent()
  usb/xhci: hide MSI code behind PCI bars
  usb/xhci: group MSI interrupt registration into its own function
  xHCI: fix debug message
  ...

6 years agoInput: smsc: update Makefile and Kconfig for smsc keypad
Sourav Poddar [Fri, 23 Sep 2011 13:21:34 +0000 (18:51 +0530)]
Input: smsc: update Makefile and Kconfig for smsc keypad

Update the menuconfig and Kconfig for smsc keypad.

Signed-off-by: Sourav Poddar <sourav.poddar@ti.com>
6 years agoomap5: evm: Add smsc keypad board file data
Sourav Poddar [Fri, 23 Sep 2011 13:21:34 +0000 (18:51 +0530)]
omap5: evm: Add smsc keypad board file data

Add smsc keymap data to omap5 board file. Also populate
i2c5 with smsc slave address and gpio(used as an irq).

Signed-off-by: Sourav Poddar <sourav.poddar@ti.com>
6 years agoInput: keypad: Add smsc ece1099 keypad driver
G, Manjunath Kondaiah [Tue, 13 Sep 2011 06:49:57 +0000 (12:19 +0530)]
Input: keypad: Add smsc ece1099 keypad driver

SMSC ECE1099 is a keyboard scan or GPIO expansion device.The device
supports a keypad scan matrix of 23*8.This driver uses this
device as a keypad driver.

Signed-off-by: G, Manjunath Kondaiah <manjugk@ti.com>
Signed-off-by: Sourav Poddar <sourav.poddar@ti.com>
6 years agoomap5: evm: update omap5 board file for mpu6050
Kishore Kadiyala [Fri, 11 Nov 2011 13:06:08 +0000 (18:36 +0530)]
omap5: evm: update omap5 board file for mpu6050

Update omap5 board file to support mpu6050 driver.
Populate the board file with mpu6050 initial configuration
data. Also provide attach the device to i2c2 bus.

Signed-off-by: Kishore Kadiyala <kishore.kadiyala@ti.com>
Signed-off-by: Sourav Poddar <sourav.poddar@ti.com>
6 years agoinput: misc: mpu6050: Update makefile and menuconfig
Kishore Kadiyala [Fri, 11 Nov 2011 13:06:08 +0000 (18:36 +0530)]
input: misc: mpu6050: Update makefile and menuconfig

Update makefile and menuconfig for mpu6050 driver.

Signed-off-by: Kishore Kadiyala <kishore.kadiyala@ti.com>
Signed-off-by: Sourav Poddar <sourav.poddar@ti.com>
6 years agoinput: misc: mpu6050: Adding mpu6050 driver
Kishore Kadiyala [Fri, 11 Nov 2011 13:06:08 +0000 (18:36 +0530)]
input: misc: mpu6050: Adding mpu6050 driver

mpu6050 chip is present on i2c2 on omap5evm.
mpu6050_i2c.c is the i2c client driver which provies access to the
bus(i2c2) to which our mpu6050 device is attached.
mpu6050.c is the standalone mpu6050 driver which does initial
configuration for mpu6050 device containing both accelerometer and
gyroscope sensors.
mpu6050_accel.c is the accelermoter driver which used gpio
interrupt 150 for events on input device.
mpu6050_gyro.c is the gyroscope driver whose events to the input
device will reported through sys interface.

Signed-off-by: Kishore Kadiyala <kishore.kadiyala@ti.com>
Signed-off-by: Sourav Poddar <sourav.poddar@ti.com>
6 years agoInput: tsl2771: update Makefile and Kconfig for tsl2771 sensors
Sourav Poddar [Fri, 23 Sep 2011 13:21:34 +0000 (18:51 +0530)]
Input: tsl2771: update Makefile and Kconfig for tsl2771 sensors

Update the menuconfig and Kconfig for ambient light and proximity
sensor for omap5.

Signed-off-by: Sourav Poddar <sourav.poddar@ti.com>
6 years agoomap5: evm: Add ambient light and proximity to omap5 board file
Sourav Poddar [Fri, 23 Sep 2011 13:21:34 +0000 (18:51 +0530)]
omap5: evm: Add ambient light and proximity to omap5 board file

Update omap5evm board file to support proximity and
ambient light sensor.These update includes providing
gpio used for interrupt, default reset values for ambient light and
proximity sensor and i2c bus to which the sensor is attached.

Signed-off-by: Sourav Poddar <sourav.poddar@ti.com>
6 years agoInput: tsl2771: ambient light and proximity driver
Dan Murphy [Fri, 23 Sep 2011 13:21:34 +0000 (18:51 +0530)]
Input: tsl2771: ambient light and proximity driver

Add tsl2771 ambient light and proximity driver.

The TSL2771 family of devices provides both ambient light sensing (ALS)
and proximity detection (when coupled with an external IR LED).
The ALS approximates human eye response to light intensity under a variety
of lighting conditions and through a variety of attenuation materials.
The proximity detection feature allows a large dynamic range of operation
for use in short distance detection behind dark glass such as in a cell phone.

Signed-off-by: Dan Murphy <DMurphy@ti.com>
Signed-off-by: Sourav Poddar <sourav.poddar@ti.com>
[Sourav Poddar: - Add gpio_request_one api to request gpio used as
  tsl2771 interrupt line.
- Replace outdated 'strict_strtoul' api by 'kstrtoul']

6 years agoomap5: evm: Add tmp102 data to omap5 board file
Sourav Poddar [Fri, 11 Nov 2011 13:06:08 +0000 (18:36 +0530)]
omap5: evm: Add tmp102 data to omap5 board file

Update omap5 board file to support tmp102 temperature
sensor.Add tmp102 sensor to omap5_evm defconfig.

Signed-off-by: Sourav Poddar <sourav.poddar@ti.com>
6 years agoomap5: evm: Add bmp085 data to omap5 board file
Sourav Poddar [Fri, 11 Nov 2011 13:06:08 +0000 (18:36 +0530)]
omap5: evm: Add bmp085 data to omap5 board file

Update omap5 board file for bmp085 pressure sensor.
Populate the i2c bus to which the device is attached.
Add bmp085 pressure sensor to omap5_evm defconfig.

Signed-off-by: Sourav Poddar <sourav.poddar@ti.com>
6 years agoomap5: evm: Add mxt224 touchscreen data to omap5 board file
Balaji T K [Thu, 5 Jan 2012 20:56:50 +0000 (21:56 +0100)]
omap5: evm: Add mxt224 touchscreen data to omap5 board file

Update omap5 board file data with atmel mxt224 touchscreen
controller data.Configure the gpio used by the controller and
configured it as input/output.

Signed-off-by: Balaji T K <balajitk@ti.com>
Signed-off-by: Sourav Poddar <sourav.poddar@ti.com>
Signed-off-by: Hervé Fache <h-fache@ti.com>
6 years agoinput: touch: mxt224: update driver file with object configuration
Sourav Poddar [Fri, 11 Nov 2011 13:06:08 +0000 (18:36 +0530)]
input: touch: mxt224: update driver file with object configuration

Update atmel mxt 224 touchscreen driver to configure more
parametes such touch proximty, general command, onetouch gesture,
twotouchgesture,gpio power manage and common config

Signed-off-by: Sourav Poddar <sourav.poddar@ti.com>
6 years agoinput: touch: Update the touch driver for updated MT protocol
Dan Murphy [Mon, 9 Jan 2012 11:06:18 +0000 (12:06 +0100)]
input: touch: Update the touch driver for updated MT protocol

Update the touch screen driver for the MT protocol.
Remove reporting all the data.  Only report the finger in
the packet

Signed-off-by: Dan Murphy <dmurphy@ti.com>
6 years agoinput: touch: Update the reporting to use the multi touch
Dan Murphy [Mon, 9 Jan 2012 11:06:13 +0000 (12:06 +0100)]
input: touch: Update the reporting to use the multi touch

Update the reporting of the touch points to use the multi touch
api's.
Also report BTN_TCH to report a down condition

Signed-off-by: Dan Murphy <dmurphy@ti.com>
6 years agoinput: touch: atmel mxt224 touchscreen controller
Dan Murphy [Thu, 5 Jan 2012 20:56:38 +0000 (21:56 +0100)]
input: touch: atmel mxt224 touchscreen controller

Add the touchscreen driver for atmel mxt224 touchscreen
controller.

Signed-off-by: Dan Murphy <dmurphy@ti.com>
6 years agoomap5: evm: Add omap5 onchip keypad board data
G, Manjunath Kondaiah [Fri, 23 Sep 2011 13:21:34 +0000 (18:51 +0530)]
omap5: evm: Add omap5 onchip keypad board data

Enable qwerty keypad interface for omap5.
Update omap5 board board with key mapping specific data.

Signed-off-by: G, Manjunath Kondaiah <manjugk@ti.com>
Signed-off-by: Sourav Poddar <sourav.poddar@ti.com>