soc/intel/cannonlake: Hook up CNVi Bluetooth UPDs to devicetree

Hook up CNVi Bluetooth UPDs to the devicetree. Set CnviBtCore to
`true` so the current behaviour is not changed.

Change-Id: Ic5640c23af3ce30498be814a6d7ce56988653b25
Signed-off-by: Sean Rhodes <sean@starlabs.systems>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/84596
Reviewed-by: Matt DeVillier <matt.devillier@gmail.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
This commit is contained in:
Sean Rhodes 2024-09-30 10:31:28 +01:00
commit 6e546cc695
4 changed files with 25 additions and 0 deletions

View file

@ -409,6 +409,12 @@ struct soc_intel_cannonlake_config {
uint32_t VrPowerDeliveryDesign;
#endif
/* CNVi BT Core Enable/Disable */
bool CnviBtCore;
/* CNVi BT Audio Offload: Enable/Disable BT Audio Offload. */
bool CnviBtAudioOffload;
/*
* Override GPIO PM configuration:
* 0: Use FSP default GPIO PM program,

View file

@ -1,6 +1,9 @@
chip soc/intel/cannonlake
device cpu_cluster 0 on end
register "CnviBtCore" = "true"
device domain 0 on
device pci 00.0 alias system_agent on end # Host Bridge
device pci 01.0 alias peg0 off end # PCIe x16

View file

@ -1,6 +1,9 @@
chip soc/intel/cannonlake
device cpu_cluster 0 on end
register "CnviBtCore" = "true"
device domain 0 on
device pci 00.0 alias system_agent on end # Host Bridge
device pci 01.0 alias peg0 off end # PCIe x16

View file

@ -529,7 +529,20 @@ void platform_fsp_silicon_init_params_cb(FSPS_UPD *supd)
/* Enable CNVi Wifi if enabled in device tree */
#if CONFIG(SOC_INTEL_COMETLAKE)
/* CNVi */
s_cfg->CnviMode = is_devfn_enabled(PCH_DEVFN_CNViWIFI);
s_cfg->CnviBtCore = config->CnviBtCore;
s_cfg->CnviBtAudioOffload = config->CnviBtAudioOffload;
if (!s_cfg->CnviBtCore && s_cfg->CnviBtAudioOffload) {
printk(BIOS_ERR, "BT offload is enabled without CNVi BT being enabled\n");
s_cfg->CnviBtAudioOffload = 0;
}
if (!s_cfg->CnviMode && s_cfg->CnviBtCore) {
printk(BIOS_ERR, "CNVi BT is enabled without CNVi being enabled\n");
s_cfg->CnviBtCore = 0;
s_cfg->CnviBtAudioOffload = 0;
}
#else
s_cfg->PchCnviMode = is_devfn_enabled(PCH_DEVFN_CNViWIFI);
#endif