summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--board_enable.c93
-rw-r--r--cbtable.c22
-rw-r--r--chipset_enable.c216
-rw-r--r--dmi.c13
-rw-r--r--flashrom.c142
-rw-r--r--hwaccess.c2
-rw-r--r--ichspi.c79
-rw-r--r--pcidev.c12
-rw-r--r--physmap.c38
-rw-r--r--spi.c8
10 files changed, 308 insertions, 317 deletions
diff --git a/board_enable.c b/board_enable.c
index f1f7953..2cf81c2 100644
--- a/board_enable.c
+++ b/board_enable.c
@@ -87,7 +87,7 @@ static int enable_flash_decode_superio(void)
ret = 0;
break;
default:
- printf_debug("Unhandled Super I/O type!\n");
+ msg_pdbg("Unhandled Super I/O type!\n");
ret = -1;
break;
}
@@ -108,7 +108,7 @@ static int w83627hf_gpio24_raise(uint16_t port, const char *name)
/* Is this the W83627HF? */
if (sio_read(port, 0x20) != 0x52) { /* Super I/O device ID reg. */
- fprintf(stderr, "\nERROR: %s: W83627HF: Wrong ID: 0x%02X.\n",
+ msg_perr("\nERROR: %s: W83627HF: Wrong ID: 0x%02X.\n",
name, sio_read(port, 0x20));
w836xx_ext_leave(port);
return -1;
@@ -148,7 +148,7 @@ static int w83627thf_gpio4_4_raise(uint16_t port, const char *name)
/* Is this the W83627THF? */
if (sio_read(port, 0x20) != 0x82) { /* Super I/O device ID reg. */
- fprintf(stderr, "\nERROR: %s: W83627THF: Wrong ID: 0x%02X.\n",
+ msg_perr("\nERROR: %s: W83627THF: Wrong ID: 0x%02X.\n",
name, sio_read(port, 0x20));
w836xx_ext_leave(port);
return -1;
@@ -253,20 +253,20 @@ static int pc87360_gpio_set(uint8_t gpio, int raise)
uint8_t id, val;
if (gpio_bank > 4) {
- fprintf(stderr, "PC87360: Invalid GPIO %d\n", gpio);
+ msg_perr("PC87360: Invalid GPIO %d\n", gpio);
return -1;
}
id = sio_read(0x2E, 0x20);
if (id != 0xE1) {
- fprintf(stderr, "PC87360: unexpected ID %02x\n", id);
+ msg_perr("PC87360: unexpected ID %02x\n", id);
return -1;
}
sio_write(0x2E, 0x07, 0x07); /* Select GPIO device */
baseport = (sio_read(0x2E, 0x60) << 8) | sio_read(0x2E, 0x61);
if ((baseport & 0xFFF0) == 0xFFF0 || baseport == 0) {
- fprintf (stderr, "PC87360: invalid GPIO base address %04x\n",
+ msg_perr("PC87360: invalid GPIO base address %04x\n",
baseport);
return -1;
}
@@ -300,7 +300,7 @@ static int via_vt823x_gpio_set(uint8_t gpio, int raise)
case 0x3337: /* VT8237A */
break;
default:
- fprintf(stderr, "\nERROR: VT823x ISA bridge not found.\n");
+ msg_perr("\nERROR: VT823x ISA bridge not found.\n");
return -1;
}
@@ -319,7 +319,7 @@ static int via_vt823x_gpio_set(uint8_t gpio, int raise)
val |= 0x01;
pci_write_byte(dev, 0xE4, val);
} else {
- fprintf(stderr, "\nERROR: "
+ msg_perr("\nERROR: "
"VT823x GPIO%02d is not implemented.\n", gpio);
return -1;
}
@@ -411,7 +411,7 @@ static int board_asus_p5a(const char *name)
}
if (i == ASUSP5A_LOOP) {
- printf("%s: Unable to contact device.\n", name);
+ msg_perr("%s: Unable to contact device.\n", name);
return -1;
}
@@ -427,7 +427,7 @@ static int board_asus_p5a(const char *name)
}
if ((i == ASUSP5A_LOOP) || !(tmp & 0x10)) {
- printf("%s: failed to read device.\n", name);
+ msg_perr("%s: failed to read device.\n", name);
return -1;
}
@@ -454,7 +454,7 @@ static int board_asus_p5a(const char *name)
}
if ((i == ASUSP5A_LOOP) || !(tmp & 0x10)) {
- printf("%s: failed to write to device.\n", name);
+ msg_perr("%s: failed to write to device.\n", name);
return -1;
}
@@ -492,8 +492,7 @@ static int board_shuttle_fn25(const char *name)
dev = pci_dev_find(0x10DE, 0x0050); /* NVIDIA CK804 ISA Bridge. */
if (!dev) {
- fprintf(stderr,
- "\nERROR: NVIDIA nForce4 ISA bridge not found.\n");
+ msg_perr("\nERROR: NVIDIA nForce4 ISA bridge not found.\n");
return -1;
}
@@ -513,7 +512,7 @@ static int nvidia_mcp_gpio_set(int gpio, int raise)
uint8_t tmp;
if ((gpio < 0) || (gpio >= 0x40)) {
- fprintf(stderr, "\nERROR: unsupported GPIO: %d.\n", gpio);
+ msg_perr("\nERROR: unsupported GPIO: %d.\n", gpio);
return -1;
}
@@ -531,8 +530,7 @@ static int nvidia_mcp_gpio_set(int gpio, int raise)
case 0x0264: /* MCP51 */
break;
default:
- fprintf(stderr,
- "\nERROR: no NVIDIA LPC/SMBus controller found.\n");
+ msg_perr("\nERROR: no NVIDIA LPC/SMBus controller found.\n");
return -1;
}
break;
@@ -661,20 +659,20 @@ static int intel_piix4_gpo_set(unsigned int gpo, int raise)
dev = pci_dev_find(0x8086, 0x7110); /* Intel PIIX4 ISA bridge */
if (!dev) {
- fprintf(stderr, "\nERROR: Intel PIIX4 ISA bridge not found.\n");
+ msg_perr("\nERROR: Intel PIIX4 ISA bridge not found.\n");
return -1;
}
/* sanity check */
if (gpo > 30) {
- fprintf(stderr, "\nERROR: Intel PIIX4 has no GPO%d.\n", gpo);
+ msg_perr("\nERROR: Intel PIIX4 has no GPO%d.\n", gpo);
return -1;
}
/* these are dual function pins which are most likely in use already */
if (((gpo >= 1) && (gpo <= 7)) ||
((gpo >= 9) && (gpo <= 21)) || (gpo == 29)) {
- fprintf(stderr, "\nERROR: Unsupported PIIX4 GPO%d.\n", gpo);
+ msg_perr("\nERROR: Unsupported PIIX4 GPO%d.\n", gpo);
return -1;
}
@@ -703,7 +701,7 @@ static int intel_piix4_gpo_set(unsigned int gpo, int raise)
dev = pci_dev_find(0x8086, 0x7113); /* Intel PIIX4 PM */
if (!dev) {
- fprintf(stderr, "\nERROR: Intel PIIX4 PM not found.\n");
+ msg_perr("\nERROR: Intel PIIX4 PM not found.\n");
return -1;
}
@@ -805,7 +803,7 @@ static int intel_ich_gpio_set(int gpio, int raise)
}
if (!dev) {
- fprintf(stderr, "\nERROR: No Known Intel LPC Bridge found.\n");
+ msg_perr("\nERROR: No Known Intel LPC Bridge found.\n");
return -1;
}
@@ -823,12 +821,12 @@ static int intel_ich_gpio_set(int gpio, int raise)
allowed = (intel_ich_gpio_table[i].bank2 >> (gpio - 64)) & 0x01;
if (!allowed) {
- fprintf(stderr, "\nERROR: This Intel LPC Bridge does not allow"
+ msg_perr("\nERROR: This Intel LPC Bridge does not allow"
" setting GPIO%02d\n", gpio);
return -1;
}
- printf("\nIntel ICH LPC Bridge: %sing GPIO%02d.\n",
+ msg_pdbg("\nIntel ICH LPC Bridge: %sing GPIO%02d.\n",
raise ? "Rais" : "Dropp", gpio);
if (gpio < 32) {
@@ -847,7 +845,7 @@ static int intel_ich_gpio_set(int gpio, int raise)
if (dev->device_id > 0x2800) {
tmp = INL(base);
if (!(tmp & (1 << gpio))) {
- fprintf(stderr, "\nERROR: This Intel LPC Bridge"
+ msg_perr("\nERROR: This Intel LPC Bridge"
" does not allow setting GPIO%02d\n",
gpio);
return -1;
@@ -879,7 +877,7 @@ static int intel_ich_gpio_set(int gpio, int raise)
if (dev->device_id > 0x2800) {
tmp = INL(base + 30);
if (!(tmp & (1 << gpio))) {
- fprintf(stderr, "\nERROR: This Intel LPC Bridge"
+ msg_perr("\nERROR: This Intel LPC Bridge"
" does not allow setting GPIO%02d\n",
gpio + 32);
return -1;
@@ -908,7 +906,7 @@ static int intel_ich_gpio_set(int gpio, int raise)
tmp = INL(base + 40);
if (!(tmp & (1 << gpio))) {
- fprintf(stderr, "\nERROR: This Intel LPC Bridge does "
+ msg_perr("\nERROR: This Intel LPC Bridge does "
"not allow setting GPIO%02d\n", gpio + 64);
return -1;
}
@@ -1051,11 +1049,11 @@ static int via_apollo_gpo_set(int gpio, int raise)
/* VT82C686 Power management */
dev = pci_dev_find(0x1106, 0x3057);
if (!dev) {
- fprintf(stderr, "\nERROR: VT82C686 PM device not found.\n");
+ msg_perr("\nERROR: VT82C686 PM device not found.\n");
return -1;
}
- printf("\nVIA Apollo ACPI: %sing GPIO%02d.\n",
+ msg_pdbg("\nVIA Apollo ACPI: %sing GPIO%02d.\n",
raise ? "Rais" : "Dropp", gpio);
/* select GPO function on multiplexed pins */
@@ -1118,7 +1116,7 @@ static int board_msi_651ml(const char *name)
dev = pci_dev_find(0x1039, 0x0962);
if (!dev) {
- fprintf(stderr, "Expected south bridge not found\n");
+ msg_perr("Expected south bridge not found\n");
return 1;
}
@@ -1151,7 +1149,7 @@ static uint16_t smsc_find_runtime(uint16_t sio_port, uint16_t chip_id,
/* Verify the chip ID. */
OUTB(0x55, sio_port); /* Enable configuration. */
if (sio_read(sio_port, 0x20) != chip_id) {
- fprintf(stderr, "\nERROR: SMSC Super I/O not found.\n");
+ msg_perr("\nERROR: SMSC Super I/O not found.\n");
goto out;
}
@@ -1163,7 +1161,7 @@ static uint16_t smsc_find_runtime(uint16_t sio_port, uint16_t chip_id,
}
if (rt_port == 0) {
- fprintf(stderr, "\nERROR: "
+ msg_perr("\nERROR: "
"Super I/O runtime interface not available.\n");
}
out:
@@ -1183,7 +1181,7 @@ static int board_mitac_6513wu(const char *name)
dev = pci_dev_find(0x8086, 0x2410); /* Intel 82801AA ISA bridge */
if (!dev) {
- fprintf(stderr, "\nERROR: Intel 82801AA ISA bridge not found.\n");
+ msg_perr("\nERROR: Intel 82801AA ISA bridge not found.\n");
return -1;
}
@@ -1218,7 +1216,7 @@ static int board_asus_a7v8x(const char *name)
w836xx_ext_leave(0x2E);
if (id != 0x8701) {
- fprintf(stderr, "\nERROR: IT8703F Super I/O not found.\n");
+ msg_perr("\nERROR: IT8703F Super I/O not found.\n");
return -1;
}
@@ -1229,7 +1227,7 @@ static int board_asus_a7v8x(const char *name)
w836xx_ext_leave(0x2E);
if (!base) {
- fprintf(stderr, "\nERROR: Failed to read IT8703F Super I/O GPIO"
+ msg_perr("\nERROR: Failed to read IT8703F Super I/O GPIO"
" Base.\n");
return -1;
}
@@ -1259,8 +1257,7 @@ static int it8712f_gpio_set(unsigned int line, int raise)
/* Check line */
if ((port > 4) || /* also catches unsigned -1 */
((port < 4) && (line > 7)) || ((port == 4) && (line > 5))) {
- fprintf(stderr,
- "\nERROR: Unsupported IT8712F GPIO Line %02d.\n", line);
+ msg_perr("\nERROR: Unsupported IT8712F GPIO Line %02d.\n", line);
return -1;
}
@@ -1270,7 +1267,7 @@ static int it8712f_gpio_set(unsigned int line, int raise)
exit_conf_mode_ite(0x2E);
if (id != 0x8712) {
- fprintf(stderr, "\nERROR: IT8712F Super I/O not found.\n");
+ msg_perr("\nERROR: IT8712F Super I/O not found.\n");
return -1;
}
@@ -1281,7 +1278,7 @@ static int it8712f_gpio_set(unsigned int line, int raise)
exit_conf_mode_ite(0x2E);
if (!base) {
- fprintf(stderr, "\nERROR: Failed to read IT8712F Super I/O GPIO"
+ msg_perr("\nERROR: Failed to read IT8712F Super I/O GPIO"
" Base.\n");
return -1;
}
@@ -1450,10 +1447,10 @@ static struct board_pciid_enable *board_match_coreboot_name(const char *vendor,
if (partmatch) {
/* a second entry has a matching part name */
- printf("AMBIGUOUS BOARD NAME: %s\n", part);
- printf("At least vendors '%s' and '%s' match.\n",
+ msg_pinfo("AMBIGUOUS BOARD NAME: %s\n", part);
+ msg_pinfo("At least vendors '%s' and '%s' match.\n",
partmatch->lb_vendor, board->lb_vendor);
- printf("Please use the full -m vendor:part syntax.\n");
+ msg_perr("Please use the full -m vendor:part syntax.\n");
return NULL;
}
partmatch = board;
@@ -1467,7 +1464,7 @@ static struct board_pciid_enable *board_match_coreboot_name(const char *vendor,
* coreboot table. If it was, the coreboot implementor is
* expected to fix flashrom, too.
*/
- printf("\nUnknown vendor:board from -m option: %s:%s\n\n",
+ msg_perr("\nUnknown vendor:board from -m option: %s:%s\n\n",
vendor, part);
}
return NULL;
@@ -1507,7 +1504,7 @@ static struct board_pciid_enable *board_match_pci_card_ids(void)
if (board->dmi_pattern) {
if (!has_dmi_support) {
- fprintf(stderr, "WARNING: Can't autodetect %s %s,"
+ msg_perr("WARNING: Can't autodetect %s %s,"
" DMI info unavailable.\n",
board->vendor_name, board->board_name);
continue;
@@ -1536,7 +1533,7 @@ int board_flash_enable(const char *vendor, const char *part)
if (board && board->status == NT) {
if (!force_boardenable) {
- printf("WARNING: Your mainboard is %s %s, but the mainboard-specific\n"
+ msg_pinfo("WARNING: Your mainboard is %s %s, but the mainboard-specific\n"
"code has not been tested, and thus will not not be executed by default.\n"
"Depending on your hardware environment, erasing, writing or even probing\n"
"can fail without running the board specific code.\n\n"
@@ -1545,7 +1542,7 @@ int board_flash_enable(const char *vendor, const char *part)
board->vendor_name, board->board_name);
board = NULL;
} else {
- printf("NOTE: Running an untested board enable procedure.\n"
+ msg_pinfo("NOTE: Running an untested board enable procedure.\n"
"Please report success/failure to flashrom@flashrom.org.\n");
}
}
@@ -1556,15 +1553,15 @@ int board_flash_enable(const char *vendor, const char *part)
board->max_rom_decode_parallel * 1024;
if (board->enable != NULL) {
- printf("Disabling flash write protection for "
+ msg_pinfo("Disabling flash write protection for "
"board \"%s %s\"... ", board->vendor_name,
board->board_name);
ret = board->enable(board->vendor_name);
if (ret)
- printf("FAILED!\n");
+ msg_pinfo("FAILED!\n");
else
- printf("OK.\n");
+ msg_pinfo("OK.\n");
}
}
diff --git a/cbtable.c b/cbtable.c
index c12354c..3e97ed7 100644
--- a/cbtable.c
+++ b/cbtable.c
@@ -112,29 +112,29 @@ static struct lb_header *find_lb_table(void *base, unsigned long start,
(struct lb_record *)(((char *)base) + addr + sizeof(*head));
if (memcmp(head->signature, "LBIO", 4) != 0)
continue;
- printf_debug("Found candidate at: %08lx-%08lx\n",
+ msg_pdbg("Found candidate at: %08lx-%08lx\n",
addr, addr + head->table_bytes);
if (head->header_bytes != sizeof(*head)) {
- fprintf(stderr, "Header bytes of %d are incorrect.\n",
+ msg_perr("Header bytes of %d are incorrect.\n",
head->header_bytes);
continue;
}
if (count_lb_records(head) != head->table_entries) {
- fprintf(stderr, "Bad record count: %d.\n",
+ msg_perr("Bad record count: %d.\n",
head->table_entries);
continue;
}
if (compute_checksum((uint8_t *) head, sizeof(*head)) != 0) {
- fprintf(stderr, "Bad header checksum.\n");
+ msg_perr("Bad header checksum.\n");
continue;
}
if (compute_checksum(recs, head->table_bytes)
!= head->table_checksum) {
- fprintf(stderr, "Bad table checksum: %04x.\n",
+ msg_perr("Bad table checksum: %04x.\n",
head->table_checksum);
continue;
}
- printf_debug("Found coreboot table at 0x%08lx.\n", addr);
+ msg_pdbg("Found coreboot table at 0x%08lx.\n", addr);
return head;
};
@@ -150,7 +150,7 @@ static void find_mainboard(struct lb_record *ptr, unsigned long addr)
rec = (struct lb_mainboard *)ptr;
max_size = rec->size - sizeof(*rec);
- printf("Vendor ID: %.*s, part ID: %.*s\n",
+ msg_pdbg("Vendor ID: %.*s, part ID: %.*s\n",
max_size - rec->vendor_idx,
rec->strings + rec->vendor_idx,
max_size - rec->part_number_idx,
@@ -161,7 +161,7 @@ static void find_mainboard(struct lb_record *ptr, unsigned long addr)
rec->strings + rec->part_number_idx);
if (lb_part) {
- printf("Overwritten by command line, vendor ID: %s, part ID: %s.\n", lb_vendor, lb_part);
+ msg_pdbg("Overwritten by command line, vendor ID: %s, part ID: %s.\n", lb_vendor, lb_part);
} else {
partvendor_from_cbtable = 1;
lb_part = strdup(part);
@@ -235,16 +235,16 @@ int coreboot_init(void)
}
if (!lb_table) {
- printf("No coreboot table found.\n");
+ msg_pinfo("No coreboot table found.\n");
return -1;
}
addr = ((char *)lb_table) - ((char *)table_area) + start;
- fprintf(stdout, "coreboot table found at 0x%lx.\n",
+ msg_pinfo("coreboot table found at 0x%lx.\n",
(unsigned long)lb_table - (unsigned long)table_area + start);
rec = (struct lb_record *)(((char *)lb_table) + lb_table->header_bytes);
last = (struct lb_record *)(((char *)rec) + lb_table->table_bytes);
- printf_debug("coreboot header(%d) checksum: %04x table(%d) checksum: %04x entries: %d\n",
+ msg_pdbg("coreboot header(%d) checksum: %04x table(%d) checksum: %04x entries: %d\n",
lb_table->header_bytes, lb_table->header_checksum,
lb_table->table_bytes, lb_table->table_checksum,
lb_table->table_entries);
diff --git a/chipset_enable.c b/chipset_enable.c
index fc60484..69f1623 100644
--- a/chipset_enable.c
+++ b/chipset_enable.c
@@ -74,8 +74,8 @@ static int enable_flash_sis_mapping(struct pci_dev *dev, const char *name)
pci_write_byte(dev, 0x40, new);
newer = pci_read_byte(dev, 0x40);
if (newer != new) {
- printf_debug("tried to set register 0x%x to 0x%x on %s failed (WARNING ONLY)\n", 0x40, new, name);
- printf_debug("Stuck at 0x%x\n", newer);
+ msg_pinfo("tried to set register 0x%x to 0x%x on %s failed (WARNING ONLY)\n", 0x40, new, name);
+ msg_pinfo("Stuck at 0x%x\n", newer);
return -1;
}
return 0;
@@ -91,9 +91,9 @@ static struct pci_dev *find_southbridge(uint16_t vendor, const char *name)
if (!sbdev)
sbdev = pci_dev_find_vendorclass(vendor, 0x0000);
if (!sbdev)
- fprintf(stderr, "No southbridge found for %s!\n", name);
+ msg_perr("No southbridge found for %s!\n", name);
if (sbdev)
- printf_debug("Found southbridge %04x:%04x at %02x:%02x:%01x\n",
+ msg_pdbg("Found southbridge %04x:%04x at %02x:%02x:%01x\n",
sbdev->vendor_id, sbdev->device_id,
sbdev->bus, sbdev->dev, sbdev->func);
return sbdev;
@@ -162,8 +162,8 @@ static int enable_flash_sis530(struct pci_dev *dev, const char *name)
pci_write_byte(sbdev, 0x45, new);
newer = pci_read_byte(sbdev, 0x45);
if (newer != new) {
- printf_debug("tried to set register 0x%x to 0x%x on %s failed (WARNING ONLY)\n", 0x45, new, name);
- printf_debug("Stuck at 0x%x\n", newer);
+ msg_pinfo("tried to set register 0x%x to 0x%x on %s failed (WARNING ONLY)\n", 0x45, new, name);
+ msg_pinfo("Stuck at 0x%x\n", newer);
ret = -1;
}
@@ -188,8 +188,8 @@ static int enable_flash_sis540(struct pci_dev *dev, const char *name)
pci_write_byte(sbdev, 0x45, new);
newer = pci_read_byte(sbdev, 0x45);
if (newer != new) {
- printf_debug("tried to set register 0x%x to 0x%x on %s failed (WARNING ONLY)\n", 0x45, new, name);
- printf_debug("Stuck at 0x%x\n", newer);
+ msg_pinfo("tried to set register 0x%x to 0x%x on %s failed (WARNING ONLY)\n", 0x45, new, name);
+ msg_pinfo("Stuck at 0x%x\n", newer);
ret = -1;
}
@@ -235,7 +235,7 @@ static int enable_flash_piix4(struct pci_dev *dev, const char *name)
pci_write_word(dev, xbcs, new);
if (pci_read_word(dev, xbcs) != new) {
- printf_debug("tried to set 0x%x to 0x%x on %s failed (WARNING ONLY)\n", xbcs, new, name);
+ msg_pinfo("tried to set 0x%x to 0x%x on %s failed (WARNING ONLY)\n", xbcs, new, name);
return -1;
}
@@ -257,11 +257,11 @@ static int enable_flash_ich(struct pci_dev *dev, const char *name,
*/
old = pci_read_byte(dev, bios_cntl);
- printf_debug("\nBIOS Lock Enable: %sabled, ",
+ msg_pdbg("\nBIOS Lock Enable: %sabled, ",
(old & (1 << 1)) ? "en" : "dis");
- printf_debug("BIOS Write Enable: %sabled, ",
+ msg_pdbg("BIOS Write Enable: %sabled, ",
(old & (1 << 0)) ? "en" : "dis");
- printf_debug("BIOS_CNTL is 0x%x\n", old);
+ msg_pdbg("BIOS_CNTL is 0x%x\n", old);
new = old | 1;
@@ -271,7 +271,7 @@ static int enable_flash_ich(struct pci_dev *dev, const char *name,
pci_write_byte(dev, bios_cntl, new);
if (pci_read_byte(dev, bios_cntl) != new) {
- printf_debug("tried to set 0x%x to 0x%x on %s failed (WARNING ONLY)\n", bios_cntl, new, name);
+ msg_pinfo("tried to set 0x%x to 0x%x on %s failed (WARNING ONLY)\n", bios_cntl, new, name);
return -1;
}
@@ -306,7 +306,7 @@ static int enable_flash_ich_dc(struct pci_dev *dev, const char *name)
fwh_conf = (uint32_t)strtoul(idsel, NULL, 0);
/* FIXME: Need to undo this on shutdown. */
- printf("\nSetting IDSEL=0x%x for top 16 MB", fwh_conf);
+ msg_pinfo("\nSetting IDSEL=0x%x for top 16 MB", fwh_conf);
pci_write_long(dev, 0xd0, fwh_conf);
pci_write_word(dev, 0xd4, fwh_conf);
/* FIXME: Decode settings are not changed. */
@@ -321,7 +321,7 @@ static int enable_flash_ich_dc(struct pci_dev *dev, const char *name)
fwh_conf = pci_read_long(dev, 0xd0);
for (i = 7; i >= 0; i--) {
tmp = (fwh_conf >> (i * 4)) & 0xf;
- printf_debug("\n0x%08x/0x%08x FWH IDSEL: 0x%x",
+ msg_pdbg("\n0x%08x/0x%08x FWH IDSEL: 0x%x",
(0x1ff8 + i) * 0x80000,
(0x1ff0 + i) * 0x80000,
tmp);
@@ -335,7 +335,7 @@ static int enable_flash_ich_dc(struct pci_dev *dev, const char *name)
fwh_conf = pci_read_word(dev, 0xd4);
for (i = 3; i >= 0; i--) {
tmp = (fwh_conf >> (i * 4)) & 0xf;
- printf_debug("\n0x%08x/0x%08x FWH IDSEL: 0x%x",
+ msg_pdbg("\n0x%08x/0x%08x FWH IDSEL: 0x%x",
(0xff4 + i) * 0x100000,
(0xff0 + i) * 0x100000,
tmp);
@@ -350,7 +350,7 @@ static int enable_flash_ich_dc(struct pci_dev *dev, const char *name)
fwh_conf = pci_read_word(dev, 0xd8);
for (i = 7; i >= 0; i--) {
tmp = (fwh_conf >> (i + 0x8)) & 0x1;
- printf_debug("\n0x%08x/0x%08x FWH decode %sabled",
+ msg_pdbg("\n0x%08x/0x%08x FWH decode %sabled",
(0x1ff8 + i) * 0x80000,
(0x1ff0 + i) * 0x80000,
tmp ? "en" : "dis");
@@ -362,7 +362,7 @@ static int enable_flash_ich_dc(struct pci_dev *dev, const char *name)
}
for (i = 3; i >= 0; i--) {
tmp = (fwh_conf >> i) & 0x1;
- printf_debug("\n0x%08x/0x%08x FWH decode %sabled",
+ msg_pdbg("\n0x%08x/0x%08x FWH decode %sabled",
(0xff4 + i) * 0x100000,
(0xff0 + i) * 0x100000,
tmp ? "en" : "dis");
@@ -373,7 +373,7 @@ static int enable_flash_ich_dc(struct pci_dev *dev, const char *name)
}
}
max_rom_decode.fwh = min(max_decode_fwh_idsel, max_decode_fwh_decode);
- printf_debug("\nMaximum FWH chip size: 0x%x bytes", max_rom_decode.fwh);
+ msg_pdbg("\nMaximum FWH chip size: 0x%x bytes", max_rom_decode.fwh);
/* If we're called by enable_flash_ich_dc_spi, it will override
* buses_supported anyway.
@@ -391,7 +391,7 @@ static int enable_flash_poulsbo(struct pci_dev *dev, const char *name)
return err;
old = pci_read_byte(dev, 0xd9);
- printf_debug("BIOS Prefetch Enable: %sabled, ",
+ msg_pdbg("BIOS Prefetch Enable: %sabled, ",
(old & 1) ? "en" : "dis");
new = old & ~1;
@@ -413,10 +413,10 @@ static int enable_flash_vt8237s_spi(struct pci_dev *dev, const char *name)
/* Do we really need no write enable? */
mmio_base = (pci_read_long(dev, 0xbc)) << 8;
- printf_debug("MMIO base at = 0x%x\n", mmio_base);
+ msg_pdbg("MMIO base at = 0x%x\n", mmio_base);
spibar = physmap("VT8237S MMIO registers", mmio_base, 0x70);
- printf_debug("0x6c: 0x%04x (CLOCK/DEBUG)\n",
+ msg_pdbg("0x6c: 0x%04x (CLOCK/DEBUG)\n",
mmio_readw(spibar + 0x6c));
/* Not sure if it speaks all these bus protocols. */
@@ -444,20 +444,20 @@ static int enable_flash_ich_dc_spi(struct pci_dev *dev, const char *name,
/* Get physical address of Root Complex Register Block */
tmp = pci_read_long(dev, 0xf0) & 0xffffc000;
- printf_debug("\nRoot Complex Register Block address = 0x%x\n", tmp);
+ msg_pdbg("\nRoot Complex Register Block address = 0x%x\n", tmp);
/* Map RCBA to virtual memory */
rcrb = physmap("ICH RCRB", tmp, 0x4000);
gcs = mmio_readl(rcrb + 0x3410);
- printf_debug("GCS = 0x%x: ", gcs);
- printf_debug("BIOS Interface Lock-Down: %sabled, ",
+ msg_pdbg("GCS = 0x%x: ", gcs);
+ msg_pdbg("BIOS Interface Lock-Down: %sabled, ",
(gcs & 0x1) ? "en" : "dis");
bbs = (gcs >> 10) & 0x3;
- printf_debug("BOOT BIOS Straps: 0x%x (%s)\n", bbs, straps_names[bbs]);
+ msg_pdbg("BOOT BIOS Straps: 0x%x (%s)\n", bbs, straps_names[bbs]);
buc = mmio_readb(rcrb + 0x3414);
- printf_debug("Top Swap : %s\n",
+ msg_pdbg("Top Swap : %s\n",
(buc & 1) ? "enabled (A16 inverted)" : "not enabled");
/* It seems the ICH7 does not support SPI and LPC chips at the same
@@ -492,105 +492,105 @@ static int enable_flash_ich_dc_spi(struct pci_dev *dev, const char *name,
}
/* SPIBAR is at RCRB+0x3020 for ICH[78] and RCRB+0x3800 for ICH9. */
- printf_debug("SPIBAR = 0x%x + 0x%04x\n", tmp, spibar_offset);
+ msg_pdbg("SPIBAR = 0x%x + 0x%04x\n", tmp, spibar_offset);
/* Assign Virtual Address */
spibar = rcrb + spibar_offset;
switch (spi_controller) {
case SPI_CONTROLLER_ICH7:
- printf_debug("0x00: 0x%04x (SPIS)\n",
+ msg_pdbg("0x00: 0x%04x (SPIS)\n",
mmio_readw(spibar + 0));
- printf_debug("0x02: 0x%04x (SPIC)\n",
+ msg_pdbg("0x02: 0x%04x (SPIC)\n",
mmio_readw(spibar + 2));
- printf_debug("0x04: 0x%08x (SPIA)\n",
+ msg_pdbg("0x04: 0x%08x (SPIA)\n",
mmio_readl(spibar + 4));
for (i = 0; i < 8; i++) {
int offs;
offs = 8 + (i * 8);
- printf_debug("0x%02x: 0x%08x (SPID%d)\n", offs,
+ msg_pdbg("0x%02x: 0x%08x (SPID%d)\n", offs,
mmio_readl(spibar + offs), i);
- printf_debug("0x%02x: 0x%08x (SPID%d+4)\n", offs + 4,
+ msg_pdbg("0x%02x: 0x%08x (SPID%d+4)\n", offs + 4,
mmio_readl(spibar + offs + 4), i);
}
- printf_debug("0x50: 0x%08x (BBAR)\n",
+ msg_pdbg("0x50: 0x%08x (BBAR)\n",
mmio_readl(spibar + 0x50));
- printf_debug("0x54: 0x%04x (PREOP)\n",
+ msg_pdbg("0x54: 0x%04x (PREOP)\n",
mmio_readw(spibar + 0x54));
- printf_debug("0x56: 0x%04x (OPTYPE)\n",
+ msg_pdbg("0x56: 0x%04x (OPTYPE)\n",
mmio_readw(spibar + 0x56));
- printf_debug("0x58: 0x%08x (OPMENU)\n",
+ msg_pdbg("0x58: 0x%08x (OPMENU)\n",
mmio_readl(spibar + 0x58));
- printf_debug("0x5c: 0x%08x (OPMENU+4)\n",
+ msg_pdbg("0x5c: 0x%08x (OPMENU+4)\n",
mmio_readl(spibar + 0x5c));
for (i = 0; i < 4; i++) {
int offs;
offs = 0x60 + (i * 4);
- printf_debug("0x%02x: 0x%08x (PBR%d)\n", offs,
+ msg_pdbg("0x%02x: 0x%08x (PBR%d)\n", offs,
mmio_readl(spibar + offs), i);
}
- printf_debug("\n");
+ msg_pdbg("\n");
if (mmio_readw(spibar) & (1 << 15)) {
- printf("WARNING: SPI Configuration Lockdown activated.\n");
+ msg_pinfo("WARNING: SPI Configuration Lockdown activated.\n");
ichspi_lock = 1;
}
ich_init_opcodes();
break;
case SPI_CONTROLLER_ICH9:
tmp2 = mmio_readw(spibar + 4);
- printf_debug("0x04: 0x%04x (HSFS)\n", tmp2);
- printf_debug("FLOCKDN %i, ", (tmp2 >> 15 & 1));
- printf_debug("FDV %i, ", (tmp2 >> 14) & 1);
- printf_debug("FDOPSS %i, ", (tmp2 >> 13) & 1);
- printf_debug("SCIP %i, ", (tmp2 >> 5) & 1);
- printf_debug("BERASE %i, ", (tmp2 >> 3) & 3);
- printf_debug("AEL %i, ", (tmp2 >> 2) & 1);
- printf_debug("FCERR %i, ", (tmp2 >> 1) & 1);
- printf_debug("FDONE %i\n", (tmp2 >> 0) & 1);
+ msg_pdbg("0x04: 0x%04x (HSFS)\n", tmp2);
+ msg_pdbg("FLOCKDN %i, ", (tmp2 >> 15 & 1));
+ msg_pdbg("FDV %i, ", (tmp2 >> 14) & 1);
+ msg_pdbg("FDOPSS %i, ", (tmp2 >> 13) & 1);
+ msg_pdbg("SCIP %i, ", (tmp2 >> 5) & 1);
+ msg_pdbg("BERASE %i, ", (tmp2 >> 3) & 3);
+ msg_pdbg("AEL %i, ", (tmp2 >> 2) & 1);
+ msg_pdbg("FCERR %i, ", (tmp2 >> 1) & 1);
+ msg_pdbg("FDONE %i\n", (tmp2 >> 0) & 1);
tmp = mmio_readl(spibar + 0x50);
- printf_debug("0x50: 0x%08x (FRAP)\n", tmp);
- printf_debug("BMWAG %i, ", (tmp >> 24) & 0xff);
- printf_debug("BMRAG %i, ", (tmp >> 16) & 0xff);
- printf_debug("BRWA %i, ", (tmp >> 8) & 0xff);
- printf_debug("BRRA %i\n", (tmp >> 0) & 0xff);
+ msg_pdbg("0x50: 0x%08x (FRAP)\n", tmp);
+ msg_pdbg("BMWAG %i, ", (tmp >> 24) & 0xff);
+ msg_pdbg("BMRAG %i, ", (tmp >> 16) & 0xff);
+ msg_pdbg("BRWA %i, ", (tmp >> 8) & 0xff);
+ msg_pdbg("BRRA %i\n", (tmp >> 0) & 0xff);
- printf_debug("0x54: 0x%08x (FREG0)\n",
+ msg_pdbg("0x54: 0x%08x (FREG0)\n",
mmio_readl(spibar + 0x54));
- printf_debug("0x58: 0x%08x (FREG1)\n",
+ msg_pdbg("0x58: 0x%08x (FREG1)\n",
mmio_readl(spibar + 0x58));
- printf_debug("0x5C: 0x%08x (FREG2)\n",
+ msg_pdbg("0x5C: 0x%08x (FREG2)\n",
mmio_readl(spibar + 0x5C));
- printf_debug("0x60: 0x%08x (FREG3)\n",
+ msg_pdbg("0x60: 0x%08x (FREG3)\n",
mmio_readl(spibar + 0x60));
- printf_debug("0x64: 0x%08x (FREG4)\n",
+ msg_pdbg("0x64: 0x%08x (FREG4)\n",
mmio_readl(spibar + 0x64));
- printf_debug("0x74: 0x%08x (PR0)\n",
+ msg_pdbg("0x74: 0x%08x (PR0)\n",
mmio_readl(spibar + 0x74));
- printf_debug("0x78: 0x%08x (PR1)\n",
+ msg_pdbg("0x78: 0x%08x (PR1)\n",
mmio_readl(spibar + 0x78));
- printf_debug("0x7C: 0x%08x (PR2)\n",
+ msg_pdbg("0x7C: 0x%08x (PR2)\n",
mmio_readl(spibar + 0x7C));
- printf_debug("0x80: 0x%08x (PR3)\n",
+ msg_pdbg("0x80: 0x%08x (PR3)\n",
mmio_readl(spibar + 0x80));
- printf_debug("0x84: 0x%08x (PR4)\n",
+ msg_pdbg("0x84: 0x%08x (PR4)\n",
mmio_readl(spibar + 0x84));
- printf_debug("0x90: 0x%08x (SSFS, SSFC)\n",
+ msg_pdbg("0x90: 0x%08x (SSFS, SSFC)\n",
mmio_readl(spibar + 0x90));
- printf_debug("0x94: 0x%04x (PREOP)\n",
+ msg_pdbg("0x94: 0x%04x (PREOP)\n",
mmio_readw(spibar + 0x94));
- printf_debug("0x96: 0x%04x (OPTYPE)\n",
+ msg_pdbg("0x96: 0x%04x (OPTYPE)\n",
mmio_readw(spibar + 0x96));
- printf_debug("0x98: 0x%08x (OPMENU)\n",
+ msg_pdbg("0x98: 0x%08x (OPMENU)\n",
mmio_readl(spibar + 0x98));
- printf_debug("0x9C: 0x%08x (OPMENU+4)\n",
+ msg_pdbg("0x9C: 0x%08x (OPMENU+4)\n",
mmio_readl(spibar + 0x9C));
- printf_debug("0xA0: 0x%08x (BBAR)\n",
+ msg_pdbg("0xA0: 0x%08x (BBAR)\n",
mmio_readl(spibar + 0xA0));
- printf_debug("0xB0: 0x%08x (FDOC)\n",
+ msg_pdbg("0xB0: 0x%08x (FDOC)\n",
mmio_readl(spibar + 0xB0));
if (tmp2 & (1 << 15)) {
- printf("WARNING: SPI Configuration Lockdown activated.\n");
+ msg_pinfo("WARNING: SPI Configuration Lockdown activated.\n");
ichspi_lock = 1;
}
ich_init_opcodes();
@@ -601,18 +601,18 @@ static int enable_flash_ich_dc_spi(struct pci_dev *dev, const char *name,
}
old = pci_read_byte(dev, 0xdc);
- printf_debug("SPI Read Configuration: ");
+ msg_pdbg("SPI Read Configuration: ");
new = (old >> 2) & 0x3;
switch (new) {
case 0:
case 1:
case 2:
- printf_debug("prefetching %sabled, caching %sabled, ",
+ msg_pdbg("prefetching %sabled, caching %sabled, ",
(new & 0x2) ? "en" : "dis",
(new & 0x1) ? "dis" : "en");
break;
default:
- printf_debug("invalid prefetching/caching settings, ");
+ msg_pdbg("invalid prefetching/caching settings, ");
break;
}
@@ -652,7 +652,7 @@ static int enable_flash_vt823x(struct pci_dev *dev, const char *name)
pci_write_byte(dev, 0x40, val);
if (pci_read_byte(dev, 0x40) != val) {
- printf("\nWARNING: Failed to enable flash write on \"%s\"\n",
+ msg_pinfo("\nWARNING: Failed to enable flash write on \"%s\"\n",
name);
return -1;
}
@@ -769,7 +769,7 @@ static int enable_flash_sc1100(struct pci_dev *dev, const char *name)
new = pci_read_byte(dev, 0x52);
if (new != 0xee) {
- printf_debug("tried to set register 0x%x to 0x%x on %s failed (WARNING ONLY)\n", 0x52, new, name);
+ msg_pinfo("tried to set register 0x%x to 0x%x on %s failed (WARNING ONLY)\n", 0x52, new, name);
return -1;
}
@@ -787,7 +787,7 @@ static int enable_flash_amd8111(struct pci_dev *dev, const char *name)
if (new != old) {
pci_write_byte(dev, 0x43, new);
if (pci_read_byte(dev, 0x43) != new) {
- printf_debug("tried to set 0x%x to 0x%x on %s failed (WARNING ONLY)\n", 0x43, new, name);
+ msg_pinfo("tried to set 0x%x to 0x%x on %s failed (WARNING ONLY)\n", 0x43, new, name);
}
}
@@ -799,7 +799,7 @@ static int enable_flash_amd8111(struct pci_dev *dev, const char *name)
pci_write_byte(dev, 0x40, new);
if (pci_read_byte(dev, 0x40) != new) {
- printf_debug("tried to set 0x%x to 0x%x on %s failed (WARNING ONLY)\n", 0x40, new, name);
+ msg_pinfo("tried to set 0x%x to 0x%x on %s failed (WARNING ONLY)\n", 0x40, new, name);
return -1;
}
@@ -819,7 +819,7 @@ static int enable_flash_sb600(struct pci_dev *dev, const char *name)
/* No protection flags for this region?*/
if ((prot & 0x3) == 0)
continue;
- printf_debug("SB600 %s%sprotected from %u to %u\n",
+ msg_pinfo("SB600 %s%sprotected from %u to %u\n",
(prot & 0x1) ? "write " : "",
(prot & 0x2) ? "read " : "",
(prot & 0xfffffc00),
@@ -828,7 +828,7 @@ static int enable_flash_sb600(struct pci_dev *dev, const char *name)
pci_write_byte(dev, reg, prot);
prot = pci_read_long(dev, reg);
if (prot & 0x3)
- printf("SB600 %s%sunprotect failed from %u to %u\n",
+ msg_perr("SB600 %s%sunprotect failed from %u to %u\n",
(prot & 0x1) ? "write " : "",
(prot & 0x2) ? "read " : "",
(prot & 0xfffffc00),
@@ -838,7 +838,7 @@ static int enable_flash_sb600(struct pci_dev *dev, const char *name)
/* Read SPI_BaseAddr */
tmp = pci_read_long(dev, 0xa0);
tmp &= 0xffffffe0; /* remove bits 4-0 (reserved) */
- printf_debug("SPI base address is at 0x%x\n", tmp);
+ msg_pdbg("SPI base address is at 0x%x\n", tmp);
/* If the BAR has address 0, it is unlikely SPI is used. */
if (!tmp)
@@ -854,17 +854,17 @@ static int enable_flash_sb600(struct pci_dev *dev, const char *name)
sb600_spibar += tmp & 0xfff;
tmp = pci_read_long(dev, 0xa0);
- printf_debug("AltSpiCSEnable=%i, SpiRomEnable=%i, "
+ msg_pdbg("AltSpiCSEnable=%i, SpiRomEnable=%i, "
"AbortEnable=%i\n", tmp & 0x1, (tmp & 0x2) >> 1,
(tmp & 0x4) >> 2);
tmp = (pci_read_byte(dev, 0xba) & 0x4) >> 2;
- printf_debug("PrefetchEnSPIFromIMC=%i, ", tmp);
+ msg_pdbg("PrefetchEnSPIFromIMC=%i, ", tmp);
tmp = pci_read_byte(dev, 0xbb);
- printf_debug("PrefetchEnSPIFromHost=%i, SpiOpEnInLpcMode=%i\n",
+ msg_pdbg("PrefetchEnSPIFromHost=%i, SpiOpEnInLpcMode=%i\n",
tmp & 0x1, (tmp & 0x20) >> 5);
tmp = mmio_readl(sb600_spibar);
- printf_debug("SpiArbEnable=%i, SpiAccessMacRomEn=%i, "
+ msg_pdbg("SpiArbEnable=%i, SpiAccessMacRomEn=%i, "
"SpiHostAccessRomEn=%i, ArbWaitCount=%i, "
"SpiBridgeDisable=%i, DropOneClkOnRd=%i\n",
(tmp >> 19) & 0x1, (tmp >> 22) & 0x1,
@@ -876,7 +876,7 @@ static int enable_flash_sb600(struct pci_dev *dev, const char *name)
smbus_dev = pci_dev_find(0x1002, 0x4385);
if (has_spi && !smbus_dev) {
- fprintf(stderr, "ERROR: SMBus device not found. Not enabling SPI.\n");
+ msg_perr("ERROR: SMBus device not found. Not enabling SPI.\n");
has_spi = 0;
}
if (has_spi) {
@@ -884,22 +884,22 @@ static int enable_flash_sb600(struct pci_dev *dev, const char *name)
/* GPIO11/SPI_DO and GPIO12/SPI_DI status */
reg = pci_read_byte(smbus_dev, 0xAB);
reg &= 0xC0;
- printf_debug("GPIO11 used for %s\n", (reg & (1 << 6)) ? "GPIO" : "SPI_DO");
- printf_debug("GPIO12 used for %s\n", (reg & (1 << 7)) ? "GPIO" : "SPI_DI");
+ msg_pdbg("GPIO11 used for %s\n", (reg & (1 << 6)) ? "GPIO" : "SPI_DO");
+ msg_pdbg("GPIO12 used for %s\n", (reg & (1 << 7)) ? "GPIO" : "SPI_DI");
if (reg != 0x00)
has_spi = 0;
/* GPIO31/SPI_HOLD and GPIO32/SPI_CS status */
reg = pci_read_byte(smbus_dev, 0x83);
reg &= 0xC0;
- printf_debug("GPIO31 used for %s\n", (reg & (1 << 6)) ? "GPIO" : "SPI_HOLD");
- printf_debug("GPIO32 used for %s\n", (reg & (1 << 7)) ? "GPIO" : "SPI_CS");
+ msg_pdbg("GPIO31 used for %s\n", (reg & (1 << 6)) ? "GPIO" : "SPI_HOLD");
+ msg_pdbg("GPIO32 used for %s\n", (reg & (1 << 7)) ? "GPIO" : "SPI_CS");
/* SPI_HOLD is not used on all boards, filter it out. */
if ((reg & 0x80) != 0x00)
has_spi = 0;
/* GPIO47/SPI_CLK status */
reg = pci_read_byte(smbus_dev, 0xA7);
reg &= 0x40;
- printf_debug("GPIO47 used for %s\n", (reg & (1 << 6)) ? "GPIO" : "SPI_CLK");
+ msg_pdbg("GPIO47 used for %s\n", (reg & (1 << 6)) ? "GPIO" : "SPI_CLK");
if (reg != 0x00)
has_spi = 0;
}
@@ -914,24 +914,24 @@ static int enable_flash_sb600(struct pci_dev *dev, const char *name)
OUTB(0x8f, 0xcd6);
reg = INB(0xcd7);
reg &= 0x0e;
- printf_debug("ROM strap override is %sactive", (reg & 0x02) ? "" : "not ");
+ msg_pdbg("ROM strap override is %sactive", (reg & 0x02) ? "" : "not ");
if (reg & 0x02) {
switch ((reg & 0x0c) >> 2) {
case 0x00:
- printf_debug(": LPC");
+ msg_pdbg(": LPC");
break;
case 0x01:
- printf_debug(": PCI");
+ msg_pdbg(": PCI");
break;
case 0x02:
- printf_debug(": FWH");
+ msg_pdbg(": FWH");
break;
case 0x03:
- printf_debug(": SPI");
+ msg_pdbg(": SPI");
break;
}
}
- printf_debug("\n");
+ msg_pdbg("\n");
/* Force enable SPI ROM in SB600 PM register.
* If we enable SPI ROM here, we have to disable it after we leave.
@@ -970,7 +970,7 @@ static int enable_flash_ck804(struct pci_dev *dev, const char *name)
if (new != old) {
pci_write_byte(dev, 0x88, new);
if (pci_read_byte(dev, 0x88) != new) {
- printf_debug("tried to set 0x%x to 0x%x on %s failed (WARNING ONLY)\n", 0x88, new, name);
+ msg_pinfo("tried to set 0x%x to 0x%x on %s failed (WARNING ONLY)\n", 0x88, new, name);
}
}
@@ -981,7 +981,7 @@ static int enable_flash_ck804(struct pci_dev *dev, const char *name)
pci_write_byte(dev, 0x6d, new);
if (pci_read_byte(dev, 0x6d) != new) {
- printf_debug("tried to set 0x%x to 0x%x on %s failed (WARNING ONLY)\n", 0x6d, new, name);
+ msg_pinfo("tried to set 0x%x to 0x%x on %s failed (WARNING ONLY)\n", 0x6d, new, name);
return -1;
}
@@ -998,7 +998,7 @@ static int enable_flash_sb400(struct pci_dev *dev, const char *name)
smbusdev = pci_dev_find(0x1002, 0x4372);
if (!smbusdev) {
- fprintf(stderr, "ERROR: SMBus device not found. Aborting.\n");
+ msg_perr("ERROR: SMBus device not found. Aborting.\n");
exit(1);
}
@@ -1047,7 +1047,7 @@ static int enable_flash_mcp55(struct pci_dev *dev, const char *name)
pci_write_byte(dev, 0x6d, new);
if (pci_read_byte(dev, 0x6d) != new) {
- printf_debug("tried to set 0x%x to 0x%x on %s failed (WARNING ONLY)\n", 0x6d, new, name);
+ msg_pinfo("tried to set 0x%x to 0x%x on %s failed (WARNING ONLY)\n", 0x6d, new, name);
return -1;
}
@@ -1277,7 +1277,7 @@ static int get_flashbase_sc520(struct pci_dev *dev, const char *name)
flashbase = parx << 12;
}
} else {
- printf("AMD Elan SC520 detected, but no BOOTCS. Assuming flash at 4G\n");
+ msg_pinfo("AMD Elan SC520 detected, but no BOOTCS. Assuming flash at 4G\n");
}
/* 4. Clean up */
@@ -1436,18 +1436,18 @@ int chipset_flash_enable(void)
}
if (dev) {
- printf("Found chipset \"%s %s\", enabling flash write... ",
+ msg_pinfo("Found chipset \"%s %s\", enabling flash write... ",
chipset_enables[i].vendor_name,
chipset_enables[i].device_name);
ret = chipset_enables[i].doit(dev,
chipset_enables[i].device_name);
if (ret)
- printf("FAILED!\n");
+ msg_pinfo("FAILED!\n");
else
- printf("OK.\n");
+ msg_pinfo("OK.\n");
}
- printf("This chipset supports the following protocols: %s.\n",
+ msg_pinfo("This chipset supports the following protocols: %s.\n",
flashbuses_to_text(buses_supported));
return ret;
diff --git a/dmi.c b/dmi.c
index 4bda4e7..cde11a5 100644
--- a/dmi.c
+++ b/dmi.c
@@ -53,12 +53,12 @@ static char *get_dmi_string(const char *string_name)
"%s -s %s", dmidecode_command, string_name);
dmidecode_pipe = popen(commandline, "r");
if (!dmidecode_pipe) {
- printf_debug("DMI pipe open error\n");
+ msg_perr("DMI pipe open error\n");
return NULL;
}
if (!fgets(answerbuf, DMI_MAX_ANSWER_LEN, dmidecode_pipe)) {
if(ferror(dmidecode_pipe)) {
- printf_debug("DMI pipe read error\n");
+ msg_perr("DMI pipe read error\n");
pclose(dmidecode_pipe);
return NULL;
} else {
@@ -70,7 +70,8 @@ static char *get_dmi_string(const char *string_name)
while (!feof(dmidecode_pipe))
getc(dmidecode_pipe);
if (pclose(dmidecode_pipe) != 0) {
- printf_debug("DMI pipe close error\n");
+ msg_pinfo("dmidecode execution unsucessfull - continuing "
+ "without DMI info\n");
return NULL;
}
@@ -78,7 +79,7 @@ static char *get_dmi_string(const char *string_name)
if (answerbuf[0] != 0 &&
answerbuf[strlen(answerbuf) - 1] == '\n')
answerbuf[strlen(answerbuf) - 1] = 0;
- printf_debug("DMI string %s: \"%s\"\n", string_name, answerbuf);
+ msg_pdbg("DMI string %s: \"%s\"\n", string_name, answerbuf);
result = strdup(answerbuf);
if (!result)
@@ -104,7 +105,7 @@ void dmi_init(void)
chassis_type = get_dmi_string("chassis-type");
if (chassis_type && (!strcmp(chassis_type, "Notebook") ||
!strcmp(chassis_type, "Portable"))) {
- printf_debug("Laptop detected via DMI\n");
+ msg_pdbg("Laptop detected via DMI\n");
is_laptop = 1;
}
free(chassis_type);
@@ -126,7 +127,7 @@ static int dmi_compare(const char *value, const char *pattern)
int anchored = 0;
int patternlen;
- printf_debug("matching %s against %s\n", value, pattern);
+ msg_pspew("matching %s against %s\n", value, pattern);
/* The empty string is part of all strings! */
if (pattern[0] == 0)
return 1;
diff --git a/flashrom.c b/flashrom.c
index 77a6042..c302271 100644
--- a/flashrom.c
+++ b/flashrom.c
@@ -520,7 +520,7 @@ char *extract_param(char **haystack, char *needle, char *delim)
if (devlen) {
dev = malloc(devlen + 1);
if (!dev) {
- fprintf(stderr, "Out of memory!\n");
+ msg_gerr("Out of memory!\n");
exit(1);
}
strncpy(dev, param_pos, devlen);
@@ -532,7 +532,7 @@ char *extract_param(char **haystack, char *needle, char *delim)
memmove(param_pos, rest, strlen(rest) + 1);
tmp = realloc(*haystack, strlen(*haystack) + 1);
if (!tmp) {
- fprintf(stderr, "Out of memory!\n");
+ msg_gerr("Out of memory!\n");
exit(1);
}
*haystack = tmp;
@@ -549,7 +549,7 @@ int check_erased_range(struct flashchip *flash, int start, int len)
uint8_t *cmpbuf = malloc(len);
if (!cmpbuf) {
- fprintf(stderr, "Could not allocate memory!\n");
+ msg_gerr("Could not allocate memory!\n");
exit(1);
}
memset(cmpbuf, 0xff, len);
@@ -577,16 +577,16 @@ int verify_range(struct flashchip *flash, uint8_t *cmpbuf, int start, int len, c
goto out_free;
if (!flash->read) {
- fprintf(stderr, "ERROR: flashrom has no read function for this flash chip.\n");
+ msg_cerr("ERROR: flashrom has no read function for this flash chip.\n");
return 1;
}
if (!readbuf) {
- fprintf(stderr, "Could not allocate memory!\n");
+ msg_gerr("Could not allocate memory!\n");
exit(1);
}
if (start + len > flash->total_size * 1024) {
- fprintf(stderr, "Error: %s called with start 0x%x + len 0x%x >"
+ msg_gerr("Error: %s called with start 0x%x + len 0x%x >"
" total_size 0x%x\n", __func__, start, len,
flash->total_size * 1024);
ret = -1;
@@ -614,7 +614,7 @@ int verify_range(struct flashchip *flash, uint8_t *cmpbuf, int start, int len, c
if (cmpbuf[starthere - start + j] != readbuf[j]) {
/* Only print the first failure. */
if (!failcount++)
- fprintf(stderr, "%s FAILED at 0x%08x! "
+ msg_cerr("%s FAILED at 0x%08x! "
"Expected=0x%02x, Read=0x%02x,",
message, starthere + j,
cmpbuf[starthere - start + j],
@@ -623,7 +623,7 @@ int verify_range(struct flashchip *flash, uint8_t *cmpbuf, int start, int len, c
}
}
if (failcount) {
- fprintf(stderr, " failed byte count from 0x%08x-0x%08x: 0x%x\n",
+ msg_cerr(" failed byte count from 0x%08x-0x%08x: 0x%x\n",
start, start + len - 1, failcount);
ret = -1;
}
@@ -748,7 +748,7 @@ int generate_testpattern(uint8_t *buf, uint32_t size, int variant)
int i;
if (!buf) {
- fprintf(stderr, "Invalid buffer!\n");
+ msg_gerr("Invalid buffer!\n");
return 1;
}
@@ -836,7 +836,7 @@ int check_max_decode(enum chipbustype buses, uint32_t size)
if ((buses & CHIP_BUSTYPE_PARALLEL) &&
(max_rom_decode.parallel < size)) {
limitexceeded++;
- printf_debug("Chip size %u kB is bigger than supported "
+ msg_pdbg("Chip size %u kB is bigger than supported "
"size %u kB of chipset/board/programmer "
"for %s interface, "
"probe/read/erase/write may fail. ", size / 1024,
@@ -844,7 +844,7 @@ int check_max_decode(enum chipbustype buses, uint32_t size)
}
if ((buses & CHIP_BUSTYPE_LPC) && (max_rom_decode.lpc < size)) {
limitexceeded++;
- printf_debug("Chip size %u kB is bigger than supported "
+ msg_pdbg("Chip size %u kB is bigger than supported "
"size %u kB of chipset/board/programmer "
"for %s interface, "
"probe/read/erase/write may fail. ", size / 1024,
@@ -852,7 +852,7 @@ int check_max_decode(enum chipbustype buses, uint32_t size)
}
if ((buses & CHIP_BUSTYPE_FWH) && (max_rom_decode.fwh < size)) {
limitexceeded++;
- printf_debug("Chip size %u kB is bigger than supported "
+ msg_pdbg("Chip size %u kB is bigger than supported "
"size %u kB of chipset/board/programmer "
"for %s interface, "
"probe/read/erase/write may fail. ", size / 1024,
@@ -860,7 +860,7 @@ int check_max_decode(enum chipbustype buses, uint32_t size)
}
if ((buses & CHIP_BUSTYPE_SPI) && (max_rom_decode.spi < size)) {
limitexceeded++;
- printf_debug("Chip size %u kB is bigger than supported "
+ msg_pdbg("Chip size %u kB is bigger than supported "
"size %u kB of chipset/board/programmer "
"for %s interface, "
"probe/read/erase/write may fail. ", size / 1024,
@@ -873,7 +873,7 @@ int check_max_decode(enum chipbustype buses, uint32_t size)
*/
if (bitcount(buses) > limitexceeded)
/* FIXME: This message is designed towards CLI users. */
- printf_debug("There is at least one common chip/programmer "
+ msg_pdbg("There is at least one common chip/programmer "
"interface which can support a chip of this size. "
"You can try --force at your own risk.\n");
return 1;
@@ -934,7 +934,7 @@ notfound:
if (!flash || !flash->name)
return NULL;
- printf("%s chip \"%s %s\" (%d KB, %s) at physical address 0x%lx.\n",
+ msg_cinfo("%s chip \"%s %s\" (%d KB, %s) at physical address 0x%lx.\n",
force ? "Assuming" : "Found",
flash->vendor, flash->name, flash->total_size,
flashbuses_to_text(flash->bustype), base);
@@ -950,12 +950,12 @@ int verify_flash(struct flashchip *flash, uint8_t *buf)
int ret;
int total_size = flash->total_size * 1024;
- printf("Verifying flash... ");
+ msg_cinfo("Verifying flash... ");
ret = verify_range(flash, buf, 0, total_size, NULL);
if (!ret)
- printf("VERIFIED. \n");
+ msg_cinfo("VERIFIED. \n");
return ret;
}
@@ -968,17 +968,17 @@ int read_flash(struct flashchip *flash, char *filename)
unsigned char *buf = calloc(size, sizeof(char));
if (!filename) {
- printf("Error: No filename specified.\n");
+ msg_gerr("Error: No filename specified.\n");
return 1;
}
if ((image = fopen(filename, "wb")) == NULL) {
perror(filename);
exit(1);
}
- printf("Reading flash... ");
+ msg_cinfo("Reading flash... ");
if (!flash->read) {
- printf("FAILED!\n");
- fprintf(stderr, "ERROR: flashrom has no read function for this flash chip.\n");
+ msg_cinfo("FAILED!\n");
+ msg_cerr("ERROR: flashrom has no read function for this flash chip.\n");
return 1;
} else
flash->read(flash, buf, 0, size);
@@ -986,7 +986,7 @@ int read_flash(struct flashchip *flash, char *filename)
numbytes = fwrite(buf, 1, size, image);
fclose(image);
free(buf);
- printf("%s.\n", numbytes == size ? "done" : "FAILED");
+ msg_cinfo("%s.\n", numbytes == size ? "done" : "FAILED");
if (numbytes != size)
return 1;
return 0;
@@ -1028,7 +1028,7 @@ int selfcheck_eraseblocks(struct flashchip *flash)
}
/* Empty eraseblock definition with erase function. */
if (!done && eraser.block_erase)
- msg_pspew("Strange: Empty eraseblock definition with "
+ msg_gspew("Strange: Empty eraseblock definition with "
"non-empty erase function. Not an error.\n");
if (!done)
continue;
@@ -1065,31 +1065,31 @@ int erase_flash(struct flashchip *flash)
int i, j, k, ret = 0, found = 0;
unsigned int start, len;
- printf("Erasing flash chip... ");
+ msg_cinfo("Erasing flash chip... ");
for (k = 0; k < NUM_ERASEFUNCTIONS; k++) {
unsigned int done = 0;
struct block_eraser eraser = flash->block_erasers[k];
- printf_debug("Looking at blockwise erase function %i... ", k);
+ msg_cdbg("Looking at blockwise erase function %i... ", k);
if (!eraser.block_erase && !eraser.eraseblocks[0].count) {
- printf_debug("not defined. "
+ msg_cdbg("not defined. "
"Looking for another erase function.\n");
continue;
}
if (!eraser.block_erase && eraser.eraseblocks[0].count) {
- printf_debug("eraseblock layout is known, but no "
+ msg_cdbg("eraseblock layout is known, but no "
"matching block erase function found. "
"Looking for another erase function.\n");
continue;
}
if (eraser.block_erase && !eraser.eraseblocks[0].count) {
- printf_debug("block erase function found, but "
+ msg_cdbg("block erase function found, but "
"eraseblock layout is unknown. "
"Looking for another erase function.\n");
continue;
}
found = 1;
- printf_debug("trying... ");
+ msg_cdbg("trying... ");
for (i = 0; i < NUM_ERASEREGIONS; i++) {
/* count==0 for all automatically initialized array
* members so the loop below won't be executed for them.
@@ -1097,7 +1097,7 @@ int erase_flash(struct flashchip *flash)
for (j = 0; j < eraser.eraseblocks[i].count; j++) {
start = done + eraser.eraseblocks[i].size * j;
len = eraser.eraseblocks[i].size;
- printf_debug("0x%06x-0x%06x, ", start,
+ msg_cdbg("0x%06x-0x%06x, ", start,
start + len - 1);
ret = eraser.block_erase(flash, start, len);
if (ret)
@@ -1108,27 +1108,27 @@ int erase_flash(struct flashchip *flash)
done += eraser.eraseblocks[i].count *
eraser.eraseblocks[i].size;
}
- printf_debug("\n");
+ msg_cdbg("\n");
/* If everything is OK, don't try another erase function. */
if (!ret)
break;
}
if (!found) {
- fprintf(stderr, "ERROR: flashrom has no erase function for this flash chip.\n");
+ msg_cerr("ERROR: flashrom has no erase function for this flash chip.\n");
return 1;
}
if (ret) {
- fprintf(stderr, "FAILED!\n");
+ msg_cerr("FAILED!\n");
} else {
- printf("SUCCESS.\n");
+ msg_cinfo("SUCCESS.\n");
}
return ret;
}
void emergency_help_message(void)
{
- fprintf(stderr, "Your flash chip is in an unknown state.\n"
+ msg_gerr("Your flash chip is in an unknown state.\n"
"Get help on IRC at irc.freenode.net (channel #flashrom) or\n"
"mail flashrom@flashrom.org!\n--------------------"
"-----------------------------------------------------------\n"
@@ -1140,11 +1140,11 @@ void list_programmers(char *delim)
{
enum programmer p;
for (p = 0; p < PROGRAMMER_INVALID; p++) {
- printf("%s", programmer_table[p].name);
+ msg_ginfo("%s", programmer_table[p].name);
if (p < PROGRAMMER_INVALID - 1)
- printf("%s", delim);
+ msg_ginfo("%s", delim);
}
- printf("\n");
+ msg_ginfo("\n");
}
void print_sysinfo(void)
@@ -1183,7 +1183,7 @@ void print_sysinfo(void)
void print_version(void)
{
- printf("flashrom v%s", flashrom_version);
+ msg_ginfo("flashrom v%s\n", flashrom_version);
print_sysinfo();
}
@@ -1196,16 +1196,16 @@ int selfcheck(void)
* if more errors exist.
*/
if (ARRAY_SIZE(programmer_table) - 1 != PROGRAMMER_INVALID) {
- fprintf(stderr, "Programmer table miscompilation!\n");
+ msg_gerr("Programmer table miscompilation!\n");
ret = 1;
}
if (spi_programmer_count - 1 != SPI_CONTROLLER_INVALID) {
- fprintf(stderr, "SPI programmer table miscompilation!\n");
+ msg_gerr("SPI programmer table miscompilation!\n");
ret = 1;
}
#if BITBANG_SPI_SUPPORT == 1
if (bitbang_spi_master_count - 1 != BITBANG_SPI_INVALID) {
- fprintf(stderr, "Bitbanging SPI master table miscompilation!\n");
+ msg_gerr("Bitbanging SPI master table miscompilation!\n");
ret = 1;
}
#endif
@@ -1218,36 +1218,36 @@ int selfcheck(void)
void check_chip_supported(struct flashchip *flash)
{
if (TEST_OK_MASK != (flash->tested & TEST_OK_MASK)) {
- printf("===\n");
+ msg_cinfo("===\n");
if (flash->tested & TEST_BAD_MASK) {
- printf("This flash part has status NOT WORKING for operations:");
+ msg_cinfo("This flash part has status NOT WORKING for operations:");
if (flash->tested & TEST_BAD_PROBE)
- printf(" PROBE");
+ msg_cinfo(" PROBE");
if (flash->tested & TEST_BAD_READ)
- printf(" READ");
+ msg_cinfo(" READ");
if (flash->tested & TEST_BAD_ERASE)
- printf(" ERASE");
+ msg_cinfo(" ERASE");
if (flash->tested & TEST_BAD_WRITE)
- printf(" WRITE");
- printf("\n");
+ msg_cinfo(" WRITE");
+ msg_cinfo("\n");
}
if ((!(flash->tested & TEST_BAD_PROBE) && !(flash->tested & TEST_OK_PROBE)) ||
(!(flash->tested & TEST_BAD_READ) && !(flash->tested & TEST_OK_READ)) ||
(!(flash->tested & TEST_BAD_ERASE) && !(flash->tested & TEST_OK_ERASE)) ||
(!(flash->tested & TEST_BAD_WRITE) && !(flash->tested & TEST_OK_WRITE))) {
- printf("This flash part has status UNTESTED for operations:");
+ msg_cinfo("This flash part has status UNTESTED for operations:");
if (!(flash->tested & TEST_BAD_PROBE) && !(flash->tested & TEST_OK_PROBE))
- printf(" PROBE");
+ msg_cinfo(" PROBE");
if (!(flash->tested & TEST_BAD_READ) && !(flash->tested & TEST_OK_READ))
- printf(" READ");
+ msg_cinfo(" READ");
if (!(flash->tested & TEST_BAD_ERASE) && !(flash->tested & TEST_OK_ERASE))
- printf(" ERASE");
+ msg_cinfo(" ERASE");
if (!(flash->tested & TEST_BAD_WRITE) && !(flash->tested & TEST_OK_WRITE))
- printf(" WRITE");
- printf("\n");
+ msg_cinfo(" WRITE");
+ msg_cinfo("\n");
}
/* FIXME: This message is designed towards CLI users. */
- printf("Please email a report to flashrom@flashrom.org if any "
+ msg_cinfo("Please email a report to flashrom@flashrom.org if any "
"of the above operations\nwork correctly for you with "
"this flash part. Please include the flashrom\noutput "
"with the additional -V option for all operations you "
@@ -1278,13 +1278,13 @@ int doit(struct flashchip *flash, int force, char *filename, int read_it, int wr
if (erase_it) {
if (flash->tested & TEST_BAD_ERASE) {
- fprintf(stderr, "Erase is not working on this chip. ");
+ msg_cerr("Erase is not working on this chip. ");
if (!force) {
- fprintf(stderr, "Aborting.\n");
+ msg_cerr("Aborting.\n");
programmer_shutdown();
return 1;
} else {
- fprintf(stderr, "Continuing anyway.\n");
+ msg_cerr("Continuing anyway.\n");
}
}
if (flash->unlock)
@@ -1310,24 +1310,24 @@ int doit(struct flashchip *flash, int force, char *filename, int read_it, int wr
flash->unlock(flash);
if (flash->tested & TEST_BAD_ERASE) {
- fprintf(stderr, "Erase is not working on this chip "
+ msg_cerr("Erase is not working on this chip "
"and erase is needed for write. ");
if (!force) {
- fprintf(stderr, "Aborting.\n");
+ msg_cerr("Aborting.\n");
programmer_shutdown();
return 1;
} else {
- fprintf(stderr, "Continuing anyway.\n");
+ msg_cerr("Continuing anyway.\n");
}
}
if (flash->tested & TEST_BAD_WRITE) {
- fprintf(stderr, "Write is not working on this chip. ");
+ msg_cerr("Write is not working on this chip. ");
if (!force) {
- fprintf(stderr, "Aborting.\n");
+ msg_cerr("Aborting.\n");
programmer_shutdown();
return 1;
} else {
- fprintf(stderr, "Continuing anyway.\n");
+ msg_cerr("Continuing anyway.\n");
}
}
if ((image = fopen(filename, "rb")) == NULL) {
@@ -1341,7 +1341,7 @@ int doit(struct flashchip *flash, int force, char *filename, int read_it, int wr
exit(1);
}
if (image_stat.st_size != flash->total_size * 1024) {
- fprintf(stderr, "Error: Image size doesn't match\n");
+ msg_gerr("Error: Image size doesn't match\n");
programmer_shutdown();
exit(1);
}
@@ -1352,7 +1352,7 @@ int doit(struct flashchip *flash, int force, char *filename, int read_it, int wr
#endif
fclose(image);
if (numbytes != size) {
- fprintf(stderr, "Error: Failed to read file. Got %ld bytes, wanted %ld!\n", numbytes, size);
+ msg_gerr("Error: Failed to read file. Got %ld bytes, wanted %ld!\n", numbytes, size);
programmer_shutdown();
return 1;
}
@@ -1365,20 +1365,20 @@ int doit(struct flashchip *flash, int force, char *filename, int read_it, int wr
// ////////////////////////////////////////////////////////////
if (write_it) {
- printf("Writing flash chip... ");
+ msg_cinfo("Writing flash chip... ");
if (!flash->write) {
- fprintf(stderr, "Error: flashrom has no write function for this flash chip.\n");
+ msg_cerr("Error: flashrom has no write function for this flash chip.\n");
programmer_shutdown();
return 1;
}
ret = flash->write(flash, buf);
if (ret) {
- fprintf(stderr, "FAILED!\n");
+ msg_cerr("FAILED!\n");
emergency_help_message();
programmer_shutdown();
return 1;
} else {
- printf("COMPLETE.\n");
+ msg_cinfo("COMPLETE.\n");
}
}
diff --git a/hwaccess.c b/hwaccess.c
index 36ea6f4..830013e 100644
--- a/hwaccess.c
+++ b/hwaccess.c
@@ -41,7 +41,7 @@ void get_io_perms(void)
#else
if (iopl(3) != 0) {
#endif
- fprintf(stderr, "ERROR: Could not get I/O privileges (%s).\n"
+ msg_perr("ERROR: Could not get I/O privileges (%s).\n"
"You need to be root.\n", strerror(errno));
exit(1);
}
diff --git a/ichspi.c b/ichspi.c
index 35b9dbd..fbe9092 100644
--- a/ichspi.c
+++ b/ichspi.c
@@ -38,17 +38,6 @@
#include "chipdrivers.h"
#include "spi.h"
-/* Change this to #define if you want lowlevel debugging of commands
- * sent to the ICH/VIA SPI controller.
- */
-#undef COMM_DEBUG
-
-#ifdef COMM_DEBUG
-#define msg_comm_debug printf_debug
-#else
-#define msg_comm_debug(...) do {} while (0)
-#endif
-
/* ICH9 controller register definition */
#define ICH9_REG_FADDR 0x08 /* 32 Bits */
#define ICH9_REG_FDATA0 0x10 /* 64 Bytes */
@@ -237,7 +226,7 @@ static int generate_opcodes(OPCODES * op)
uint32_t opmenu[2];
if (op == NULL) {
- printf_debug("\n%s: null OPCODES pointer!\n", __func__);
+ msg_perr("\n%s: null OPCODES pointer!\n", __func__);
return -1;
}
@@ -256,7 +245,7 @@ static int generate_opcodes(OPCODES * op)
opmenu[1] = REGREAD32(ICH9_REG_OPMENU + 4);
break;
default:
- printf_debug("%s: unsupported chipset\n", __func__);
+ msg_perr("%s: unsupported chipset\n", __func__);
return -1;
}
@@ -315,7 +304,7 @@ int program_opcodes(OPCODES * op)
opmenu[1] |= ((uint32_t) op->opcode[a].opcode) << ((a - 4) * 8);
}
- printf_debug("\n%s: preop=%04x optype=%04x opmenu=%08x%08x\n", __func__, preop, optype, opmenu[0], opmenu[1]);
+ msg_pdbg("\n%s: preop=%04x optype=%04x opmenu=%08x%08x\n", __func__, preop, optype, opmenu[0], opmenu[1]);
switch (spi_controller) {
case SPI_CONTROLLER_ICH7:
case SPI_CONTROLLER_VIA:
@@ -331,7 +320,7 @@ int program_opcodes(OPCODES * op)
REGWRITE32(ICH9_REG_OPMENU + 4, opmenu[1]);
break;
default:
- printf_debug("%s: unsupported chipset\n", __func__);
+ msg_perr("%s: unsupported chipset\n", __func__);
return -1;
}
@@ -352,22 +341,22 @@ int ich_init_opcodes(void)
return 0;
if (ichspi_lock) {
- printf_debug("Generating OPCODES... ");
+ msg_pdbg("Generating OPCODES... ");
curopcodes_done = &O_EXISTING;
rc = generate_opcodes(curopcodes_done);
} else {
- printf_debug("Programming OPCODES... ");
+ msg_pdbg("Programming OPCODES... ");
curopcodes_done = &O_ST_M25P;
rc = program_opcodes(curopcodes_done);
}
if (rc) {
curopcodes = NULL;
- printf_debug("failed\n");
+ msg_perr("failed\n");
return 1;
} else {
curopcodes = curopcodes_done;
- printf_debug("done\n");
+ msg_pdbg("done\n");
return 0;
}
}
@@ -439,7 +428,7 @@ static int ich7_run_opcode(OPCODE op, uint32_t offset,
opmenu >>= 8;
}
if (opcode_index == 8) {
- printf_debug("Opcode %x not found.\n", op.opcode);
+ msg_pdbg("Opcode %x not found.\n", op.opcode);
return 1;
}
temp16 |= ((uint16_t) (opcode_index & 0x07)) << 4;
@@ -468,11 +457,12 @@ static int ich7_run_opcode(OPCODE op, uint32_t offset,
programmer_delay(10);
}
if (!timeout) {
- printf_debug("timeout\n");
+ msg_perr("timeout\n");
}
+ /* FIXME: make sure we do not needlessly cause transaction errors. */
if ((REGREAD16(ICH7_REG_SPIS) & SPIS_FCERR) != 0) {
- printf_debug("Transaction error!\n");
+ msg_pdbg("Transaction error!\n");
return 1;
}
@@ -557,7 +547,7 @@ static int ich9_run_opcode(OPCODE op, uint32_t offset,
opmenu >>= 8;
}
if (opcode_index == 8) {
- printf_debug("Opcode %x not found.\n", op.opcode);
+ msg_pdbg("Opcode %x not found.\n", op.opcode);
return 1;
}
temp32 |= ((uint32_t) (opcode_index & 0x07)) << (8 + 4);
@@ -586,11 +576,12 @@ static int ich9_run_opcode(OPCODE op, uint32_t offset,
programmer_delay(10);
}
if (!timeout) {
- printf_debug("timeout\n");
+ msg_perr("timeout\n");
}
+ /* FIXME make sure we do not needlessly cause transaction errors. */
if ((REGREAD32(ICH9_REG_SSFS) & SSFS_FCERR) != 0) {
- printf_debug("Transaction error!\n");
+ msg_pdbg("Transaction error!\n");
return 1;
}
@@ -615,7 +606,7 @@ static int run_opcode(OPCODE op, uint32_t offset,
switch (spi_controller) {
case SPI_CONTROLLER_VIA:
if (datalength > 16) {
- fprintf(stderr, "%s: Internal command size error for "
+ msg_perr("%s: Internal command size error for "
"opcode 0x%02x, got datalength=%i, want <=16\n",
__func__, op.opcode, datalength);
return SPI_INVALID_LENGTH;
@@ -623,7 +614,7 @@ static int run_opcode(OPCODE op, uint32_t offset,
return ich7_run_opcode(op, offset, datalength, data, 16);
case SPI_CONTROLLER_ICH7:
if (datalength > 64) {
- fprintf(stderr, "%s: Internal command size error for "
+ msg_perr("%s: Internal command size error for "
"opcode 0x%02x, got datalength=%i, want <=16\n",
__func__, op.opcode, datalength);
return SPI_INVALID_LENGTH;
@@ -631,14 +622,14 @@ static int run_opcode(OPCODE op, uint32_t offset,
return ich7_run_opcode(op, offset, datalength, data, 64);
case SPI_CONTROLLER_ICH9:
if (datalength > 64) {
- fprintf(stderr, "%s: Internal command size error for "
+ msg_perr("%s: Internal command size error for "
"opcode 0x%02x, got datalength=%i, want <=16\n",
__func__, op.opcode, datalength);
return SPI_INVALID_LENGTH;
}
return ich9_run_opcode(op, offset, datalength, data);
default:
- printf_debug("%s: unsupported chipset\n", __func__);
+ msg_perr("%s: unsupported chipset\n", __func__);
}
/* If we ever get here, something really weird happened */
@@ -652,14 +643,14 @@ static int ich_spi_write_page(struct flashchip *flash, uint8_t * bytes,
uint32_t remaining = page_size;
int towrite;
- msg_comm_debug("ich_spi_write_page: offset=%d, number=%d, buf=%p\n",
+ msg_pspew("ich_spi_write_page: offset=%d, number=%d, buf=%p\n",
offset, page_size, bytes);
for (; remaining > 0; remaining -= towrite) {
towrite = min(remaining, maxdata);
if (spi_nbyte_program(offset + (page_size - remaining),
&bytes[page_size - remaining], towrite)) {
- printf_debug("Error writing");
+ msg_perr("Error writing");
return 1;
}
}
@@ -687,14 +678,14 @@ int ich_spi_write_256(struct flashchip *flash, uint8_t * buf)
spi_disable_blockprotect();
/* Erase first */
- printf("Erasing flash before programming... ");
+ msg_pinfo("Erasing flash before programming... ");
if (erase_flash(flash)) {
- fprintf(stderr, "ERASE FAILED!\n");
+ msg_perr("ERASE FAILED!\n");
return -1;
}
- printf("done.\n");
+ msg_pinfo("done.\n");
- printf("Programming page: \n");
+ msg_pinfo("Programming page: \n");
for (i = 0; i < total_size / erase_size; i++) {
if (spi_controller == SPI_CONTROLLER_VIA)
maxdata = 16;
@@ -706,7 +697,7 @@ int ich_spi_write_256(struct flashchip *flash, uint8_t * buf)
}
}
- printf("\n");
+ msg_pinfo("\n");
return rc;
}
@@ -728,7 +719,7 @@ int ich_spi_send_command(unsigned int writecnt, unsigned int readcnt,
/* FIXME: Reprogram opcodes if possible. Autodetect type of
* opcode by checking readcnt/writecnt.
*/
- printf_debug("Invalid OPCODE 0x%02x\n", cmd);
+ msg_pdbg("Invalid OPCODE 0x%02x\n", cmd);
return SPI_INVALID_OPCODE;
}
@@ -743,21 +734,21 @@ int ich_spi_send_command(unsigned int writecnt, unsigned int readcnt,
*/
if ((opcode->spi_type == SPI_OPCODE_TYPE_READ_WITH_ADDRESS) &&
(writecnt != 4)) {
- fprintf(stderr, "%s: Internal command size error for opcode "
+ msg_perr("%s: Internal command size error for opcode "
"0x%02x, got writecnt=%i, want =4\n", __func__, cmd,
writecnt);
return SPI_INVALID_LENGTH;
}
if ((opcode->spi_type == SPI_OPCODE_TYPE_READ_NO_ADDRESS) &&
(writecnt != 1)) {
- fprintf(stderr, "%s: Internal command size error for opcode "
+ msg_perr("%s: Internal command size error for opcode "
"0x%02x, got writecnt=%i, want =1\n", __func__, cmd,
writecnt);
return SPI_INVALID_LENGTH;
}
if ((opcode->spi_type == SPI_OPCODE_TYPE_WRITE_WITH_ADDRESS) &&
(writecnt < 4)) {
- fprintf(stderr, "%s: Internal command size error for opcode "
+ msg_perr("%s: Internal command size error for opcode "
"0x%02x, got writecnt=%i, want >=4\n", __func__, cmd,
writecnt);
return SPI_INVALID_LENGTH;
@@ -765,7 +756,7 @@ int ich_spi_send_command(unsigned int writecnt, unsigned int readcnt,
if (((opcode->spi_type == SPI_OPCODE_TYPE_WRITE_WITH_ADDRESS) ||
(opcode->spi_type == SPI_OPCODE_TYPE_WRITE_NO_ADDRESS)) &&
(readcnt)) {
- fprintf(stderr, "%s: Internal command size error for opcode "
+ msg_perr("%s: Internal command size error for opcode "
"0x%02x, got readcnt=%i, want =0\n", __func__, cmd,
readcnt);
return SPI_INVALID_LENGTH;
@@ -792,7 +783,7 @@ int ich_spi_send_command(unsigned int writecnt, unsigned int readcnt,
result = run_opcode(*opcode, addr, count, data);
if (result) {
- printf_debug("run OPCODE 0x%02x failed\n", opcode->opcode);
+ msg_pdbg("run OPCODE 0x%02x failed\n", opcode->opcode);
}
return result;
@@ -817,7 +808,7 @@ int ich_spi_send_multicommand(struct spi_command *cmds)
*/
if (find_preop(curopcodes,
(cmds + 1)->writearr[0]) != -1) {
- fprintf(stderr, "%s: Two subsequent "
+ msg_perr("%s: Two subsequent "
"preopcodes 0x%02x and 0x%02x, "
"ignoring the first.\n",
__func__, cmds->writearr[0],
@@ -829,7 +820,7 @@ int ich_spi_send_multicommand(struct spi_command *cmds)
* No need to bother with fixups.
*/
if (!ichspi_lock) {
- printf_debug("%s: FIXME: Add on-the-fly"
+ msg_pdbg("%s: FIXME: Add on-the-fly"
" reprogramming of the "
"chipset opcode list.\n",
__func__);
diff --git a/pcidev.c b/pcidev.c
index 818819a..add1fce 100644
--- a/pcidev.c
+++ b/pcidev.c
@@ -45,7 +45,7 @@ uint32_t pcidev_validate(struct pci_dev *dev, uint32_t bar,
*/
addr = pci_read_long(dev, bar);
- printf("Found \"%s %s\" (%04x:%04x, BDF %02x:%02x.%x).\n",
+ msg_pinfo("Found \"%s %s\" (%04x:%04x, BDF %02x:%02x.%x).\n",
devs[i].vendor_name, devs[i].device_name,
dev->vendor_id, dev->device_id, dev->bus, dev->dev,
dev->func);
@@ -66,7 +66,7 @@ uint32_t pcidev_validate(struct pci_dev *dev, uint32_t bar,
}
if (devs[i].status == NT) {
- printf("===\nThis PCI device is UNTESTED. Please "
+ msg_pinfo("===\nThis PCI device is UNTESTED. Please "
"report the 'flashrom -p xxxx' output \n"
"to flashrom@flashrom.org if it works "
"for you. Thank you for your help!\n===\n");
@@ -95,7 +95,7 @@ uint32_t pcidev_init(uint16_t vendor_id, uint32_t bar,
filter.vendor = vendor_id;
if (pcidev_bdf != NULL) {
if ((msg = pci_filter_parse_slot(&filter, pcidev_bdf))) {
- fprintf(stderr, "Error: %s\n", msg);
+ msg_perr("Error: %s\n", msg);
exit(1);
}
}
@@ -112,10 +112,10 @@ uint32_t pcidev_init(uint16_t vendor_id, uint32_t bar,
/* Only continue if exactly one supported PCI dev has been found. */
if (found == 0) {
- fprintf(stderr, "Error: No supported PCI device found.\n");
+ msg_perr("Error: No supported PCI device found.\n");
exit(1);
} else if (found > 1) {
- fprintf(stderr, "Error: Multiple supported PCI devices found. "
+ msg_perr("Error: Multiple supported PCI devices found. "
"Use 'flashrom -p xxxx:bb:dd.f' \n"
"to explicitly select the card with the given BDF "
"(PCI bus, device, function).\n");
@@ -130,7 +130,7 @@ void print_supported_pcidevs(struct pcidev_status *devs)
int i;
for (i = 0; devs[i].vendor_name != NULL; i++) {
- printf("%s %s [%02x:%02x]%s\n", devs[i].vendor_name,
+ msg_pinfo("%s %s [%02x:%02x]%s\n", devs[i].vendor_name,
devs[i].device_name, devs[i].vendor_id,
devs[i].device_id,
(devs[i].status == NT) ? " (untested)" : "");
diff --git a/physmap.c b/physmap.c
index 0e3ce60..31db470 100644
--- a/physmap.c
+++ b/physmap.c
@@ -158,7 +158,7 @@ void *sys_physmap_ro_cached(unsigned long phys_addr, size_t len)
if (-1 == fd_mem_cached) {
/* Open the memory device CACHED. */
if (-1 == (fd_mem_cached = open(MEM_DEV, O_RDWR))) {
- perror("Critical error: open(" MEM_DEV ")");
+ msg_perr("Critical error: open(" MEM_DEV "): %s", strerror(errno));
exit(2);
}
}
@@ -171,7 +171,7 @@ void *sys_physmap_ro_cached(unsigned long phys_addr, size_t len)
void physunmap(void *virt_addr, size_t len)
{
if (len == 0) {
- printf_debug("Not unmapping zero size at %p\n", virt_addr);
+ msg_pspew("Not unmapping zero size at %p\n", virt_addr);
return;
}
@@ -189,18 +189,18 @@ void *physmap_common(const char *descr, unsigned long phys_addr, size_t len, int
void *virt_addr;
if (len == 0) {
- printf_debug("Not mapping %s, zero size at 0x%08lx.\n",
+ msg_pspew("Not mapping %s, zero size at 0x%08lx.\n",
descr, phys_addr);
return NULL;
}
if ((getpagesize() - 1) & len) {
- fprintf(stderr, "Mapping %s at 0x%08lx, unaligned size 0x%lx.\n",
+ msg_perr("Mapping %s at 0x%08lx, unaligned size 0x%lx.\n",
descr, phys_addr, (unsigned long)len);
}
if ((getpagesize() - 1) & phys_addr) {
- fprintf(stderr, "Mapping %s, 0x%lx bytes at unaligned 0x%08lx.\n",
+ msg_perr("Mapping %s, 0x%lx bytes at unaligned 0x%08lx.\n",
descr, (unsigned long)len, phys_addr);
}
@@ -213,15 +213,17 @@ void *physmap_common(const char *descr, unsigned long phys_addr, size_t len, int
if (NULL == virt_addr) {
if (NULL == descr)
descr = "memory";
- fprintf(stderr, "Error accessing %s, 0x%lx bytes at 0x%08lx\n", descr, (unsigned long)len, phys_addr);
+ msg_perr("Error accessing %s, 0x%lx bytes at 0x%08lx\n", descr, (unsigned long)len, phys_addr);
perror(MEM_DEV " mmap failed");
+#ifdef __linux__
if (EINVAL == errno) {
- fprintf(stderr, "In Linux this error can be caused by the CONFIG_NONPROMISC_DEVMEM (<2.6.27),\n");
- fprintf(stderr, "CONFIG_STRICT_DEVMEM (>=2.6.27) and CONFIG_X86_PAT kernel options.\n");
- fprintf(stderr, "Please check if either is enabled in your kernel before reporting a failure.\n");
- fprintf(stderr, "You can override CONFIG_X86_PAT at boot with the nopat kernel parameter but\n");
- fprintf(stderr, "disabling the other option unfortunately requires a kernel recompile. Sorry!\n");
+ msg_perr("In Linux this error can be caused by the CONFIG_NONPROMISC_DEVMEM (<2.6.27),\n");
+ msg_perr("CONFIG_STRICT_DEVMEM (>=2.6.27) and CONFIG_X86_PAT kernel options.\n");
+ msg_perr("Please check if either is enabled in your kernel before reporting a failure.\n");
+ msg_perr("You can override CONFIG_X86_PAT at boot with the nopat kernel parameter but\n");
+ msg_perr("disabling the other option unfortunately requires a kernel recompile. Sorry!\n");
}
+#endif
if (!mayfail)
exit(3);
}
@@ -306,7 +308,7 @@ int setup_cpu_msr(int cpu)
sprintf(msrfilename, "/dev/cpu/%d/msr", cpu);
if (fd_msr != -1) {
- printf("MSR was already initialized\n");
+ msg_pinfo("MSR was already initialized\n");
return -1;
}
@@ -314,7 +316,7 @@ int setup_cpu_msr(int cpu)
if (fd_msr < 0) {
perror("Error while opening /dev/cpu/0/msr");
- printf("Did you run 'modprobe msr'?\n");
+ msg_pinfo("Did you run 'modprobe msr'?\n");
return -1;
}
@@ -324,7 +326,7 @@ int setup_cpu_msr(int cpu)
void cleanup_cpu_msr(void)
{
if (fd_msr == -1) {
- printf("No MSR initialized.\n");
+ msg_pinfo("No MSR initialized.\n");
return;
}
@@ -389,7 +391,7 @@ int setup_cpu_msr(int cpu)
sprintf(msrfilename, "/dev/cpu%d", cpu);
if (fd_msr != -1) {
- printf("MSR was already initialized\n");
+ msg_pinfo("MSR was already initialized\n");
return -1;
}
@@ -397,7 +399,7 @@ int setup_cpu_msr(int cpu)
if (fd_msr < 0) {
perror("Error while opening /dev/cpu0");
- printf("Did you install ports/sysutils/devcpu?\n");
+ msg_pinfo("Did you install ports/sysutils/devcpu?\n");
return -1;
}
@@ -407,7 +409,7 @@ int setup_cpu_msr(int cpu)
void cleanup_cpu_msr(void)
{
if (fd_msr == -1) {
- printf("No MSR initialized.\n");
+ msg_pinfo("No MSR initialized.\n");
return;
}
@@ -445,7 +447,7 @@ int wrmsr(int addr, msr_t msr)
int setup_cpu_msr(int cpu)
{
- printf("No MSR support for your OS yet.\n");
+ msg_pinfo("No MSR support for your OS yet.\n");
return -1;
}
diff --git a/spi.c b/spi.c
index 8bbbe6e..9bb4687 100644
--- a/spi.c
+++ b/spi.c
@@ -130,7 +130,7 @@ int spi_send_command(unsigned int writecnt, unsigned int readcnt,
const unsigned char *writearr, unsigned char *readarr)
{
if (!spi_programmer[spi_controller].command) {
- fprintf(stderr, "%s called, but SPI is unsupported on this "
+ msg_perr("%s called, but SPI is unsupported on this "
"hardware. Please report a bug.\n", __func__);
return 1;
}
@@ -142,7 +142,7 @@ int spi_send_command(unsigned int writecnt, unsigned int readcnt,
int spi_send_multicommand(struct spi_command *cmds)
{
if (!spi_programmer[spi_controller].multicommand) {
- fprintf(stderr, "%s called, but SPI is unsupported on this "
+ msg_perr("%s called, but SPI is unsupported on this "
"hardware. Please report a bug.\n", __func__);
return 1;
}
@@ -182,7 +182,7 @@ int default_spi_send_multicommand(struct spi_command *cmds)
int spi_chip_read(struct flashchip *flash, uint8_t *buf, int start, int len)
{
if (!spi_programmer[spi_controller].read) {
- fprintf(stderr, "%s called, but SPI read is unsupported on this"
+ msg_perr("%s called, but SPI read is unsupported on this"
" hardware. Please report a bug.\n", __func__);
return 1;
}
@@ -197,7 +197,7 @@ int spi_chip_read(struct flashchip *flash, uint8_t *buf, int start, int len)
int spi_chip_write_256(struct flashchip *flash, uint8_t *buf)
{
if (!spi_programmer[spi_controller].write_256) {
- fprintf(stderr, "%s called, but SPI page write is unsupported "
+ msg_perr("%s called, but SPI page write is unsupported "
" on this hardware. Please report a bug.\n", __func__);
return 1;
}
OpenPOWER on IntegriCloud