mirror of
https://github.com/hardkernel/linux.git
synced 2026-06-08 11:50:43 +09:00
rk312x: usb-uart: disable usb-uart when cpu suspend
This commit is contained in:
@@ -1620,7 +1620,11 @@ void rk_usb_power_up(void)
|
||||
struct dwc_otg_platform_data *pldata_otg;
|
||||
struct dwc_otg_platform_data *pldata_host;
|
||||
struct rkehci_platform_data *pldata_ehci;
|
||||
|
||||
if (cpu_is_rk312x()) {
|
||||
pldata_otg = &usb20otg_pdata_rk3126;
|
||||
if (usb_to_uart_status)
|
||||
pldata_otg->dwc_otg_uart_mode(pldata_otg, PHY_UART_MODE);
|
||||
}
|
||||
if (cpu_is_rk3288()) {
|
||||
#ifdef CONFIG_RK_USB_UART
|
||||
/* enable USB bypass UART function */
|
||||
@@ -1666,6 +1670,11 @@ void rk_usb_power_down(void)
|
||||
struct dwc_otg_platform_data *pldata_host;
|
||||
struct rkehci_platform_data *pldata_ehci;
|
||||
|
||||
if (cpu_is_rk312x()) {
|
||||
pldata_otg = &usb20otg_pdata_rk3126;
|
||||
usb_to_uart_status = pldata_otg->get_status(USB_STATUS_UARTMODE);
|
||||
pldata_otg->dwc_otg_uart_mode(pldata_otg, PHY_USB_MODE);
|
||||
}
|
||||
if (cpu_is_rk3288()) {
|
||||
#ifdef CONFIG_RK_USB_UART
|
||||
/* disable USB bypass UART function */
|
||||
|
||||
@@ -127,6 +127,9 @@ static int usb20otg_get_status(int id)
|
||||
/* id in grf */
|
||||
ret = soc_status0 & (0x1 << 8);
|
||||
break;
|
||||
case USB_STATUS_UARTMODE:
|
||||
ret = readl(RK_GRF_VIRT + RK312X_GRF_UOC1_CON4) & (1 << 12);
|
||||
break;
|
||||
case USB_CHIP_ID:
|
||||
ret = control_usb->chip_id;
|
||||
break;
|
||||
|
||||
Reference in New Issue
Block a user