soc/intel/alderlake: Enable eMMC based on dev enabled
1. Add eMMC device function in pci_devs.h. 2. Enable eMMC device and configuration based on dev enabled. 3. Add SOC acpi name for eMMC. Change-Id: I44f17420f7a2a1ca0fbb6cfb1886b1617c5a5064 Signed-off-by: Krishna Prasad Bhat <krishna.p.bhat.d@intel.com> Reviewed-on: https://review.coreboot.org/c/coreboot/+/61129 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Rizwan Qureshi <rizwan.qureshi@intel.com> Reviewed-by: Tim Wawrzynczak <twawrzynczak@chromium.org>
This commit is contained in:
parent
d2ca5be61a
commit
a6d642fa8d
|
@ -110,6 +110,9 @@ const char *soc_acpi_name(const struct device *dev)
|
||||||
case PCH_DEVFN_HDA: return "HDAS";
|
case PCH_DEVFN_HDA: return "HDAS";
|
||||||
case PCH_DEVFN_SMBUS: return "SBUS";
|
case PCH_DEVFN_SMBUS: return "SBUS";
|
||||||
case PCH_DEVFN_GBE: return "GLAN";
|
case PCH_DEVFN_GBE: return "GLAN";
|
||||||
|
#if CONFIG(SOC_INTEL_ALDERLAKE_PCH_N)
|
||||||
|
case PCH_DEVFN_EMMC: return "EMMC";
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
return NULL;
|
return NULL;
|
||||||
|
|
|
@ -419,6 +419,11 @@ struct soc_intel_alderlake_config {
|
||||||
* accordingly */
|
* accordingly */
|
||||||
uint8_t HybridStorageMode;
|
uint8_t HybridStorageMode;
|
||||||
|
|
||||||
|
#if CONFIG(SOC_INTEL_ALDERLAKE_PCH_N)
|
||||||
|
/* eMMC HS400 mode */
|
||||||
|
uint8_t emmc_enable_hs400_mode;
|
||||||
|
#endif
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Override CPU flex ratio value:
|
* Override CPU flex ratio value:
|
||||||
* CPU ratio value controls the maximum processor non-turbo ratio.
|
* CPU ratio value controls the maximum processor non-turbo ratio.
|
||||||
|
|
|
@ -183,6 +183,14 @@ static const struct slot_irq_constraints irq_constraints[] = {
|
||||||
DIRECT_IRQ(PCH_DEVFN_UART2),
|
DIRECT_IRQ(PCH_DEVFN_UART2),
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
#if CONFIG(SOC_INTEL_ALDERLAKE_PCH_N)
|
||||||
|
{
|
||||||
|
.slot = PCH_DEV_SLOT_EMMC,
|
||||||
|
.fns = {
|
||||||
|
ANY_PIRQ(PCH_DEVFN_EMMC),
|
||||||
|
},
|
||||||
|
},
|
||||||
|
#endif
|
||||||
{
|
{
|
||||||
.slot = PCH_DEV_SLOT_PCIE,
|
.slot = PCH_DEV_SLOT_PCIE,
|
||||||
.fns = {
|
.fns = {
|
||||||
|
@ -596,6 +604,12 @@ static void fill_fsps_pm_timer_params(FSP_S_CONFIG *s_cfg,
|
||||||
static void fill_fsps_storage_params(FSP_S_CONFIG *s_cfg,
|
static void fill_fsps_storage_params(FSP_S_CONFIG *s_cfg,
|
||||||
const struct soc_intel_alderlake_config *config)
|
const struct soc_intel_alderlake_config *config)
|
||||||
{
|
{
|
||||||
|
#if CONFIG(SOC_INTEL_ALDERLAKE_PCH_N)
|
||||||
|
/* eMMC Configuration */
|
||||||
|
s_cfg->ScsEmmcEnabled = is_devfn_enabled(PCH_DEVFN_EMMC);
|
||||||
|
if (s_cfg->ScsEmmcEnabled)
|
||||||
|
s_cfg->ScsEmmcHs400Enabled = config->emmc_enable_hs400_mode;
|
||||||
|
#endif
|
||||||
/* Enable Hybrid storage auto detection */
|
/* Enable Hybrid storage auto detection */
|
||||||
s_cfg->HybridStorageMode = config->HybridStorageMode;
|
s_cfg->HybridStorageMode = config->HybridStorageMode;
|
||||||
}
|
}
|
||||||
|
|
|
@ -166,6 +166,12 @@
|
||||||
#define PCH_DEV_I2C5 _PCH_DEV(SIO4, 1)
|
#define PCH_DEV_I2C5 _PCH_DEV(SIO4, 1)
|
||||||
#define PCH_DEV_UART2 _PCH_DEV(SIO4, 2)
|
#define PCH_DEV_UART2 _PCH_DEV(SIO4, 2)
|
||||||
|
|
||||||
|
#if CONFIG(SOC_INTEL_ALDERLAKE_PCH_N)
|
||||||
|
#define PCH_DEV_SLOT_EMMC 0x1a
|
||||||
|
#define PCH_DEVFN_EMMC _PCH_DEVFN(EMMC, 0)
|
||||||
|
#define PCH_DEV_EMMC _PCH_DEV(EMMC, 0)
|
||||||
|
#endif
|
||||||
|
|
||||||
#define PCH_DEV_SLOT_PCIE 0x1c
|
#define PCH_DEV_SLOT_PCIE 0x1c
|
||||||
#define PCH_DEVFN_PCIE1 _PCH_DEVFN(PCIE, 0)
|
#define PCH_DEVFN_PCIE1 _PCH_DEVFN(PCIE, 0)
|
||||||
#define PCH_DEVFN_PCIE2 _PCH_DEVFN(PCIE, 1)
|
#define PCH_DEVFN_PCIE2 _PCH_DEVFN(PCIE, 1)
|
||||||
|
|
Loading…
Reference in New Issue