soc/amd/*: Hook up GPU ops in devicetree

This removes the need for a PCI driver.

Change-Id: I4b499013a80f5c1bd6ac265a5ae8e635598d9e6c
Signed-off-by: Arthur Heymans <arthur@aheymans.xyz>
Signed-off-by: Felix Held <felix-coreboot@felixheld.de>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/68148
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Martin Roth <martin.roth@amd.corp-partner.google.com>
Reviewed-by: Fred Reitberger <reitbergerfred@gmail.com>
This commit is contained in:
Arthur Heymans 2022-10-05 22:15:58 +02:00 committed by Felix Held
parent b171f76812
commit 796a8f3dd3
6 changed files with 6 additions and 23 deletions

View File

@ -24,7 +24,7 @@ chip soc/amd/cezanne
device pci 08.0 on end # Dummy Host Bridge, do not disable device pci 08.0 on end # Dummy Host Bridge, do not disable
device pci 08.1 alias gpp_bridge_a off # Internal GPP Bridge 0 to Bus A device pci 08.1 alias gpp_bridge_a off # Internal GPP Bridge 0 to Bus A
ops amd_internal_pcie_gpp_ops ops amd_internal_pcie_gpp_ops
device pci 0.0 alias gfx off end # Internal GPU (GFX) device pci 0.0 alias gfx off ops amd_graphics_ops end # Internal GPU (GFX)
device pci 0.1 alias gfx_hda off end # Display HD Audio Controller (GFXAZ) device pci 0.1 alias gfx_hda off end # Display HD Audio Controller (GFXAZ)
device pci 0.2 alias crypto off end # Crypto Coprocessor device pci 0.2 alias crypto off end # Crypto Coprocessor
device pci 0.3 alias xhci_0 off device pci 0.3 alias xhci_0 off

View File

@ -4,7 +4,6 @@
#include <acpi/acpigen.h> #include <acpi/acpigen.h>
#include <boot/coreboot_tables.h> #include <boot/coreboot_tables.h>
#include <device/pci.h> #include <device/pci.h>
#include <device/pci_ids.h>
#include <console/console.h> #include <console/console.h>
#include <fsp/graphics.h> #include <fsp/graphics.h>
#include <soc/intel/common/vbt.h> #include <soc/intel/common/vbt.h>
@ -168,7 +167,7 @@ static void graphics_dev_init(struct device *const dev)
pci_dev_init(dev); pci_dev_init(dev);
} }
static const struct device_operations graphics_ops = { const struct device_operations amd_graphics_ops = {
.read_resources = pci_dev_read_resources, .read_resources = pci_dev_read_resources,
.set_resources = graphics_set_resources, .set_resources = graphics_set_resources,
.enable_resources = pci_dev_enable_resources, .enable_resources = pci_dev_enable_resources,
@ -179,19 +178,3 @@ static const struct device_operations graphics_ops = {
.acpi_fill_ssdt = graphics_fill_ssdt, .acpi_fill_ssdt = graphics_fill_ssdt,
.acpi_name = graphics_acpi_name, .acpi_name = graphics_acpi_name,
}; };
static const unsigned short pci_device_ids[] = {
PCI_DID_ATI_FAM17H_MODEL18H_GPU,
PCI_DID_ATI_FAM17H_MODEL60H_GPU,
PCI_DID_ATI_FAM17H_MODEL68H_GPU,
PCI_DID_ATI_FAM17H_MODELA0H_GPU,
PCI_DID_ATI_FAM19H_MODEL51H_GPU_CEZANNE,
PCI_DID_ATI_FAM19H_MODEL51H_GPU_BARCELO,
0,
};
static const struct pci_driver graphics_driver __pci_driver = {
.ops = &graphics_ops,
.vendor = PCI_VID_ATI,
.devices = pci_device_ids,
};

View File

@ -20,7 +20,7 @@ chip soc/amd/mendocino
device pci 08.0 on end # Dummy Host Bridge, do not disable device pci 08.0 on end # Dummy Host Bridge, do not disable
device pci 08.1 alias gpp_bridge_a off # Internal GPP Bridge 0 to Bus A device pci 08.1 alias gpp_bridge_a off # Internal GPP Bridge 0 to Bus A
ops amd_internal_pcie_gpp_ops ops amd_internal_pcie_gpp_ops
device pci 0.0 alias gfx off end # Internal GPU (GFX) device pci 0.0 alias gfx off ops amd_graphics_ops end # Internal GPU (GFX)
device pci 0.1 alias gfx_hda off end # Display HD Audio Controller (GFXAZ) device pci 0.1 alias gfx_hda off end # Display HD Audio Controller (GFXAZ)
device pci 0.2 alias crypto off end # Crypto Coprocessor device pci 0.2 alias crypto off end # Crypto Coprocessor
device pci 0.3 alias xhci_0 off device pci 0.3 alias xhci_0 off

View File

@ -20,7 +20,7 @@ chip soc/amd/mendocino
device pci 08.0 on end # Dummy Host Bridge, do not disable device pci 08.0 on end # Dummy Host Bridge, do not disable
device pci 08.1 alias gpp_bridge_a off # Internal GPP Bridge 0 to Bus A device pci 08.1 alias gpp_bridge_a off # Internal GPP Bridge 0 to Bus A
ops amd_internal_pcie_gpp_ops ops amd_internal_pcie_gpp_ops
device pci 0.0 alias gfx off end # Internal GPU (GFX) device pci 0.0 alias gfx off ops amd_graphics_ops end # Internal GPU (GFX)
device pci 0.1 alias gfx_hda off end # Display HD Audio Controller (GFXAZ) device pci 0.1 alias gfx_hda off end # Display HD Audio Controller (GFXAZ)
device pci 0.2 alias crypto off end # Crypto Coprocessor device pci 0.2 alias crypto off end # Crypto Coprocessor
device pci 0.3 alias xhci_0 off device pci 0.3 alias xhci_0 off

View File

@ -22,7 +22,7 @@ chip soc/amd/morgana
device pci 08.0 on end # Dummy Host Bridge, do not disable device pci 08.0 on end # Dummy Host Bridge, do not disable
device pci 08.1 alias gpp_bridge_a off # Internal GPP Bridge 0 to Bus A device pci 08.1 alias gpp_bridge_a off # Internal GPP Bridge 0 to Bus A
ops amd_internal_pcie_gpp_ops ops amd_internal_pcie_gpp_ops
device pci 0.0 alias gfx off end # Internal GPU (GFX) device pci 0.0 alias gfx off ops amd_graphics_ops end # Internal GPU (GFX)
device pci 0.1 alias gfx_hda off end # Display HD Audio Controller (GFXAZ) device pci 0.1 alias gfx_hda off end # Display HD Audio Controller (GFXAZ)
device pci 0.2 alias crypto off end # Crypto Coprocessor device pci 0.2 alias crypto off end # Crypto Coprocessor
device pci 0.3 alias xhci_0 off device pci 0.3 alias xhci_0 off

View File

@ -19,7 +19,7 @@ chip soc/amd/picasso
device pci 08.0 on end # Dummy Host Bridge, do not disable device pci 08.0 on end # Dummy Host Bridge, do not disable
device pci 08.1 alias internal_bridge_a off # internal bridge to bus A device pci 08.1 alias internal_bridge_a off # internal bridge to bus A
ops amd_internal_pcie_gpp_ops ops amd_internal_pcie_gpp_ops
device pci 0.0 alias gfx off end # internal GPU device pci 0.0 alias gfx off ops amd_graphics_ops end # internal GPU
device pci 0.1 alias gfx_hda off end # display HD Audio controller device pci 0.1 alias gfx_hda off end # display HD Audio controller
device pci 0.2 alias crypto off end # cryptography coprocessor device pci 0.2 alias crypto off end # cryptography coprocessor
device pci 0.3 alias xhci_0 off end device pci 0.3 alias xhci_0 off end