summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKarthick Sundarrajan <karthick.sundarrajan@intel.com>2019-11-20 02:51:11 +0300
committerKarthick Sundarrajan <karthick.sundarrajan@intel.com>2019-12-05 03:01:44 +0300
commit4213b26002f644927efdae94e0f8627c80df59a4 (patch)
tree37d8e1d1fbf6b8d296212f0dd40d870980ff603e
parent450456c8baad413d8d5fe9fc8a4720b173aaa433 (diff)
downloadprovingground-4213b26002f644927efdae94e0f8627c80df59a4.tar.xz
Fix the peci_cmds utility
At present, the peci_cmds utility just accepts hex for all numerical inputs. Fixed it to accept numericals in decimal or hex or octals. Tested: The index and Param in the output are in hex. root@intel-obmc:~# peci_cmds rdpkgconfig 10 16 -v PECI target[0x30]: Pkg Read of Index 0a Param 0010 cc:0x40 0x00000a9c root@intel-obmc:~# peci_cmds rdpkgconfig 0x10 0x16 -v PECI target[0x30]: Pkg Read of Index 10 Param 0016 cc:0x40 0x00690a00 Change-Id: Idce477653de9ad394b857196b652c66bd02e1e5c Signed-off-by: Karthick Sundarrajan <karthick.sundarrajan@intel.com>
-rw-r--r--libpeci/peci_cmds.c106
1 files changed, 53 insertions, 53 deletions
diff --git a/libpeci/peci_cmds.c b/libpeci/peci_cmds.c
index 0123961..b705e91 100644
--- a/libpeci/peci_cmds.c
+++ b/libpeci/peci_cmds.c
@@ -214,8 +214,8 @@ int main(int argc, char* argv[])
switch (argc - optind)
{
case 2:
- u16PkgParam = (uint16_t)strtoul(argv[--index], NULL, 16);
- u8PkgIndex = (uint8_t)strtoul(argv[--index], NULL, 16);
+ u16PkgParam = (uint16_t)strtoul(argv[--index], NULL, 0);
+ u8PkgIndex = (uint8_t)strtoul(argv[--index], NULL, 0);
break;
default:
printf("ERROR: Unsupported arguments for Pkg Read\n");
@@ -242,9 +242,9 @@ int main(int argc, char* argv[])
switch (argc - optind)
{
case 3:
- u32PkgValue = strtoul(argv[--index], NULL, 16);
- u16PkgParam = (uint16_t)strtoul(argv[--index], NULL, 16);
- u8PkgIndex = (uint8_t)strtoul(argv[--index], NULL, 16);
+ u32PkgValue = strtoul(argv[--index], NULL, 0);
+ u16PkgParam = (uint16_t)strtoul(argv[--index], NULL, 0);
+ u8PkgIndex = (uint8_t)strtoul(argv[--index], NULL, 0);
break;
default:
printf("ERROR: Unsupported arguments for Pkg Write\n");
@@ -271,8 +271,8 @@ int main(int argc, char* argv[])
switch (argc - optind)
{
case 2:
- u16MsrAddr = (uint16_t)strtoul(argv[--index], NULL, 16);
- u8MsrThread = (uint8_t)strtoul(argv[--index], NULL, 16);
+ u16MsrAddr = (uint16_t)strtoul(argv[--index], NULL, 0);
+ u8MsrThread = (uint8_t)strtoul(argv[--index], NULL, 0);
break;
default:
printf("ERROR: Unsupported arguments for MSR Read\n");
@@ -298,16 +298,16 @@ int main(int argc, char* argv[])
switch (argc - optind)
{
case 4:
- u16PciReg = (uint16_t)strtoul(argv[--index], NULL, 16);
+ u16PciReg = (uint16_t)strtoul(argv[--index], NULL, 0);
/* FALLTHROUGH */
case 3:
- u8PciFunc = (uint8_t)strtoul(argv[--index], NULL, 16);
+ u8PciFunc = (uint8_t)strtoul(argv[--index], NULL, 0);
/* FALLTHROUGH */
case 2:
- u8PciDev = (uint8_t)strtoul(argv[--index], NULL, 16);
+ u8PciDev = (uint8_t)strtoul(argv[--index], NULL, 0);
/* FALLTHROUGH */
case 1:
- u8PciBus = (uint8_t)strtoul(argv[--index], NULL, 16);
+ u8PciBus = (uint8_t)strtoul(argv[--index], NULL, 0);
break;
default:
printf("ERROR: Unsupported arguments for PCI Read\n");
@@ -334,16 +334,16 @@ int main(int argc, char* argv[])
switch (argc - optind)
{
case 4:
- u16PciReg = (uint16_t)strtoul(argv[--index], NULL, 16);
+ u16PciReg = (uint16_t)strtoul(argv[--index], NULL, 0);
/* FALLTHROUGH */
case 3:
- u8PciFunc = (uint8_t)strtoul(argv[--index], NULL, 16);
+ u8PciFunc = (uint8_t)strtoul(argv[--index], NULL, 0);
/* FALLTHROUGH */
case 2:
- u8PciDev = (uint8_t)strtoul(argv[--index], NULL, 16);
+ u8PciDev = (uint8_t)strtoul(argv[--index], NULL, 0);
/* FALLTHROUGH */
case 1:
- u8PciBus = (uint8_t)strtoul(argv[--index], NULL, 16);
+ u8PciBus = (uint8_t)strtoul(argv[--index], NULL, 0);
break;
default:
printf("ERROR: Unsupported arguments for Local PCI Read\n");
@@ -368,20 +368,20 @@ int main(int argc, char* argv[])
else if (strcmp(cmd, "wrpciconfiglocal") == 0)
{
index = argc;
- u32PciWriteVal = strtoul(argv[--index], NULL, 16);
+ u32PciWriteVal = strtoul(argv[--index], NULL, 0);
switch (argc - optind)
{
case 5:
- u16PciReg = (uint16_t)strtoul(argv[--index], NULL, 16);
+ u16PciReg = (uint16_t)strtoul(argv[--index], NULL, 0);
/* FALLTHROUGH */
case 4:
- u8PciFunc = (uint8_t)strtoul(argv[--index], NULL, 16);
+ u8PciFunc = (uint8_t)strtoul(argv[--index], NULL, 0);
/* FALLTHROUGH */
case 3:
- u8PciDev = (uint8_t)strtoul(argv[--index], NULL, 16);
+ u8PciDev = (uint8_t)strtoul(argv[--index], NULL, 0);
/* FALLTHROUGH */
case 2:
- u8PciBus = (uint8_t)strtoul(argv[--index], NULL, 16);
+ u8PciBus = (uint8_t)strtoul(argv[--index], NULL, 0);
break;
default:
printf("ERROR: Unsupported arguments for Local PCI Write\n");
@@ -409,11 +409,11 @@ int main(int argc, char* argv[])
switch (argc - optind)
{
case 5:
- u16PciReg = (uint16_t)strtoul(argv[--index], NULL, 16);
- u8PciFunc = (uint8_t)strtoul(argv[--index], NULL, 16);
- u8PciDev = (uint8_t)strtoul(argv[--index], NULL, 16);
- u8PciBus = (uint8_t)strtoul(argv[--index], NULL, 16);
- u8Seg = (uint8_t)strtoul(argv[--index], NULL, 16);
+ u16PciReg = (uint16_t)strtoul(argv[--index], NULL, 0);
+ u8PciFunc = (uint8_t)strtoul(argv[--index], NULL, 0);
+ u8PciDev = (uint8_t)strtoul(argv[--index], NULL, 0);
+ u8PciBus = (uint8_t)strtoul(argv[--index], NULL, 0);
+ u8Seg = (uint8_t)strtoul(argv[--index], NULL, 0);
break;
default:
@@ -443,12 +443,12 @@ int main(int argc, char* argv[])
switch (argc - optind)
{
case 6:
- u32PciWriteVal = strtoul(argv[--index], NULL, 16);
- u16PciReg = (uint16_t)strtoul(argv[--index], NULL, 16);
- u8PciFunc = (uint8_t)strtoul(argv[--index], NULL, 16);
- u8PciDev = (uint8_t)strtoul(argv[--index], NULL, 16);
- u8PciBus = (uint8_t)strtoul(argv[--index], NULL, 16);
- u8Seg = (uint8_t)strtoul(argv[--index], NULL, 16);
+ u32PciWriteVal = strtoul(argv[--index], NULL, 0);
+ u16PciReg = (uint16_t)strtoul(argv[--index], NULL, 0);
+ u8PciFunc = (uint8_t)strtoul(argv[--index], NULL, 0);
+ u8PciDev = (uint8_t)strtoul(argv[--index], NULL, 0);
+ u8PciBus = (uint8_t)strtoul(argv[--index], NULL, 0);
+ u8Seg = (uint8_t)strtoul(argv[--index], NULL, 0);
break;
default:
@@ -479,11 +479,11 @@ int main(int argc, char* argv[])
switch (argc - optind)
{
case 5:
- u16PciReg = (uint16_t)strtoul(argv[--index], NULL, 16);
- u8PciFunc = (uint8_t)strtoul(argv[--index], NULL, 16);
- u8PciDev = (uint8_t)strtoul(argv[--index], NULL, 16);
- u8PciBus = (uint8_t)strtoul(argv[--index], NULL, 16);
- u8Seg = (uint8_t)strtoul(argv[--index], NULL, 16);
+ u16PciReg = (uint16_t)strtoul(argv[--index], NULL, 0);
+ u8PciFunc = (uint8_t)strtoul(argv[--index], NULL, 0);
+ u8PciDev = (uint8_t)strtoul(argv[--index], NULL, 0);
+ u8PciBus = (uint8_t)strtoul(argv[--index], NULL, 0);
+ u8Seg = (uint8_t)strtoul(argv[--index], NULL, 0);
break;
default:
@@ -511,12 +511,12 @@ int main(int argc, char* argv[])
switch (argc - optind)
{
case 6:
- u32PciWriteVal = strtoul(argv[--index], NULL, 16);
- u16PciReg = (uint16_t)strtoul(argv[--index], NULL, 16);
- u8PciFunc = (uint8_t)strtoul(argv[--index], NULL, 16);
- u8PciDev = (uint8_t)strtoul(argv[--index], NULL, 16);
- u8PciBus = (uint8_t)strtoul(argv[--index], NULL, 16);
- u8Seg = (uint8_t)strtoul(argv[--index], NULL, 16);
+ u32PciWriteVal = strtoul(argv[--index], NULL, 0);
+ u16PciReg = (uint16_t)strtoul(argv[--index], NULL, 0);
+ u8PciFunc = (uint8_t)strtoul(argv[--index], NULL, 0);
+ u8PciDev = (uint8_t)strtoul(argv[--index], NULL, 0);
+ u8PciBus = (uint8_t)strtoul(argv[--index], NULL, 0);
+ u8Seg = (uint8_t)strtoul(argv[--index], NULL, 0);
break;
default:
@@ -546,13 +546,13 @@ int main(int argc, char* argv[])
switch (argc - optind)
{
case 7:
- u64Offset = strtoull(argv[--index], NULL, 16);
- u8PciFunc = (uint8_t)strtoul(argv[--index], NULL, 16);
- u8PciDev = (uint8_t)strtoul(argv[--index], NULL, 16);
- u8PciBus = (uint8_t)strtoul(argv[--index], NULL, 16);
- u8Seg = (uint8_t)strtoul(argv[--index], NULL, 16);
- u8Bar = (uint8_t)strtoul(argv[--index], NULL, 16);
- u8AddrType = (uint8_t)strtoul(argv[--index], NULL, 16);
+ u64Offset = strtoull(argv[--index], NULL, 0);
+ u8PciFunc = (uint8_t)strtoul(argv[--index], NULL, 0);
+ u8PciDev = (uint8_t)strtoul(argv[--index], NULL, 0);
+ u8PciBus = (uint8_t)strtoul(argv[--index], NULL, 0);
+ u8Seg = (uint8_t)strtoul(argv[--index], NULL, 0);
+ u8Bar = (uint8_t)strtoul(argv[--index], NULL, 0);
+ u8AddrType = (uint8_t)strtoul(argv[--index], NULL, 0);
break;
default:
@@ -585,11 +585,11 @@ int main(int argc, char* argv[])
}
// Address is provided in the first byte of the PECI command
- uint8_t rawAddr = (uint8_t)strtoul(argv[optind++], NULL, 16);
+ uint8_t rawAddr = (uint8_t)strtoul(argv[optind++], NULL, 0);
// Write length is provided in the second byte of the PECI command
- uint8_t writeLength = (uint8_t)strtoul(argv[optind++], NULL, 16);
+ uint8_t writeLength = (uint8_t)strtoul(argv[optind++], NULL, 0);
// Read length is provided in the third byte of the PECI command
- uint8_t readLength = (uint8_t)strtoul(argv[optind++], NULL, 16);
+ uint8_t readLength = (uint8_t)strtoul(argv[optind++], NULL, 0);
// remaining parameters should match write length
if ((argc - optind) != writeLength)
@@ -606,7 +606,7 @@ int main(int argc, char* argv[])
}
for (i = 0; i < writeLength; i++)
{
- rawCmd[i] = (uint8_t)strtoul(argv[i + optind], NULL, 16);
+ rawCmd[i] = (uint8_t)strtoul(argv[i + optind], NULL, 0);
}
if (verbose)
{