ENGR00238974-1: mx28-usb: Fix kinds of usb wakeup problems

This is for MSL part

- Add correct suspend/resume procedures
- Add solutions for IC limitations during usb suspend/resume
- More USB wakeup functions are tested
- Only build-in driver usb function are tested

Signed-off-by: Peter Chen <peter.chen@freescale.com>
ENGR00238974-2: mx28-usb: Fix kinds of usb wakeup problems

This is for driver part

- Add correct suspend/resume procedures
- Add solutions for IC limitations during usb suspend/resume
- More USB wakeup functions are tested (only echo standby is tested)
- Only build-in driver usb function are tested

Signed-off-by: Peter Chen <peter.chen@freescale.com>
ENGR00238974-3: mx28-usb: Fix the bug of incorrect data type of wakeup_event

It should be enum usb_wakeup_event

Signed-off-by: Peter Chen <peter.chen@freescale.com>
ENGR00239205: mx28-usb: disable usb wakeup before module unload

There is unknown wakeup during the module unload for otg
host module, so disable wakeup interrupt before module unload.

Signed-off-by: Peter Chen <peter.chen@freescale.com>
ENGR00240690-1: mx28-usb: fix below combile error

For MSL part

USB module compile failed if set menuconfig like this:
Device Drivers --->
[*] USB support --->
<M> EHCI HCD (USB 2.0) support
< > USB Gadget Support --->
< > USB OTG pin detect support
$ make uImage
CHK     include/linux/version.h
CHK     include/generated/utsrelease.h
make[1]: `include/generated/mach-types.h' is up to date.
CALL    scripts/checksyscalls.sh
CHK     include/generated/compile.h
CC      arch/arm/mach-mx28/usb_dr.o
arch/arm/mach-mx28/usb_dr.c: In function 'enter_phy_lowpower_suspend':
arch/arm/mach-mx28/usb_dr.c:133:3: error: implicit declaration of
function 'fsl_safe_writel' [-Werror=implicit-function-declaration]
arch/arm/mach-mx28/usb_dr.c: At top level:
arch/arm/mach-mx28/usb_dr.c:529:31: warning: 'dr_udc_device'
defined but not used [-Wunused-variable]
cc1: some warnings being treated as errors
make[1]: *** [arch/arm/mach-mx28/usb_dr.o] Error 1
make: *** [arch/arm/mach-mx28] Error 2

Signed-off-by: Peter Chen <peter.chen@freescale.com>
ENGR00240690-2: mx28-usb: fix below combile error

This config is needed for SoC level, so move it from
driver to platform code.

USB module compile failed if set menuconfig like this:
Device Drivers --->
[*] USB support --->
<M> EHCI HCD (USB 2.0) support
< > USB Gadget Support --->
< > USB OTG pin detect support
$ make uImage
CHK     include/linux/version.h
CHK     include/generated/utsrelease.h
make[1]: `include/generated/mach-types.h' is up to date.
CALL    scripts/checksyscalls.sh
CHK     include/generated/compile.h
CC      arch/arm/mach-mx28/usb_dr.o
arch/arm/mach-mx28/usb_dr.c: In function 'enter_phy_lowpower_suspend':
arch/arm/mach-mx28/usb_dr.c:133:3: error: implicit declaration of
function 'fsl_safe_writel' [-Werror=implicit-function-declaration]
arch/arm/mach-mx28/usb_dr.c: At top level:
arch/arm/mach-mx28/usb_dr.c:529:31: warning: 'dr_udc_device'
defined but not used [-Wunused-variable]
cc1: some warnings being treated as errors
make[1]: *** [arch/arm/mach-mx28/usb_dr.o] Error 1
make: *** [arch/arm/mach-mx28] Error 2

Signed-off-by: Peter Chen <peter.chen@freescale.com>