Commit Graph

138 Commits (mbed-os-5.15.3-rc1)

Author SHA1 Message Date
Arun S 9b87551d40 Remove ethernet interface logic for SoftAP and STA
Issue: The problem is that there is a race condition introduced in that the LWIP thread is relying on the
interface as it is taken down by a application thread while calling disconnect.
In disconnect api called from application context, whd_emac_wifi_link_state_changed() will refer to netif interface
structure in its callback api netif_link_irq(netif). This netif will be cleared by remove_etherent_interface().
whd_emac_wifi_link_state_changed will post message to tcpip_thread. tcpip_thread will process the message and
call the callback api netif_link_irq(netif)
Calling sequence is whd_emac_wifi_link_state_changed -> remove_etherent_interface(). Hence there is a timing issue
that netif might be cleared first before tcpip thread process the message netif_link_irq(netif)

Fix: remove_etherent_interface() will post message to tcpip thread and tcpip:
thread process the message delete_interface()
which will actually remove the inferface from the netif_list.
Calling sequence is whd_emac_wifi_link_state_changed() message post -> remove_etherent_interface() message post.
message processing order netif_link_irq(netif) -> delete_interface().
Since both the processing is handled in single thread, processing of message is handled sequentially.
2020-04-21 22:15:25 +05:30
Kyle Kearney 6554e3951e Revert "Backport #12603: Add CYSBSYSKIT_01"
This reverts commit 4e6692b529.
There are issues with wifi connectivity on this target that mean
it is not ready to ship with 5.15.2.
2020-04-08 14:14:11 -07:00
Martin Kojtal 757f14b807
Merge pull request #12776 from JarkkoPaso/update_stm32_emac_ethernet_driver
Update stm32 emac ethernet driver
2020-04-08 18:35:32 +02:00
Arto Kinnunen 38f9a09f12 Update STM32 EMAC driver based on review
-Fix len type
-Use ETH_RX_BUF_SIZE instead of hard-coded value 1500
2020-04-08 14:11:50 +03:00
Arto Kinnunen 6d2bc4f144 Update STM32 EMAC driver - limit RX frame length
DISCO_F769NI EMAC driver may return ethernet packet with illegal
length when driver is under heavy load. In one case, the received
bytes indicate frame length of 53 bytes but advertised data length
was 65518 bytes. In another case EMAC driver variable
`EthHandle.RxFrameInfos.length` contained value 0xFFFF FFFC.

As a work-around accept only 1-1500 bytes long ethernet packets.
2020-04-08 14:11:21 +03:00
midd d55117f2aa WHD: Remove an assert from get_rssi()
This assert in WhdSTAInterface.cpp causes rssi greentea test to fail
on Cypress parts. This is because the rssi GT test expects the negative
test case to return 0 and not assert.
2020-04-07 12:25:18 -07:00
Dustin Crossman 4e6692b529 Backport #12603: Add CYSBSYSKIT_01 2020-04-02 15:02:44 -07:00
midd 8199e25f24 Backport #12394: Fix Cypress 1M SDIO + other minor bugs
- Remove wounding for the hardware CRYPTO block. The PSoC 6 MPN CYW9P62S1_43012EVB_01 was revised
  to add the hardware crypto block.
- Add missing error checks for emac power up.
- Add a multiplied by 2 in the SDIO clock divider calculation to account for internal UDB divider.
  Note: Fixes issues with intermittent WiFi firmware load failures on CY8CKIT_062_WIFI_BT,
  CYW943012P6EVB_01, CYW9P62S1_43012EVB_01, CYW9P62S1_43438EVB_01.
2020-04-02 14:49:22 -07:00
adbridge aa298c0769 Revert "Pairing fails when IPv6 enabled in SoftAP intf"
This reverts commit 18285e1fc1.
2020-02-06 11:27:33 +00:00
Arun S df72637b61 Pairing fails when IPv6 enabled in SoftAP intf Issue: udp_sendto() Fails for multicast IPV6 packet when interface is switched from SoftAP to STA mode. When SoftAP start is called, add_ethernet_interface() will be called internally to add interface details into netif_list. When switching from SoftAP to STA mode, add_ethernet_interface() will be called again to append the interace details into netif_list. When udp_sendto() is called, ip6_route() will return interface as NULL since it consider device as single interface. Fix: SoftAP mode Stop, call remove_ethernet_interface() to remove the interface from the netif_list. 2020-02-05 15:25:11 +00:00
jeromecoutant e7988b0541 STM EMAC: compilation issue with ARMC5 2020-02-05 14:40:24 +00:00
Hamza Rizwan aec9ed2be5 Fixes for Network WiFi Test Crashes 2019-12-11 10:45:56 +00:00
Balaji Subramanyam f51cc6494e Cypress Target update to support Manufacturing Test. (#11868)
Cypress Target update to support WiFi Manufacturing Test

Adding IOCTLS in WhdSTAInterface for MFG Test.
Fix WHD EMAC interface to release buffer when emac is not powered up or callback
is not registered.
2019-11-21 10:12:35 +01:00
fred.li cef6aba55e RESET for each connect operation 2019-11-19 12:08:06 +08:00
fred.li 18fa28db77 Disable UNISOC Reconnect patch, Optimize workaround for LWIP issue 2019-11-19 12:08:05 +08:00
fred.li 88cf7df286 1, Restrict access to 1st 4K of flash
2, Merge UNISOC change for auto reconnect patch
2019-11-19 12:08:05 +08:00
Martin Kojtal 609612c1f2
Merge pull request #11840 from morser499/pr/whd1.50
Update Cypress WifiHostDriver to version 1.50
2019-11-12 13:56:35 +01:00
Martin Kojtal f61979ab31
Merge pull request #11843 from kapi90/master
Fix ethernet memory handling issues on CM3DS
2019-11-12 13:56:13 +01:00
Bence Kaposzta 4dd7712ac7 Fix ethernet memory handling issues on CM3DS
Signed-off-by: Bence Kaposzta <bence.kaposzta@arm.com>
2019-11-12 10:57:20 +01:00
Ryan Morse 799146ba2f Move WHD from being a Target to being a Component 2019-11-11 15:12:02 -08:00
Bence Kaposzta 647216299f Fix ethernet memory handling issues on CM3DS
Signed-off-by: Bence Kaposzta <bence.kaposzta@arm.com>
2019-11-11 15:32:50 +01:00
Bence Kaposzta d5e89a25c6 Fix ethernet memory handling issues on CM3DS
Signed-off-by: Bence Kaposzta <bence.kaposzta@arm.com>
2019-11-11 14:39:08 +01:00
jeromecoutant 7fcedd20e1 DISCO STM32H747I ETHERNET support, but disabled.
Ethernet is disabled by default,
because some hardware modifications are required on the board DISCO_H747I.
see https://os.mbed.com/teams/ST/wiki/DISCO_H747I-modifications-for-Ethernet
2019-11-08 16:05:00 +01:00
Martin Kojtal 98072b24c8
Merge pull request #11748 from cydriftcloud/pr-dev/fix-spurious-link-down-up
Fix spurious link up/down when AP IP address range change
2019-10-28 09:28:54 +01:00
Martin Kojtal a44fd827c2
Merge pull request #11578 from cydriftcloud/pr-dev/ap-sta-op-sync
Add synchronization and switching between WhdSoftAPInterface and WhdSTAInterfaces
2019-10-25 13:36:10 +02:00
Lei Zhang d411d72196 MIDDLEWARE-2134: Fix spurious link up/down when AP IP address range changes
Fixed additional link down/up events in whd_wifi_link_state_change_handler by checking additional condition during the transition.
2019-10-24 18:43:07 -07:00
Martin Kojtal ab931ee27c
Merge pull request #11662 from cydriftcloud/pr-dev/sta-extended-scan
Allow WhdAccessPoint scan results with extended parameters
2019-10-24 10:26:07 +02:00
Lei Zhang 28884b589c Add synchronization and switching between SoftAP/STA
- A shared mutex is added for synchronization
- ScopedMutexLock is used to to protect
  - SoftAP: start, stop
  - STA: scan, join, disconnect
- Fix switching issue between SoftAP and STA mode for primary interface
  - Avoid reinit primary interface by getting mapping the current interface to the other one which is already on
  - In concurrent mode, STA is the default if it is up, otherwise SoftAP is default.
  - For non-concurrent mode, the most recent started interface is set as default.
2019-10-23 18:31:20 -07:00
Lei Zhang 7b16166d51 Allow WhdAccessPoint scan result with extended parameters
- Add WhdAccessPoint to include additional WHD scan info
- To save memory, only move assignment is supported for WhdAccessPoint
- Add scan_whd to scan for WhdAccessPoint
- Set set_blocking(false) to unsupported by return NSAPI_ERROR_UNSUPPORTED
2019-10-23 14:43:07 -07:00
Martin Kojtal e7d95f5f2a
Merge pull request #11536 from jeromecoutant/PR_STM32_EMAC
STM32 EMAC configuration update
2019-10-23 13:10:10 +02:00
Rohan Fletcher 02df759c37 OLIMEX_STM32E407_F407ZG: Added new target platform
Added Olimex STM32-E407 (STM32F407ZG) evaluation board.
USB, UART, External HS XTAL and Ethernet are all working correctly.
2019-10-10 09:20:28 +13:00
jeromecoutant af8ab49a74 Avoid compilation if target doesn't support EMAC 2019-10-07 14:01:48 +02:00
jeromecoutant 587393bb45 STM32 EMAC: move from TARGET_STM_EMAC to TARGET_STM 2019-10-07 10:57:31 +02:00
Martin Kojtal 3297bf4062
Merge pull request #11420 from tymoteuszblochmobica/cm3ds
Fixed smsc9220_emac link_out memory management.
2019-09-10 19:52:44 +02:00
Tymoteusz Bloch 2626d90266 Fixed msc9220_emac link_out memory management. 2019-09-04 13:59:36 +02:00
Lei Zhang 5a3562a76b Bringdown interface when stopping softap
The interface should be brought down when stopping softap.
2019-08-30 08:59:36 -07:00
Martin Kojtal c99b150bcf
Merge pull request #11356 from kyle-cypress/pr/whd-link-state-fix
Fix WHD link state change event handling
2019-08-30 07:44:40 +02:00
Martin Kojtal a65ed8c3d8
Merge pull request #11303 from jeromecoutant/PR_H743ZI2_480
NUCLEO_H743ZI2 : increase system clock from 400 MHz to 480 MHz
2019-08-29 17:10:06 +02:00
Lei Zhang 0b2e7bbef9 Use event handlers for link state callback
Allows DHCP to listen for device disconnect and refresh ip lease on reconnect.
2019-08-29 07:19:46 -07:00
Martin Kojtal 8ef742a49c
Merge pull request #11370 from u-blox/ublox_odin_driver_os_5_v3.7.1_rc1
Driver Updates + ARMC6 driver support + WIFI fixes
2019-08-29 13:35:06 +02:00
aqib-ublox 7f36fbc86e Driver Updates + ARMC6 driver support + wifi fixes 2019-08-29 11:33:29 +05:00
Kyle Kearney 8abada11f6 Add missing newlines to end of files 2019-08-28 10:56:15 -07:00
Lei Zhang b27653af6f Use individual headers instead of "mbed.h" 2019-08-28 10:56:15 -07:00
Kyle Kearney 26940e5c22 Add support for DHCP server with WHD 2019-08-28 10:56:15 -07:00
Kyle Kearney e64fdba7fc Update BSP and WifiInterface for WHD Changes 2019-08-28 10:56:14 -07:00
Martin Kojtal 67d1bb180b
Merge pull request #11319 from kyle-cypress/pr/whd-1.30-update
Update WHD to 1.30.0
2019-08-28 16:11:24 +02:00
Kyle Kearney 33493b12d9 Update WHD clients for interface changes 2019-08-26 16:05:47 -07:00
Martin Kojtal 02d1873c06
Merge pull request #11266 from u-blox/feature_adc_temp_conf
ADC internal temperature support and EMAC header fix
2019-08-26 11:08:47 +02:00
jeromecoutant 11e39febf6 STM EMAC : NUCLEO_H743ZI2 add 2019-08-23 09:46:56 +02:00
jeromecoutant b705a9894a STM EMAC : STM32H7 directory restructure 2019-08-23 09:46:17 +02:00