coreboot
coreboot is an Open Source project aimed at replacing the proprietary BIOS found in most computers.
cdp.h
Go to the documentation of this file.
1 /* SPDX-License-Identifier: BSD-3-Clause */
2 
3 #ifndef _QCS405_CDP_H_
4 #define _QCS405_CDP_H_
5 
6 #include <types.h>
7 
8 unsigned int smem_get_board_machtype(void);
9 
10 typedef enum {
23  PHY_INTERFACE_MODE_NONE /* Must be last */
25 
26 typedef struct {
28  unsigned int func;
29  unsigned int dir;
30  unsigned int pull;
31  unsigned int drvstr;
32  unsigned int enable;
34 
35 typedef struct {
36  unsigned int m_value;
37  unsigned int n_value;
38  unsigned int d_value;
40 
41 /* SPI Mode */
42 
43 typedef enum {
48 } spi_mode;
49 
50 /* SPI Chip selects */
51 
52 typedef enum {
57 } spi_cs;
58 
59 /* Flash Types */
60 
61 typedef enum {
66 } flash_desc;
67 
68 #define NO_OF_DBG_UART_GPIOS 2
69 
70 #define SPI_NOR_FLASH_VENDOR_MICRON 0x1
71 #define SPI_NOR_FLASH_VENDOR_SPANSION 0x2
72 
73 /* SPI parameters */
74 
75 typedef struct {
76  spi_mode mode;
77  spi_cs chip_select;
78  int vendor;
80 
81 typedef struct {
82  unsigned int count;
83  uint8_t addr[7];
85 
86 typedef struct {
87  unsigned int base;
88  int unit;
89  unsigned int is_macsec;
90  unsigned int mac_pwr0;
91  unsigned int mac_pwr1;
92  unsigned int mac_conn_to_phy;
93  phy_interface_t phy;
94  ipq_gmac_phy_addr_t phy_addr;
96 
97 #define IPQ_GMAC_NMACS 4
98 
105 };
106 
107 /* Board specific parameters */
108 typedef struct {
109 } __packed board_ipq40xx_params_t;
110 
111 extern board_ipq40xx_params_t *gboard_param;
112 
113 unsigned int get_board_index(unsigned int machid);
114 void ipq_configure_gpio(const gpio_func_data_t *gpio, unsigned int count);
115 
116 #endif
int vendor
Definition: cpu.c:91
#define pull
Definition: asmlib.h:26
static u32 addr
Definition: cirrus.c:14
flash_desc
Definition: cdp.h:69
@ ONLY_NAND
Definition: cdp.h:70
@ ONLY_NOR
Definition: cdp.h:71
@ NOR_MMC
Definition: cdp.h:73
@ NAND_NOR
Definition: cdp.h:72
void ipq_configure_gpio(const gpio_func_data_t *gpio, unsigned int count)
Definition: cdp.c:8
unsigned int get_board_index(unsigned int machid)
phy_interface_t
Definition: cdp.h:10
@ PHY_INTERFACE_MODE_RMII
Definition: cdp.h:16
@ PHY_INTERFACE_MODE_MII
Definition: cdp.h:11
@ PHY_INTERFACE_MODE_RGMII_ID
Definition: cdp.h:18
@ PHY_INTERFACE_MODE_TBI
Definition: cdp.h:15
@ PHY_INTERFACE_MODE_RGMII_RXID
Definition: cdp.h:19
@ PHY_INTERFACE_MODE_RTBI
Definition: cdp.h:21
@ PHY_INTERFACE_MODE_GMII
Definition: cdp.h:12
@ PHY_INTERFACE_MODE_RGMII
Definition: cdp.h:17
@ PHY_INTERFACE_MODE_SGMII
Definition: cdp.h:13
@ PHY_INTERFACE_MODE_XGMII
Definition: cdp.h:22
@ PHY_INTERFACE_MODE_QSGMII
Definition: cdp.h:14
@ PHY_INTERFACE_MODE_RGMII_TXID
Definition: cdp.h:20
@ PHY_INTERFACE_MODE_NONE
Definition: cdp.h:23
spi_mode
Definition: cdp.h:43
@ NOR_SPI_MODE_0
Definition: cdp.h:44
@ NOR_SPI_MODE_3
Definition: cdp.h:47
@ NOR_SPI_MODE_2
Definition: cdp.h:46
@ NOR_SPI_MODE_1
Definition: cdp.h:45
board_ipq40xx_params_t * gboard_param
gale_board_id
Definition: cdp.h:108
@ BOARD_ID_GALE_EVT3
Definition: cdp.h:113
@ BOARD_ID_GALE_EVT2_0
Definition: cdp.h:111
@ BOARD_ID_GALE_PROTO
Definition: cdp.h:109
@ BOARD_ID_GALE_EVT2_1
Definition: cdp.h:112
@ BOARD_ID_GALE_EVT
Definition: cdp.h:110
unsigned int smem_get_board_machtype(void)
spi_cs
Definition: cdp.h:60
@ SPI_CS_2
Definition: cdp.h:63
@ SPI_CS_1
Definition: cdp.h:62
@ SPI_CS_3
Definition: cdp.h:64
@ SPI_CS_0
Definition: cdp.h:61
uintptr_t base
Definition: uart.c:17
unsigned char uint8_t
Definition: stdint.h:8
Definition: x86.c:23
gpio_t gpio
Definition: cdp.h:27
Definition: pinmux.c:36
#define count