mirror of
https://github.com/hardkernel/linux.git
synced 2026-06-09 04:10:18 +09:00
usb: fix RK3036 bvalid irq Num
This commit is contained in:
@@ -141,10 +141,28 @@ static int usb20otg_get_status(int id)
|
||||
return ret;
|
||||
}
|
||||
|
||||
#ifdef CONFIG_RK_USB_UART
|
||||
/**
|
||||
* dwc_otg_uart_enabled - check if a usb-uart debugger is enabled in DT
|
||||
*
|
||||
* Returns true if the status property of node "usb_uart" is set to "okay"
|
||||
* or "ok", if this property is absent it will use the default status "ok"
|
||||
* 0 otherwise
|
||||
*/
|
||||
static bool dwc_otg_uart_enabled(void)
|
||||
{
|
||||
struct device_node *np;
|
||||
|
||||
np = of_find_node_by_name(NULL, "usb_uart");
|
||||
if(np && of_device_is_available(np))
|
||||
return true;
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
static void dwc_otg_uart_mode(void *pdata, int enter_usb_uart_mode)
|
||||
{
|
||||
#ifdef CONFIG_RK_USB_UART
|
||||
if (1 == enter_usb_uart_mode) {
|
||||
if ((1 == enter_usb_uart_mode) && dwc_otg_uart_enabled()) {
|
||||
/* bypass dm, enter uart mode */
|
||||
writel(UOC_HIWORD_UPDATE(0x3, 0x3, 12),
|
||||
RK_GRF_VIRT + RK3036_GRF_UOC1_CON4);
|
||||
@@ -153,9 +171,13 @@ static void dwc_otg_uart_mode(void *pdata, int enter_usb_uart_mode)
|
||||
writel(UOC_HIWORD_UPDATE(0x0, 0x3, 12),
|
||||
RK_GRF_VIRT + RK3036_GRF_UOC1_CON4);
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
#else
|
||||
static void dwc_otg_uart_mode(void *pdata, int enter_usb_uart_mode)
|
||||
{
|
||||
;
|
||||
}
|
||||
#endif
|
||||
static void usb20otg_power_enable(int enable)
|
||||
{
|
||||
if (0 == enable) {
|
||||
|
||||
Reference in New Issue
Block a user