libflashprog: Allow to query bus types, voltage, and test status

This is mostly an export of the long stable internal structures. We do
some renames, though,  and provide the voltage range as floating point
numbers. While we are at it, also rename:
* flashprog_test_status.wp      => .block_protection,
* BUS_PROG                      => BUS_OPAQUE,
* BUS_NONSPI                    => BUS_PRESPI.
The last one is a pseudonym for the older, memory-mapped buses, and
doesn't include BUS_OPAQUE.

Also try to name the captured test state consistently, either `tested`
or `status`.

Change-Id: Ibefb923fa5f566daa804651aa1a9bfe5602ca364
Signed-off-by: Nico Huber <nico.h@gmx.de>
Reviewed-on: https://review.sourcearcade.org/c/flashprog/+/482
diff --git a/amd_rom3read.c b/amd_rom3read.c
index ad03fb7..98ba5d2 100644
--- a/amd_rom3read.c
+++ b/amd_rom3read.c
@@ -71,8 +71,8 @@
 
 	flash->chip->total_size = flash_size / KiB;
 	flash->chip->feature_bits |= FEATURE_NO_ERASE;
-	flash->chip->tested =
-		(struct tested){ .probe = OK, .read = OK, .erase = NA, .write = NA, .wp = NA };
+	flash->chip->tested = (struct flashprog_test_status)
+		{ .probe = OK, .read = OK, .erase = NA, .write = NA, .block_protection = NA };
 
 	return !!flash->chip->total_size;
 }