7 #include <soc/pci_devs.h>
8 #include <soc/platform_descriptors.h>
9 #include <soc/soc_util.h>
22 case SD_EMMC_SD_LOW_SPEED:
25 case SD_EMMC_SD_HIGH_SPEED:
28 case SD_EMMC_SD_UHS_I_SDR_50:
31 case SD_EMMC_SD_UHS_I_DDR_50:
34 case SD_EMMC_SD_UHS_I_SDR_104:
37 case SD_EMMC_EMMC_SDR_26:
40 case SD_EMMC_EMMC_SDR_52:
43 case SD_EMMC_EMMC_DDR_104:
46 case SD_EMMC_EMMC_HS200:
49 case SD_EMMC_EMMC_HS400:
52 case SD_EMMC_EMMC_HS300:
59 scfg->emmc0_mode =
val;
60 scfg->emmc0_sdr104_hs400_driver_strength =
68 const fsp_dxio_descriptor *descs,
size_t num)
72 ASSERT_MSG(num <= FSPS_UPD_DXIO_DESCRIPTOR_COUNT,
73 "Too many DXIO descriptors provided.");
75 for (i = 0; i < num; i++) {
76 memcpy(scfg->dxio_descriptor[i], &descs[i],
sizeof(scfg->dxio_descriptor[0]));
81 const fsp_ddi_descriptor *descs,
size_t num)
85 ASSERT_MSG(num <= FSPS_UPD_DDI_DESCRIPTOR_COUNT,
86 "Too many DDI descriptors provided.");
88 for (i = 0; i < num; i++) {
89 memcpy(&scfg->ddi_descriptor[i], &descs[i],
sizeof(scfg->ddi_descriptor[0]));
95 const fsp_dxio_descriptor *fsp_dxio =
NULL;
96 const fsp_ddi_descriptor *fsp_ddi =
NULL;
118 for (i = 0; i < FSPS_UPD_USB2_PORT_COUNT; i++) {
119 memcpy(scfg->fch_usb_2_port_phy_tune[i],
121 sizeof(scfg->fch_usb_2_port_phy_tune[0]));
127 scfg->xhci_oc_pin_select &= ~(0xf << (i * 4));
128 scfg->xhci_oc_pin_select |=
134 for (i = 0; i < FSPS_UPD_RV2_USB3_PORT_COUNT; i++) {
135 memcpy(scfg->usb_3_port_phy_tune[i],
137 sizeof(scfg->usb_3_port_phy_tune[0]));
152 scfg->gnb_ioapic_base = GNB_IO_APIC_ADDR;
void mainboard_get_dxio_ddi_descriptors(const fsp_dxio_descriptor **dxio_descs, size_t *dxio_num, const fsp_ddi_descriptor **ddi_descs, size_t *ddi_num)
enum silicon_type get_silicon_type(void)
void * memcpy(void *dest, const void *src, size_t n)
#define ASSERT_MSG(x, msg)
void platform_fsp_silicon_init_params_cb(FSPS_UPD *supd)
#define PCI_VGA_RAM_IMAGE_START
static void fsp_assign_ioapic_upds(FSP_S_CONFIG *scfg)
static void fsp_fill_pcie_ddi_descriptors(FSP_S_CONFIG *scfg)
static void fsp_usb_oem_customization(FSP_S_CONFIG *scfg, const struct soc_amd_picasso_config *cfg)
static void fsps_update_emmc_config(FSP_S_CONFIG *scfg, const struct soc_amd_picasso_config *cfg)
static void fsp_assign_vbios_upds(FSP_S_CONFIG *scfg)
static void fill_dxio_descriptors(FSP_S_CONFIG *scfg, const fsp_dxio_descriptor *descs, size_t num)
static void fsp_edp_tuning_upds(FSP_S_CONFIG *scfg, const struct soc_amd_picasso_config *cfg)
static void fill_ddi_descriptors(FSP_S_CONFIG *scfg, const fsp_ddi_descriptor *descs, size_t num)
uint8_t usb3_rx_vref_ctrl
uint8_t usb_3_rx_vref_ctrl_en_x
uint8_t usb3_phy_override
struct usb3_phy_tune usb3_phy_tune_params[RV2_USB3_PORT_COUNT]
union usb3_force_gen1 usb3_port_force_gen1
struct usb2_phy_tune usb_2_port_tune_params[USB_PORT_COUNT]
struct soc_amd_picasso_config::@417 emmc_config
uint8_t pwrdown_bloff_to_varybloff
uint16_t edp_phy_override
struct soc_amd_picasso_config::@421 edp_tuningset
uint8_t pwron_digon_to_de
uint8_t usb_3_rx_vref_ctrl_x
uint8_t has_usb2_phy_tune_params
uint8_t edp_pwr_adjust_enable
uint8_t pwron_varybl_to_blon
enum sd_emmc_driver_strength sdr104_hs400_driver_strength
enum sd_emmc_driver_strength ddr50_driver_strength
uint8_t usb_3_tx_vboost_lvl
uint8_t min_allowed_bl_level
uint8_t usb_3_tx_vboost_lvl_en_x
uint8_t pwron_de_to_varybl
enum soc_amd_picasso_config::@418 usb_port_overcurrent_pin[USB_PORT_COUNT]
uint8_t pwrdown_de_to_digoff
uint8_t usb3_rx_vref_ctrl_en
uint8_t usb_3_tx_vboost_lvl_en
enum soc_amd_picasso_config::@417::@422 timing
uint8_t usb_3_tx_vboost_lvl_x
uint8_t dp_vs_pemph_level
uint8_t pwrdown_varybloff_to_de
enum sd_emmc_driver_strength sdr50_driver_strength
uint8_t usb3_port_force_gen1_en