summaryrefslogtreecommitdiffstats
path: root/print.c
diff options
context:
space:
mode:
authorStefan Tauner <stefan.tauner@alumni.tuwien.ac.at>2012-12-27 18:40:36 +0000
committerStefan Tauner <stefan.tauner@alumni.tuwien.ac.at>2012-12-27 18:40:36 +0000
commit4b24a2d70b79f3288370fd5b4f472bdf218f16e8 (patch)
treeb4ba0971a1d5ff2f8e1693ae66b33e8c8cda1843 /print.c
parentaf358d6af23b21f93f6e27278e76eec21a3d148f (diff)
downloadflashrom-4b24a2d70b79f3288370fd5b4f472bdf218f16e8.tar.gz
flashrom-4b24a2d70b79f3288370fd5b4f472bdf218f16e8.tar.bz2
flashrom-4b24a2d70b79f3288370fd5b4f472bdf218f16e8.zip
Unify usbdev_status and pcidev_status into dev_entry
Once upon a time usbdev_status was created for the ft2232 programmer. Its IDs are semantically different to pcidev_status because they indicate USB instead of PCI IDs, but apart from that both data structures are equal. This change makes life easier for everything involved in handling and printing the status of devices that is noted in those structures by combining them into dev_entry. It is still possible to distinguish between PCI and USB devices indirectly by using the struct programmer's type field. Also, add a programmer column to the PCI and USB devices lists. Corresponding to flashrom svn r1632. Signed-off-by: Stefan Tauner <stefan.tauner@alumni.tuwien.ac.at> Acked-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006@gmx.net>
Diffstat (limited to 'print.c')
-rw-r--r--print.c31
1 files changed, 9 insertions, 22 deletions
diff --git a/print.c b/print.c
index a2181bd4e..85d5ab26e 100644
--- a/print.c
+++ b/print.c
@@ -433,29 +433,18 @@ static void print_supported_boards_helper(const struct board_info *boards,
}
#endif
-void print_supported_usbdevs(const struct usbdev_status *devs)
+void print_supported_devs(const struct programmer_entry prog, const char *const type)
{
int i;
- msg_pinfo("USB devices:\n");
+ const struct dev_entry *const devs = prog.devs.dev;
+ msg_ginfo("\nSupported %s devices for the %s programmer:\n", type, prog.name);
for (i = 0; devs[i].vendor_name != NULL; i++) {
msg_pinfo("%s %s [%04x:%04x]%s\n", devs[i].vendor_name, devs[i].device_name, devs[i].vendor_id,
devs[i].device_id, (devs[i].status == NT) ? " (untested)" : "");
}
}
-#if NEED_PCI == 1
-void print_supported_pcidevs(const struct pcidev_status *devs)
-{
- int i;
-
- for (i = 0; devs[i].vendor_name != NULL; i++) {
- msg_pinfo("%s %s [%04x:%04x]%s\n", devs[i].vendor_name, devs[i].device_name, devs[i].vendor_id,
- devs[i].device_id, (devs[i].status == NT) ? " (untested)" : "");
- }
-}
-#endif
-
int print_supported(void)
{
unsigned int i;
@@ -478,20 +467,18 @@ int print_supported(void)
const struct programmer_entry prog = programmer_table[i];
switch (prog.type) {
case USB:
- msg_ginfo("\nSupported USB devices for the %s programmer:\n", prog.name);
- print_supported_usbdevs(prog.devs.usb);
+ print_supported_devs(prog, "USB");
break;
#if NEED_PCI == 1
case PCI:
- msg_ginfo("\nSupported PCI devices for the %s programmer:\n", prog.name);
- print_supported_pcidevs(prog.devs.pci);
+ print_supported_devs(prog, "PCI");
break;
#endif
case OTHER:
- if (prog.devs.note == NULL)
- break;
- msg_ginfo("\nSupported devices for the %s programmer:\n", prog.name);
- msg_ginfo("%s", prog.devs.note);
+ if (prog.devs.note != NULL) {
+ msg_ginfo("\nSupported devices for the %s programmer:\n", prog.name);
+ msg_ginfo("%s", prog.devs.note);
+ }
break;
default:
msg_gerr("\n%s: %s: Uninitialized programmer type! Please report a bug at "