Thank you for reply!
I checked example in my wiced stack (version 3.x). I think it is using platform gpio functions. So it is designed to control GPIO on MCU where Wiced Stack is running.
But I need to control GPIOs directly on CYW4343W so it does not solve my issue.
Am I right?
With many thanks Igor
2 of 2 people found this helpful
The snip function for gpio is for controlling the MCU GPIOs which is platform specific.
GPIO_0 is for host wake up which listens to Out-of-band interrupts. The OOB interrupt can be asserted with the platform GPIO_0 pin (as defined in the platform_config.h). Gpio1 is for antenna diversity and definition of it could be found in the NVRAM file(nvram parameter = swdiv_gpio). And the rest of the gpios are for coex. These are also set in the NVRAM and any changes in it needs to be followed up with a corresponding change in OTP memory.
You could find how GPIO control register is modified when a oob interrupt is asserted in wwd_bus_protocol.c . Here, backpane function wwd_bus_write_register_value() is used to write and modify the GPIO control register. The MCU use sdio interface to call these backpane functions and hence it is best to leave this function as it is.
Also there are no specific IOCTLs to send to WLAN chip inorder to control the GPIOs as well. Could you elaborate on the end objective for controlling the gpios of radio chip?
Hi vnak, the wwd_bus_write_register_value() function looks like solution I was looking for. Thanks!