xref: /freebsd-src/sys/contrib/device-tree/include/dt-bindings/net/ti-dp83867.h (revision 7d0873ebb83b19ba1e8a89e679470d885efe12e3)
1*7d0873ebSEmmanuel Vadot /* SPDX-License-Identifier: GPL-2.0-only OR MIT */
2c66ec88fSEmmanuel Vadot /*
3c66ec88fSEmmanuel Vadot  * Device Tree constants for the Texas Instruments DP83867 PHY
4c66ec88fSEmmanuel Vadot  *
5c66ec88fSEmmanuel Vadot  * Author: Dan Murphy <dmurphy@ti.com>
6c66ec88fSEmmanuel Vadot  *
7*7d0873ebSEmmanuel Vadot  * Copyright (C) 2015-2024 Texas Instruments Incorporated - https://www.ti.com/
8c66ec88fSEmmanuel Vadot  */
9c66ec88fSEmmanuel Vadot 
10c66ec88fSEmmanuel Vadot #ifndef _DT_BINDINGS_TI_DP83867_H
11c66ec88fSEmmanuel Vadot #define _DT_BINDINGS_TI_DP83867_H
12c66ec88fSEmmanuel Vadot 
13c66ec88fSEmmanuel Vadot /* PHY CTRL bits */
14c66ec88fSEmmanuel Vadot #define DP83867_PHYCR_FIFO_DEPTH_3_B_NIB	0x00
15c66ec88fSEmmanuel Vadot #define DP83867_PHYCR_FIFO_DEPTH_4_B_NIB	0x01
16c66ec88fSEmmanuel Vadot #define DP83867_PHYCR_FIFO_DEPTH_6_B_NIB	0x02
17c66ec88fSEmmanuel Vadot #define DP83867_PHYCR_FIFO_DEPTH_8_B_NIB	0x03
18c66ec88fSEmmanuel Vadot 
19c66ec88fSEmmanuel Vadot /* RGMIIDCTL internal delay for rx and tx */
20c66ec88fSEmmanuel Vadot #define	DP83867_RGMIIDCTL_250_PS	0x0
21c66ec88fSEmmanuel Vadot #define	DP83867_RGMIIDCTL_500_PS	0x1
22c66ec88fSEmmanuel Vadot #define	DP83867_RGMIIDCTL_750_PS	0x2
23c66ec88fSEmmanuel Vadot #define	DP83867_RGMIIDCTL_1_NS		0x3
24c66ec88fSEmmanuel Vadot #define	DP83867_RGMIIDCTL_1_25_NS	0x4
25c66ec88fSEmmanuel Vadot #define	DP83867_RGMIIDCTL_1_50_NS	0x5
26c66ec88fSEmmanuel Vadot #define	DP83867_RGMIIDCTL_1_75_NS	0x6
27c66ec88fSEmmanuel Vadot #define	DP83867_RGMIIDCTL_2_00_NS	0x7
28c66ec88fSEmmanuel Vadot #define	DP83867_RGMIIDCTL_2_25_NS	0x8
29c66ec88fSEmmanuel Vadot #define	DP83867_RGMIIDCTL_2_50_NS	0x9
30c66ec88fSEmmanuel Vadot #define	DP83867_RGMIIDCTL_2_75_NS	0xa
31c66ec88fSEmmanuel Vadot #define	DP83867_RGMIIDCTL_3_00_NS	0xb
32c66ec88fSEmmanuel Vadot #define	DP83867_RGMIIDCTL_3_25_NS	0xc
33c66ec88fSEmmanuel Vadot #define	DP83867_RGMIIDCTL_3_50_NS	0xd
34c66ec88fSEmmanuel Vadot #define	DP83867_RGMIIDCTL_3_75_NS	0xe
35c66ec88fSEmmanuel Vadot #define	DP83867_RGMIIDCTL_4_00_NS	0xf
36c66ec88fSEmmanuel Vadot 
37c66ec88fSEmmanuel Vadot /* IO_MUX_CFG - Clock output selection */
38c66ec88fSEmmanuel Vadot #define DP83867_CLK_O_SEL_CHN_A_RCLK		0x0
39c66ec88fSEmmanuel Vadot #define DP83867_CLK_O_SEL_CHN_B_RCLK		0x1
40c66ec88fSEmmanuel Vadot #define DP83867_CLK_O_SEL_CHN_C_RCLK		0x2
41c66ec88fSEmmanuel Vadot #define DP83867_CLK_O_SEL_CHN_D_RCLK		0x3
42c66ec88fSEmmanuel Vadot #define DP83867_CLK_O_SEL_CHN_A_RCLK_DIV5	0x4
43c66ec88fSEmmanuel Vadot #define DP83867_CLK_O_SEL_CHN_B_RCLK_DIV5	0x5
44c66ec88fSEmmanuel Vadot #define DP83867_CLK_O_SEL_CHN_C_RCLK_DIV5	0x6
45c66ec88fSEmmanuel Vadot #define DP83867_CLK_O_SEL_CHN_D_RCLK_DIV5	0x7
46c66ec88fSEmmanuel Vadot #define DP83867_CLK_O_SEL_CHN_A_TCLK		0x8
47c66ec88fSEmmanuel Vadot #define DP83867_CLK_O_SEL_CHN_B_TCLK		0x9
48c66ec88fSEmmanuel Vadot #define DP83867_CLK_O_SEL_CHN_C_TCLK		0xA
49c66ec88fSEmmanuel Vadot #define DP83867_CLK_O_SEL_CHN_D_TCLK		0xB
50c66ec88fSEmmanuel Vadot #define DP83867_CLK_O_SEL_REF_CLK		0xC
51c66ec88fSEmmanuel Vadot /* Special flag to indicate clock should be off */
52c66ec88fSEmmanuel Vadot #define DP83867_CLK_O_SEL_OFF			0xFFFFFFFF
53c66ec88fSEmmanuel Vadot #endif
54