| /* SPDX-License-Identifier: GPL-2.0-only */ |
| |
| /* |
| * This file is created based on MT8186 Functional Specification |
| * Chapter number: 5.5 |
| */ |
| |
| #include <device/mmio.h> |
| #include <gpio.h> |
| #include <soc/pll_common.h> |
| #include <soc/usb.h> |
| |
| #define PERI_USB_WAKEUP_DEC_CON1 0x404 |
| #define PERI_U3_WAKE_CTRL0 0x420 |
| |
| void mtk_usb_prepare(void) |
| { |
| mt_pll_set_usb_clock(); |
| |
| gpio_output(GPIO(USB_DRVVBUS_P1), 1); |
| |
| /* disable IP0 debounce */ |
| write32p(PERICFG_BASE + PERI_U3_WAKE_CTRL0, 0); |
| /* disable IP1 debounce */ |
| write32p(PERICFG_BASE + PERI_USB_WAKEUP_DEC_CON1, 0); |
| } |