Luc Verhaegen has uploaded this change for review.
ati: add lombok southern island cards
The other southern island cards have some hack that needs to be
tested on real hardware before adding support.
Change-Id: Icffafeafddce4b697211657082a9a0f550ea5fc3
Signed-off-by: Luc Verhaegen <libv@skynet.be>
---
M ati_spi.c
1 file changed, 27 insertions(+), 4 deletions(-)
git pull ssh://review.coreboot.org:29418/flashrom refs/changes/96/29096/1
diff --git a/ati_spi.c b/ati_spi.c
index 48790d9..1b34c18 100644
--- a/ati_spi.c
+++ b/ati_spi.c
@@ -35,6 +35,7 @@
#define ATI_SPI_TYPE_RV730 2
#define ATI_SPI_TYPE_EVERGREEN 3
#define ATI_SPI_TYPE_NORTHERN_ISLAND 4
+#define ATI_SPI_TYPE_SOUTHERN_ISLAND 5
int type;
int (*save) (struct flashrom_pci_device *device);
@@ -208,10 +209,15 @@
/* disable open drain pads */
mmio_mask(R600_GENERAL_PWRMGT, 0, 0x0800);
- mmio_mask(R600_CTXSW_VID_LOWER_GPIO_CNTL, 0, 0x0400);
- mmio_mask(R600_HIGH_VID_LOWER_GPIO_CNTL, 0, 0x0400);
- mmio_mask(R600_MEDIUM_VID_LOWER_GPIO_CNTL, 0, 0x0400);
- mmio_mask(R600_LOW_VID_LOWER_GPIO_CNTL, 0, 0x0400);
+ if ((private->type == ATI_SPI_TYPE_R600) ||
+ (private->type == ATI_SPI_TYPE_RV730) ||
+ (private->type == ATI_SPI_TYPE_EVERGREEN) ||
+ (private->type == ATI_SPI_TYPE_NORTHERN_ISLAND)) {
+ mmio_mask(R600_CTXSW_VID_LOWER_GPIO_CNTL, 0, 0x0400);
+ mmio_mask(R600_HIGH_VID_LOWER_GPIO_CNTL, 0, 0x0400);
+ mmio_mask(R600_MEDIUM_VID_LOWER_GPIO_CNTL, 0, 0x0400);
+ mmio_mask(R600_LOW_VID_LOWER_GPIO_CNTL, 0, 0x0400);
+ }
if ((private->type == ATI_SPI_TYPE_R600) ||
(private->type == ATI_SPI_TYPE_RV730))
@@ -390,6 +396,19 @@
.master = &r600_spi_master,
};
+/*
+ * Used by Lombok.
+ * Verde, Pitcairn, Hainan and Oland are pending.
+ */
+static const struct ati_spi_pci_private southern_island_spi_pci_private = {
+ .io_bar = 2,
+ .type = ATI_SPI_TYPE_SOUTHERN_ISLAND,
+ .save = r600_spi_save,
+ .restore = r600_spi_restore,
+ .enable = r600_spi_enable,
+ .master = &r600_spi_master,
+};
+
const struct flashrom_pci_match ati_spi_pci_devices[] = {
{0x1002, 0x6704, NT, &northern_island_spi_pci_private},
{0x1002, 0x6707, NT, &northern_island_spi_pci_private},
@@ -429,6 +448,10 @@
{0x1002, 0x6778, NT, &northern_island_spi_pci_private},
{0x1002, 0x6779, NT, &northern_island_spi_pci_private},
{0x1002, 0x677B, NT, &northern_island_spi_pci_private},
+ {0x1002, 0x6840, NT, &southern_island_spi_pci_private},
+ {0x1002, 0x6841, NT, &southern_island_spi_pci_private},
+ {0x1002, 0x6842, NT, &southern_island_spi_pci_private},
+ {0x1002, 0x6843, NT, &southern_island_spi_pci_private},
{0x1002, 0x6880, NT, &evergreen_spi_pci_private},
{0x1002, 0x6888, NT, &evergreen_spi_pci_private},
{0x1002, 0x6889, NT, &evergreen_spi_pci_private},
To view, visit change 29096. To unsubscribe, or for help writing mail filters, visit settings.