Hi, I am actually trying to use more GPIO's in my bootloader application. Now I have the problem that if I like to use GPIO 30, 31, 32 then the function CyFx3BootDeviceConfigureIOMatrix returns with BAD_ARGUMENT. the file cyfx3device.h says at the function description of CyFx3BootDeviceConfigureIOMatrix following: This API completes the IO configuration based on the user specified parameters. Any pin that is not used as part of the GPIF or serial peripheral interfaces can be used as a GPIO. These GPIO's 30..32 are the PMODE pins and I like to read the states of these pins. I also like to use GPIO20(GPIF SLRD) and GPIO53(SPI_SCK). Is there or will there be a function like in the FX3 SDK to Override GPIO pins? thanks, lumpi

GPIO API source is available in SDK "firmware\lpp_source" directory. See file "cyu3gpio.c" there. You can bypass most of argument checking instructions there. For example below is my variant of CyFx3BootGpioSetSimpleConfig. Note, you need also to include "gpio_regs.h" file from "firmware\u3p_firmware\inc" directory.