Added gSPI mode for Infineon CYW43439 WiFi chip.
Summary
Added gSPI mode for Infineon CYW43439 WiFi chip.
Impact
In preparation for adding support for the Pico W, NuttX required changes to the networking software. The existing BCMF chips use SDIO to communicate with the processor. The 43439 in the Pi W uses gSPI. In order to use as much common code as possible, I implemented bcmf_gspi.c to parallel bcmf_spio.c. I also added a file bcmf_interface.c that server as an abstraction layer between the two.
Most files that used "struct bcmf_sdio_dev_s sbus" were changed to use "bcmf_interface_def_t ibus". The "sbus" name was kept in places specific to SDIO, where "gbus" is used in places specific to gSPI.
Testing
Have tested the Pico-W in general and the Pico-w WiFi access using telnet, telnetd, ping and renew.
I do not have the hardware to test the existing SPIO code. I have a Photon on order.
Known Bugs
DNS queries to don't currently work. See patch: https://github.com/apache/incubator-nuttx/pull/6841