aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFelix Held <felix-coreboot@felixheld.de>2022-10-18 18:16:14 +0200
committerFelix Held <felix-coreboot@felixheld.de>2022-10-20 16:39:24 +0000
commitd2ebe16cb40a2a0dbd941fc48e1fce0a2cf51215 (patch)
treed0897830202969bc78f5dccbb3e895173d93cafe
parentfb8c78b2ec5db8b359d35e080a574df4aa530048 (diff)
soc/amd: introduce and use common soc_uart_ctrlr_info struct
The SoC's uart_info structs all use the same anonymous uart_info struct definition, so create a named struct for this in the common AMD SoC UART header and use it in the SoC code. Signed-off-by: Felix Held <felix-coreboot@felixheld.de> Change-Id: Id183a3c838c6ad26e264c2a29f3c20b00f10d9be Reviewed-on: https://review.coreboot.org/c/coreboot/+/68530 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Fred Reitberger <reitbergerfred@gmail.com>
-rw-r--r--src/soc/amd/cezanne/uart.c7
-rw-r--r--src/soc/amd/common/block/include/amdblocks/uart.h8
-rw-r--r--src/soc/amd/mendocino/uart.c7
-rw-r--r--src/soc/amd/morgana/uart.c7
-rw-r--r--src/soc/amd/picasso/uart.c7
5 files changed, 12 insertions, 24 deletions
diff --git a/src/soc/amd/cezanne/uart.c b/src/soc/amd/cezanne/uart.c
index ba10945bf8..cfa8fc4cca 100644
--- a/src/soc/amd/cezanne/uart.c
+++ b/src/soc/amd/cezanne/uart.c
@@ -13,12 +13,7 @@
#include <soc/uart.h>
#include <types.h>
-static const struct {
- uintptr_t base;
- unsigned int aoac_device;
- const char *acpi_name;
- struct soc_amd_gpio mux[2];
-} uart_info[] = {
+static const struct soc_uart_ctrlr_info uart_info[] = {
[0] = { APU_UART0_BASE, FCH_AOAC_DEV_UART0, "FUR0", {
PAD_NF(GPIO_143, UART0_TXD, PULL_NONE),
PAD_NF(GPIO_141, UART0_RXD, PULL_NONE),
diff --git a/src/soc/amd/common/block/include/amdblocks/uart.h b/src/soc/amd/common/block/include/amdblocks/uart.h
index 4fd1b592cd..4e8ea8ca35 100644
--- a/src/soc/amd/common/block/include/amdblocks/uart.h
+++ b/src/soc/amd/common/block/include/amdblocks/uart.h
@@ -3,9 +3,17 @@
#ifndef AMD_BLOCK_UART_H
#define AMD_BLOCK_UART_H
+#include <amdblocks/gpio.h>
#include <device/device.h>
#include <types.h>
+struct soc_uart_ctrlr_info {
+ uintptr_t base;
+ unsigned int aoac_device;
+ const char *acpi_name;
+ struct soc_amd_gpio mux[2];
+};
+
uintptr_t get_uart_base(unsigned int idx); /* get MMIO base address of FCH UART */
void uart_inject_ssdt(const struct device *dev);
diff --git a/src/soc/amd/mendocino/uart.c b/src/soc/amd/mendocino/uart.c
index 3809b85536..1b3f5693dd 100644
--- a/src/soc/amd/mendocino/uart.c
+++ b/src/soc/amd/mendocino/uart.c
@@ -13,12 +13,7 @@
#include <soc/uart.h>
#include <types.h>
-static const struct {
- uintptr_t base;
- unsigned int aoac_device;
- const char *acpi_name;
- struct soc_amd_gpio mux[2];
-} uart_info[] = {
+static const struct soc_uart_ctrlr_info uart_info[] = {
[0] = { APU_UART0_BASE, FCH_AOAC_DEV_UART0, "FUR0", {
PAD_NF(GPIO_143, UART0_TXD, PULL_NONE),
PAD_NF(GPIO_141, UART0_RXD, PULL_NONE),
diff --git a/src/soc/amd/morgana/uart.c b/src/soc/amd/morgana/uart.c
index acd36ec61d..5569001de7 100644
--- a/src/soc/amd/morgana/uart.c
+++ b/src/soc/amd/morgana/uart.c
@@ -15,12 +15,7 @@
#include <soc/uart.h>
#include <types.h>
-static const struct {
- uintptr_t base;
- unsigned int aoac_device;
- const char *acpi_name;
- struct soc_amd_gpio mux[2];
-} uart_info[] = {
+static const struct soc_uart_ctrlr_info uart_info[] = {
[0] = { APU_UART0_BASE, FCH_AOAC_DEV_UART0, "FUR0", {
PAD_NF(GPIO_143, UART0_TXD, PULL_NONE),
PAD_NF(GPIO_141, UART0_RXD, PULL_NONE),
diff --git a/src/soc/amd/picasso/uart.c b/src/soc/amd/picasso/uart.c
index 2879ed1794..b9fff85776 100644
--- a/src/soc/amd/picasso/uart.c
+++ b/src/soc/amd/picasso/uart.c
@@ -13,12 +13,7 @@
#include <soc/uart.h>
#include <types.h>
-static const struct {
- uintptr_t base;
- unsigned int aoac_device;
- const char *acpi_name;
- struct soc_amd_gpio mux[2];
-} uart_info[] = {
+static const struct soc_uart_ctrlr_info uart_info[] = {
[0] = { APU_UART0_BASE, FCH_AOAC_DEV_UART0, "FUR0", {
PAD_NF(GPIO_138, UART0_TXD, PULL_NONE),
PAD_NF(GPIO_136, UART0_RXD, PULL_NONE),