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