diff --git a/src/main/drivers/io_impl.h b/src/main/drivers/io_impl.h index 470cf8163..5796bbfc1 100644 --- a/src/main/drivers/io_impl.h +++ b/src/main/drivers/io_impl.h @@ -50,6 +50,8 @@ uint16_t IO_Pin(IO_t io); #define IO_GPIOBYTAG(tag) IO_GPIO(IOGetByTag(tag)) #define IO_PINBYTAG(tag) IO_Pin(IOGetByTag(tag)) +#define IO_GPIOPortIdxByTag(tag) DEFIO_TAG_GPIOID(tag) +#define IO_GPIOPinIdxByTag(tag) DEFIO_TAG_PIN(tag) uint32_t IO_EXTI_Line(IO_t io); ioRec_t *IO_Rec(IO_t io); diff --git a/src/main/io/serial_cli.c b/src/main/io/serial_cli.c index 5ee05f6cd..4fedfec5e 100755 --- a/src/main/io/serial_cli.c +++ b/src/main/io/serial_cli.c @@ -3811,47 +3811,43 @@ static void printResource(uint8_t dumpMask, master_t *defaultConfig) if (resourceTable[i].maxIndex > 0) { for (int index = 0; index < resourceTable[i].maxIndex; index++) { - ioTag_t ioPtr = *(resourceTable[i].ptr + index); - ioTag_t ioPtrDefault = *(resourceTable[i].ptr + index - (uint32_t)&masterConfig + (uint32_t)defaultConfig); + ioTag_t ioTag = *(resourceTable[i].ptr + index); + ioTag_t ioTagDefault = *(resourceTable[i].ptr + index - (uint32_t)&masterConfig + (uint32_t)defaultConfig); - IO_t io = IOGetByTag(ioPtr); - IO_t ioDefault = IOGetByTag(ioPtrDefault); - bool equalsDefault = io == ioDefault; + bool equalsDefault = ioTag == ioTagDefault; const char *format = "resource %s %d %c%02d\r\n"; const char *formatUnassigned = "resource %s %d NONE\r\n"; - if (DEFIO_TAG_ISEMPTY(ioDefault)) { + if (!ioTagDefault) { cliDefaultPrintf(dumpMask, equalsDefault, formatUnassigned, owner, RESOURCE_INDEX(index)); } else { - cliDefaultPrintf(dumpMask, equalsDefault, format, owner, RESOURCE_INDEX(index), IO_GPIOPortIdx(ioDefault) + 'A', IO_GPIOPinIdx(ioDefault)); + cliDefaultPrintf(dumpMask, equalsDefault, format, owner, RESOURCE_INDEX(index), IO_GPIOPortIdxByTag(ioTagDefault) + 'A', IO_GPIOPinIdxByTag(ioTagDefault)); } - if (DEFIO_TAG_ISEMPTY(io)) { + if (!ioTag) { if (!(dumpMask & HIDE_UNUSED)) { cliDumpPrintf(dumpMask, equalsDefault, formatUnassigned, owner, RESOURCE_INDEX(index)); } } else { - cliDumpPrintf(dumpMask, equalsDefault, format, owner, RESOURCE_INDEX(index), IO_GPIOPortIdx(io) + 'A', IO_GPIOPinIdx(io)); + cliDumpPrintf(dumpMask, equalsDefault, format, owner, RESOURCE_INDEX(index), IO_GPIOPortIdxByTag(ioTag) + 'A', IO_GPIOPinIdxByTag(ioTag)); } } } else { - ioTag_t ioPtr = *resourceTable[i].ptr; - ioTag_t ioPtrDefault = *(resourceTable[i].ptr - (uint32_t)&masterConfig + (uint32_t)defaultConfig); + ioTag_t ioTag = *resourceTable[i].ptr; + ioTag_t ioTagDefault = *(resourceTable[i].ptr - (uint32_t)&masterConfig + (uint32_t)defaultConfig); - IO_t io = IOGetByTag(ioPtr); - IO_t ioDefault = IOGetByTag(ioPtrDefault); - bool equalsDefault = io == ioDefault; + bool equalsDefault = ioTag == ioTagDefault; const char *format = "resource %s %c%02d\r\n"; const char *formatUnassigned = "resource %s NONE\r\n"; - if (DEFIO_TAG_ISEMPTY(ioDefault)) { + if (!ioTagDefault) { cliDefaultPrintf(dumpMask, equalsDefault, formatUnassigned, owner); } else { - cliDefaultPrintf(dumpMask, equalsDefault, format, owner, IO_GPIOPortIdx(ioDefault) + 'A', IO_GPIOPinIdx(ioDefault)); + cliDefaultPrintf(dumpMask, equalsDefault, format, owner, IO_GPIOPortIdxByTag(ioTagDefault) + 'A', IO_GPIOPinIdxByTag(ioTagDefault)); } - if (DEFIO_TAG_ISEMPTY(io)) { + if (!ioTag) { if (!(dumpMask & HIDE_UNUSED)) { cliDumpPrintf(dumpMask, equalsDefault, formatUnassigned, owner); } } else { - cliDumpPrintf(dumpMask, equalsDefault, format, owner, IO_GPIOPortIdx(io) + 'A', IO_GPIOPinIdx(io)); + cliDumpPrintf(dumpMask, equalsDefault, format, owner, IO_GPIOPortIdxByTag(ioTag) + 'A', IO_GPIOPinIdxByTag(ioTag)); } } }