Current programmer parameter syntax is -p programmer=parameter Unfortunately, many parameters are of the form variable=val, so we get commandlines like this: flashrom -p it87spi=port=0x820 and this looks horrible.
Using : instead of = would make such parameters look better: flashrom -p it87spi:port=0x820
As a side benefit, this patch mentions the programmer name in the error message if it is unknown.
Signed-off-by: Carl-Daniel Hailfinger c-d.hailfinger.devel.2006@gmx.net
Index: flashrom-programmer_param_colon/flashrom.8 =================================================================== --- flashrom-programmer_param_colon/flashrom.8 (Revision 692) +++ flashrom-programmer_param_colon/flashrom.8 (Arbeitskopie) @@ -150,7 +150,7 @@ .sp The dummy programmer has an optional parameter specifying the bus types it should support. For that you have to use the -.B "flashrom -p dummy=type" +.B "flashrom -p dummy:type" syntax where .B type can be any comma-separated combination of @@ -158,11 +158,11 @@ in any order. .sp Example: -.B "flashrom -p dummy=lpc,fwh" +.B "flashrom -p dummy:lpc,fwh" .sp If you have multiple supported PCI cards which can program flash chips (NICs, SATA/IDE controllers, etc.) in your system, you must use the -.B "flashrom -p xxxx=bb:dd.f" +.B "flashrom -p xxxx:bb:dd.f" syntax to explicitly select one of them, where .B xxxx is the name of the programmer @@ -174,7 +174,7 @@ is the PCI function number of the desired NIC. .sp Example: -.B "flashrom -p nic3com=05:04.0" +.B "flashrom -p nic3com:05:04.0" .sp Currently the following programmers support this mechanism: .BR nic3com , @@ -183,14 +183,14 @@ The it87spi programmer has an optional parameter which will set the I/O base port of the IT87* SPI controller interface to the port specified in the parameter. For that you have to use the -.B "flashrom -p it87spi=port=portnum" +.B "flashrom -p it87spi:port=portnum" syntax where .B portnum is an I/O port number which must be a multiple of 8. .sp The ft2232spi programmer has an optional parameter specifying the controller type and interface/port it should support. For that you have to use the -.B "flashrom -p ft2232spi=model,port=interface" +.B "flashrom -p ft2232spi:model,port=interface" syntax where .B model can be any of @@ -208,9 +208,9 @@ The serprog programmer has an optional parameter specifying either a serial device/baud combination or an IP/port combination for communication with the programmer. For serial, you have to use the -.B "flashrom -p serprog=/dev/device:baud" +.B "flashrom -p serprog:/dev/device:baud" syntax and for IP, you have to use -.B "flashrom -p serprog=ip:port" +.B "flashrom -p serprog:ip:port" instead. More information about serprog is available in serprog-protocol.txt in the source distribution. .sp Index: flashrom-programmer_param_colon/flashrom.c =================================================================== --- flashrom-programmer_param_colon/flashrom.c (Revision 692) +++ flashrom-programmer_param_colon/flashrom.c (Arbeitskopie) @@ -708,7 +708,7 @@ namelen = strlen(name); if (strncmp(optarg, name, namelen) == 0) { switch (optarg[namelen]) { - case '=': + case ':': programmer_param = strdup(optarg + namelen + 1); break; case '\0': @@ -725,7 +725,7 @@ } } if (programmer == PROGRAMMER_INVALID) { - printf("Error: Unknown programmer.\n"); + printf("Error: Unknown programmer %s.\n", optarg); exit(1); } break;