[flashrom] [PATCH 4/6] ichspi: print flash descriptor dependent information only when it is valid

Stefan Tauner stefan.tauner at student.tuwien.ac.at
Thu Oct 6 01:49:25 CEST 2011


also, fix some coding style issues

Signed-off-by: Stefan Tauner <stefan.tauner at student.tuwien.ac.at>
---
 ichspi.c |   61 ++++++++++++++++++++++++++++++++++---------------------------
 1 files changed, 34 insertions(+), 27 deletions(-)

diff --git a/ichspi.c b/ichspi.c
index 88042d1..fd42ba3 100644
--- a/ichspi.c
+++ b/ichspi.c
@@ -1074,7 +1074,7 @@ static int ich_spi_send_command(unsigned int writecnt, unsigned int readcnt,
 		    (opcode->spi_type == SPI_OPCODE_TYPE_WRITE_NO_ADDRESS)) {
 			int i;
 			msg_pspew("The data was:\n");
-			for(i=0; i<count; i++){
+			for (i = 0; i < count; i++){
 				msg_pspew("%3d: 0x%02x\n", i, data[i]);
 			}
 		}
@@ -1655,28 +1655,33 @@ int ich_init_spi(struct pci_dev *dev, uint32_t base, void *rcrb,
 				  "effect. Please note that Protected\n"
 				  "Range (PR) restrictions still apply.\n");
 
-		tmp2 = mmio_readw(ich_spibar + ICH9_REG_HSFC);
-		msg_pdbg("0x06: 0x%04x (HSFC)\n", tmp2);
-		prettyprint_ich9_reg_hsfc(tmp2);
+		if (desc_valid) {
+			tmp2 = mmio_readw(ich_spibar + ICH9_REG_HSFC);
+			msg_pdbg("0x06: 0x%04x (HSFC)\n", tmp2);
+			prettyprint_ich9_reg_hsfc(tmp2);
+		}
 
 		tmp = mmio_readl(ich_spibar + ICH9_REG_FADDR);
 		msg_pdbg("0x08: 0x%08x (FADDR)\n", tmp);
-		tmp = mmio_readl(ich_spibar + ICH9_REG_FRAP);
-		msg_pdbg("0x50: 0x%08x (FRAP)\n", tmp);
-		msg_pdbg("BMWAG 0x%02x, ", ICH_BMWAG(tmp));
-		msg_pdbg("BMRAG 0x%02x, ", ICH_BMRAG(tmp));
-		msg_pdbg("BRWA 0x%02x, ", ICH_BRWA(tmp));
-		msg_pdbg("BRRA 0x%02x\n", ICH_BRRA(tmp));
 
-		/* print out the FREGx registers along with FRAP access bits */
-		for(i = 0; i < 5; i++)
-			do_ich9_spi_frap(tmp, i);
+		if (desc_valid) {
+			tmp = mmio_readl(ich_spibar + ICH9_REG_FRAP);
+			msg_pdbg("0x50: 0x%08x (FRAP)\n", tmp);
+			msg_pdbg("BMWAG 0x%02x, ", ICH_BMWAG(tmp));
+			msg_pdbg("BMRAG 0x%02x, ", ICH_BMRAG(tmp));
+			msg_pdbg("BRWA 0x%02x, ", ICH_BRWA(tmp));
+			msg_pdbg("BRRA 0x%02x\n", ICH_BRRA(tmp));
+
+			/* Decode and print FREGx and FRAP registers */
+			for (i = 0; i < 5; i++)
+				do_ich9_spi_frap(tmp, i);
+		}
 
 		/* try to disable PR locks before printing them */
 		if (!ichspi_lock)
-			for(i = 0; i < 5; i++)
+			for (i = 0; i < 5; i++)
 				ich9_set_pr(i, 0, 0);
-		for(i = 0; i < 5; i++)
+		for (i = 0; i < 5; i++)
 			prettyprint_ich9_reg_pr(i);
 
 		tmp = mmio_readl(ich_spibar + ICH9_REG_SSFS);
@@ -1697,7 +1702,7 @@ int ich_init_spi(struct pci_dev *dev, uint32_t base, void *rcrb,
 			     mmio_readl(ich_spibar + ICH9_REG_OPMENU));
 		msg_pdbg("0x9C: 0x%08x (OPMENU+4)\n",
 			     mmio_readl(ich_spibar + ICH9_REG_OPMENU + 4));
-		if (ich_generation == 8) {
+		if (ich_generation == 8 && desc_valid) {
 			tmp = mmio_readl(ich_spibar + ICH8_REG_VSCC);
 			msg_pdbg("0xC1: 0x%08x (VSCC)\n", tmp);
 			msg_pdbg("VSCC: ");
@@ -1706,20 +1711,22 @@ int ich_init_spi(struct pci_dev *dev, uint32_t base, void *rcrb,
 			ichspi_bbar = mmio_readl(ich_spibar + ICH9_REG_BBAR);
 			msg_pdbg("0xA0: 0x%08x (BBAR)\n",
 				     ichspi_bbar);
+			ich_set_bbar(ich_generation, 0);
 
-			tmp = mmio_readl(ich_spibar + ICH9_REG_LVSCC);
-			msg_pdbg("0xC4: 0x%08x (LVSCC)\n", tmp);
-			msg_pdbg("LVSCC: ");
-			prettyprint_ich_reg_vscc(tmp, MSG_DEBUG);
+			if (desc_valid) {
+				tmp = mmio_readl(ich_spibar + ICH9_REG_LVSCC);
+				msg_pdbg("0xC4: 0x%08x (LVSCC)\n", tmp);
+				msg_pdbg("LVSCC: ");
+				prettyprint_ich_reg_vscc(tmp, MSG_DEBUG);
 
-			tmp = mmio_readl(ich_spibar + ICH9_REG_UVSCC);
-			msg_pdbg("0xC8: 0x%08x (UVSCC)\n", tmp);
-			msg_pdbg("UVSCC: ");
-			prettyprint_ich_reg_vscc(tmp, MSG_DEBUG);
+				tmp = mmio_readl(ich_spibar + ICH9_REG_UVSCC);
+				msg_pdbg("0xC8: 0x%08x (UVSCC)\n", tmp);
+				msg_pdbg("UVSCC: ");
+				prettyprint_ich_reg_vscc(tmp, MSG_DEBUG);
 
-			tmp = mmio_readl(ich_spibar + ICH9_REG_FPB);
-			msg_pdbg("0xD0: 0x%08x (FPB)\n", tmp);
-			ich_set_bbar(ich_generation, 0);
+				tmp = mmio_readl(ich_spibar + ICH9_REG_FPB);
+				msg_pdbg("0xD0: 0x%08x (FPB)\n", tmp);
+			}
 		}
 
 		msg_pdbg("\n");
-- 
1.7.1





More information about the flashrom mailing list