1 /* SPDX-License-Identifier: BSD-3-Clause
2 * Copyright(C) 2021 Marvell.
5 #ifndef _ROC_BPHY_CGX_PRIV_H_
6 #define _ROC_BPHY_CGX_PRIV_H_
8 /* REQUEST ID types. Input to firmware */
10 ETH_CMD_GET_LINK_STS = 4,
11 ETH_CMD_INTF_SHUTDOWN = 12,
14 /* event types - cause of interrupt */
26 /* default ownership with kernel/uefi/u-boot */
27 ETH_OWN_NON_SECURE_SW,
28 /* set by kernel/uefi/u-boot after posting a new request to ATF */
32 /* scratchx(0) CSR used for ATF->non-secure SW communication.
33 * This acts as the status register
34 * Provides details on command ack/status, link status, error details
37 /* struct eth_evt_sts_s */
38 #define SCR0_ETH_EVT_STS_S_ACK BIT_ULL(0)
39 #define SCR0_ETH_EVT_STS_S_EVT_TYPE BIT_ULL(1)
40 #define SCR0_ETH_EVT_STS_S_STAT BIT_ULL(2)
41 #define SCR0_ETH_EVT_STS_S_ID GENMASK_ULL(8, 3)
43 /* struct eth_lnk_sts_s */
44 #define SCR0_ETH_LNK_STS_S_ERR_TYPE GENMASK_ULL(24, 15)
45 #define SCR0_ETH_LNK_STS_S_LINK_UP BIT_ULL(9)
46 #define SCR0_ETH_LNK_STS_S_FULL_DUPLEX BIT_ULL(10)
47 #define SCR0_ETH_LNK_STS_S_SPEED GENMASK_ULL(14, 11)
48 #define SCR0_ETH_LNK_STS_S_ERR_TYPE GENMASK_ULL(24, 15)
49 #define SCR0_ETH_LNK_STS_S_AN BIT_ULL(25)
50 #define SCR0_ETH_LNK_STS_S_FEC GENMASK_ULL(27, 26)
51 #define SCR0_ETH_LNK_STS_S_LMAC_TYPE GENMASK_ULL(35, 28)
52 #define SCR0_ETH_LNK_STS_S_MODE GENMASK_ULL(43, 36)
54 /* scratchx(1) CSR used for non-secure SW->ATF communication
55 * This CSR acts as a command register
59 #define SCR1_ETH_CMD_ID GENMASK_ULL(7, 2)
61 #define SCR1_OWN_STATUS GENMASK_ULL(1, 0)
63 #endif /* _ROC_BPHY_CGX_PRIV_H_ */