1 /* SPDX-License-Identifier: GPL-2.0-only */
3 #ifndef __GENOA_POC_CHIP_H__
4 #define __GENOA_POC_CHIP_H__
6 #include <amdblocks/chip.h>
7 #include <amdblocks/i2c.h>
8 #include <drivers/i2c/designware/dw_i2c.h>
12 struct usb31_phy_settings
{
13 uint8_t rx_ana_iq_phase_adjust
;
14 uint8_t rx_eq_delta_iq_ovrd_en
;
15 uint8_t rx_eq_delta_iq_ovrd_val
;
16 uint8_t rx_iq_phase_adjust
;
17 uint8_t tx_vboost_lvl_en
;
18 uint8_t tx_vboost_lvl
;
19 uint8_t rx_vref_ctrl_en
;
21 uint8_t tx_vboost_lvl_en_x
;
22 uint8_t tx_vboost_lvl_x
;
23 uint8_t rx_vref_ctrl_en_x
;
24 uint8_t rx_vref_ctrl_x
;
27 struct soc_usb_config
{
28 uint8_t xhci0_enable
: 1;
29 uint8_t xhci1_enable
: 1;
46 bool polarity_cfg_low
;
51 uint8_t port2
: 2; /* Broken in OpenSIL */
52 uint8_t port3
: 2; /* Broken in OpenSIL */
56 bool usb31_phy_enable
;
57 struct usb31_phy_settings usb31_phy
[8];
58 bool s1_usb31_phy_enable
;
59 struct usb31_phy_settings s1_usb31_phy
[8];
62 struct soc_amd_genoa_poc_config
{
63 struct soc_amd_common_config common_config
;
66 struct dw_i2c_bus_config i2c
[I2C_CTRLR_COUNT
];
68 struct soc_usb_config usb
;
71 #endif /* __GENOA_POC_CHIP_H__ */