mb/google/guybrush: Switch to using device pointers

This change replaces the device tree walks with device pointers by
adding alias for following devices:
1. FPMCU
2. WWAN

Additionally, this change drops the __weak attribute for variant_has_*
functions as there is no need for different implementations for the
variants.

Change-Id: I8af5e27f226270e6b40a50640c87de99a5a703f7
Signed-off-by: Furquan Shaikh <furquan@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/57743
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Tim Wawrzynczak <twawrzynczak@chromium.org>
Reviewed-by: Karthik Ramasubramanian <kramasub@google.com>
This commit is contained in:
Furquan Shaikh 2021-09-16 20:38:24 -07:00
parent e7821e8de0
commit 56fd6419c3
3 changed files with 8 additions and 37 deletions

View File

@ -6,43 +6,14 @@
#include <soc/iomap.h>
#include <soc/pci_devs.h>
static bool variant_has_device_enabled(const struct device_path *device_path, size_t path_length)
{
const struct device *dev =
find_dev_nested_path(all_devices->link_list, device_path, path_length);
WEAK_DEV_PTR(fpmcu);
return is_dev_enabled(dev);
bool variant_has_fpmcu(void)
{
return is_dev_enabled(DEV_PTR(fpmcu));
}
__weak bool variant_has_fpmcu(void)
bool variant_has_pcie_wwan(void)
{
static const struct device_path fpmcu_path[] = {
{
.type = DEVICE_PATH_MMIO,
.mmio.addr = APU_UART1_BASE
},
{
.type = DEVICE_PATH_GENERIC,
.generic.id = 0,
.generic.subid = 0
},
};
return variant_has_device_enabled(fpmcu_path, ARRAY_SIZE(fpmcu_path));
}
__weak bool variant_has_pcie_wwan(void)
{
static const struct device_path pcie_wwan_path[] = {
{
.type = DEVICE_PATH_DOMAIN,
.domain.domain = 0x0,
},
{
.type = DEVICE_PATH_PCI,
.pci.devfn = WWAN_DEVFN
},
};
return variant_has_device_enabled(pcie_wwan_path, ARRAY_SIZE(pcie_wwan_path));
return is_dev_enabled(DEV_PTR(gpp_bridge_2));
}

View File

@ -163,7 +163,7 @@ chip soc/amd/cezanne
register "irq_gpio" = "ACPI_GPIO_IRQ_LEVEL_LOW(GPIO_21)"
register "wake" = "GEVENT_5"
register "uart" = "ACPI_UART_RAW_DEVICE(3000000, 64)"
device generic 0 on
device generic 0 alias fpmcu on
probe FP FP_PRESENT
end
end

View File

@ -122,7 +122,7 @@ chip soc/amd/cezanne
register "irq_gpio" = "ACPI_GPIO_IRQ_LEVEL_LOW(GPIO_21)"
register "wake" = "GEVENT_5"
register "uart" = "ACPI_UART_RAW_DEVICE(3000000, 64)"
device generic 0 on
device generic 0 alias fpmcu on
probe FP FP_PRESENT
end
end