sys_proto.h 910 B

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. /* SPDX-License-Identifier: GPL-2.0+ */
  2. /*
  3. * (C) Copyright 2009
  4. * Stefano Babic, DENX Software Engineering, sbabic@denx.de.
  5. */
  6. #ifndef __SYS_PROTO_IMX6_
  7. #define __SYS_PROTO_IMX6_
  8. #include <asm/mach-imx/sys_proto.h>
  9. #include <asm/arch/iomux.h>
  10. #define USBPHY_PWD 0x00000000
  11. #define USBPHY_PWD_RXPWDRX (1 << 20) /* receiver block power down */
  12. #define is_usbotg_phy_active(void) (!(readl(USB_PHY0_BASE_ADDR + USBPHY_PWD) & \
  13. USBPHY_PWD_RXPWDRX))
  14. int imx6_pcie_toggle_power(void);
  15. int imx6_pcie_toggle_reset(void);
  16. enum ldo_reg {
  17. LDO_ARM,
  18. LDO_SOC,
  19. LDO_PU,
  20. };
  21. int set_ldo_voltage(enum ldo_reg ldo, u32 mv);
  22. /**
  23. * iomuxc_set_rgmii_io_voltage - set voltage level of RGMII/USB pins
  24. *
  25. * @param io_vol - the voltage IO level of pins
  26. */
  27. static inline void iomuxc_set_rgmii_io_voltage(int io_vol)
  28. {
  29. __raw_writel(io_vol, IOMUXC_SW_PAD_CTL_GRP_DDR_TYPE_RGMII);
  30. }
  31. #endif /* __SYS_PROTO_IMX6_ */