dwc3-sti-glue.h 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. /* SPDX-License-Identifier: GPL-2.0+ */
  2. /*
  3. * Copyright (C) 2017, STMicroelectronics - All Rights Reserved
  4. * Author(s): Patrice Chotard, <patrice.chotard@foss.st.com> for STMicroelectronics.
  5. */
  6. #ifndef __DWC3_STI_UBOOT_H_
  7. #define __DWC3_STI_UBOOT_H_
  8. /* glue registers */
  9. #include <linux/bitops.h>
  10. #define CLKRST_CTRL 0x00
  11. #define AUX_CLK_EN BIT(0)
  12. #define SW_PIPEW_RESET_N BIT(4)
  13. #define EXT_CFG_RESET_N BIT(8)
  14. #define XHCI_REVISION BIT(12)
  15. #define USB2_VBUS_MNGMNT_SEL1 0x2C
  16. #define USB2_VBUS_UTMIOTG 0x1
  17. #define SEL_OVERRIDE_VBUSVALID(n) ((n) << 0)
  18. #define SEL_OVERRIDE_POWERPRESENT(n) ((n) << 4)
  19. #define SEL_OVERRIDE_BVALID(n) ((n) << 8)
  20. /* Static DRD configuration */
  21. #define USB3_CONTROL_MASK 0xf77
  22. #define USB3_DEVICE_NOT_HOST BIT(0)
  23. #define USB3_FORCE_VBUSVALID BIT(1)
  24. #define USB3_DELAY_VBUSVALID BIT(2)
  25. #define USB3_SEL_FORCE_OPMODE BIT(4)
  26. #define USB3_FORCE_OPMODE(n) ((n) << 5)
  27. #define USB3_SEL_FORCE_DPPULLDOWN2 BIT(8)
  28. #define USB3_FORCE_DPPULLDOWN2 BIT(9)
  29. #define USB3_SEL_FORCE_DMPULLDOWN2 BIT(10)
  30. #define USB3_FORCE_DMPULLDOWN2 BIT(11)
  31. int sti_dwc3_init(enum usb_dr_mode mode);
  32. #endif /* __DWC3_STI_UBOOT_H_ */