USB: otg: add otg id notifier utiltiies

Add a otg_id notifier to allow multiple drivers to cooperate to
determine the type of cable connected to a USB connector without
requiring direct calls between the drivers.

Change-Id: I3be06bc93a5858a771ed23cef6d5c21b788ccecd
net/ppp: fix build break

Change-Id: I7b4a9ff237fe1e913e28ffcb16a7fffb61e13c21
ARM: omap4: tuna: add debug uart for DEBUG_LL

Change-Id: If1bfb749ab160f5f71a7c1fa6c24844dee4779ea
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.

Change-Id: I6a4168a506c2253026a81d894fd69610a66880fa
[hashcode: partial commit fixes for build]
arm: omap: usb: allow for external transceiver control

In PHY mode, ehci/ohci can have an external transceiver.
Eg: USB3333 - which needs 19.2Mhz input clock supplied by omap.

Pass clk data to driver so that as part of usb bus suspend
this clock can be controlled for OMAP to enter low power state.

Change-Id: I6ac0ee1791b5f040f1913fe888d24cf411398965
power: replace android specific alarm for charger_update

Change-Id: If787c4728587a4cb882f37860e672c4e9b9583a2
inv_mpu: enable MODULE macros for mlsl-kernel

Change-Id: I035c42c6cc13f22d1227881ff447f813801e25d4
input misc: enable MODULE macros for gp2a prox/light sensor

Change-Id: I98cf37622c8e1b0e7c7b8689f6493c72f37370ff
re-add BUILD_BUG_ON_ZERO macros from k3.0

Change-Id: I2497b51a1add6b219ebbb7050d90224fe51ad513
ARM: omap4: tuna: fix omap_hsi_init reference

Change-Id: I6009650d38cba5044486addb0ad2e53ad2ae3bc5