From b3850964f6a87f107e7eaae16d75299f32cc6e76 Mon Sep 17 00:00:00 2001 From: Stefan Tauner Date: Sat, 24 Dec 2011 00:00:32 +0000 Subject: Add ich_descriptor_tool to decode all flash descriptors stored in a flash dump file MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This patch adds an external utility that shares most of the existing descriptor decoding source code. Additionally to what is available via FDOC/FDOD this allows to access: - the softstraps which are used to configure the chipset by flash content without the need for BIOS routines. on ICH8 it is possible to read those with FDOC/FDOC too, but this was removed in later chipsets. - the ME VSCC (Vendor Specific Component Capabilities) table. simply put, this is an SPI chip database used to figure out the flash's capabilities. - the MAC address stored in the GbE image. Intel thinks this information should be confidential for ICH9 and up, but references some tidbits in their public documentation. This patch includes the human-readable information for ICH8, Ibex Peak (5 series) and Cougar Point (6 series); the latter two were obtained from leaked "SPI Flash Programming Guides" found by google. Data regarding ICH9 and 10 is unknown to us yet. It can probably found in: "Intel® ICH7, ICH8, ICH9 and ICH10 — SPI Family Flash Programming Guide" Information regarding the upcoming Panther Point chipset is also not included. Corresponding to flashrom svn r1480. Signed-off-by: Stefan Tauner Acked-by: Matthias Wenzel --- programmer.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'programmer.h') diff --git a/programmer.h b/programmer.h index a40d037c..d6b9cd66 100644 --- a/programmer.h +++ b/programmer.h @@ -527,7 +527,6 @@ int default_spi_write_256(struct flashctx *flash, uint8_t *buf, unsigned int sta int register_spi_programmer(const struct spi_programmer *programmer); /* ichspi.c */ -#if CONFIG_INTERNAL == 1 enum ich_chipset { CHIPSET_ICH_UNKNOWN, CHIPSET_ICH7 = 7, @@ -539,6 +538,7 @@ enum ich_chipset { CHIPSET_7_SERIES_PANTHER_POINT }; +#if CONFIG_INTERNAL == 1 extern uint32_t ichspi_bbar; int ich_init_spi(struct pci_dev *dev, uint32_t base, void *rcrb, enum ich_chipset ich_generation); -- cgit v1.2.3