- Feb 24, 2022
-
-
Signed-off-by:
Qinghao Shi <qinghao.shi@arm.com>
-
Signed-off-by:
Qinghao Shi <qinghao.shi@arm.com>
-
* Ensure the copyright year is updated for modified files * Ensure the SPDX identifier is added Signed-off-by:
Hugues Kamba-Mpiana <hugues.kambampiana@arm.com>
-
An application that uses MCU-Driver-HAL can decide to either use the default startup and linker files by linking `<board>-startup`, or provide its own using `target_sources()` for startup file and `target_link_options()` for linker script. The Open IoT SDK uses the default startup and linker files for some of its example, and we want all names referenced in the SDK to be without "mbed". Use the prefix "mdh-" instead. Signed-off-by:
Lingkai Dong <lingkai.dong@arm.com>
-
Signed-off-by:
Lingkai Dong <lingkai.dong@arm.com>
-
Signed-off-by:
Qinghao Shi <qinghao.shi@arm.com>
-
* Ensure certain flags are inspected before performing operations as recommended in the datasheet. * Clear RX FIFO after reception of data to ensure 4-byte end alignment so subsequent data can be received. * Remove unused structure member in `smsc9220_eth_dev_data_t` data type. * Rename certain functions by using common abbreviations. This fix ensures that MPS3 FPGA passes all MDH EMAC tests. Signed-off-by:
Hugues Kamba-Mpiana <hugues.kambampiana@arm.com>
-
Rename references of `MCU-Driver-HAL` to `mcu-driver-hal` to match the letter case of the repository. Signed-off-by:
Hugues Kamba-Mpiana <hugues.kambampiana@arm.com>
-
All references of `FOO` and `foo` have been replaced with `MDH` or `mdh` respectively. This was applied to all files content. Furthermore, the `foo_bar` directory was renamed `mdh_arm`. Signed-off-by:
Hugues Kamba-Mpiana <hugues.kambampiana@arm.com>
-
The application defined data is passed at initialisation and is passed back to the application when the callbacks are executed. Signed-off-by:
Hugues Kamba-Mpiana <hugues.kambampiana@arm.com>
-
Add the infrastructure to ensure that the unicast burst test is invoked after emac_init/broadcast/unicast test. Signed-off-by:
Bilal Wasim <muhammadbilal.wasim@arm.com>
-
Signed-off-by:
Vincent Coubard <vincent.coubard@arm.com>
-
The test cases expect files with the .elf extension. Set CMAKE_EXECUTABLE_SUFFIX appropriately. Signed-off-by:
Robert Walton <rob.walton@arm.com>
-
Remove all uses of MBED_TOOLCHAIN from the CMake code and the docs. Also delete the variable in mbed_config.cmake. Signed-off-by:
Robert Walton <rob.walton@arm.com>
-
Parent projects don't always want to build the examples. Add an option to disable building the example projects. Signed-off-by:
Robert Walton <rob.walton@arm.com>
-
Consumers of the HAL implementation don't want to build its tests. Add the standard CMake idiom to only build tests if this is the top level project and BUILD_TESTING is enabled. BUILD_TESTING is enabled by including the CTest module. Signed-off-by:
Robert Walton <rob.walton@arm.com>
-
CMake 3.21 onwards includes a fix for the ARMClang toolchain to remove the default addition of flags based on the value CMAKE_SYSTEM_PROCESSOR. This means we do not need to set POLICY CMP0123 in the HAL ARMClang toolchain file, and we do not need to propagate the policy scope to consumers. Signed-off-by:
Robert Walton <rob.walton@arm.com>
-
MCU-Driver-HAL has been modified to use a standard toolchain file workflow. The requirement for including app.cmake from the HAL has been removed. We now expect users to set CMAKE_TOOLCHAIN_FILE with the toolchain file needed. The toolchain files have been moved out of the HAL to a separate repo, which is added as a submodule to the HAL for convenience. Update MCU-Driver-HAL submodule so we can use the toolchain file workflow. Remove app.cmake as it no longer exists. Include the mbed_config.cmake files directly rather than relying on app.cmake to include those config files. Update the CI scripts to use toolchain files instead of setting MBED_TOOLCHAIN. Signed-off-by:
Robert Walton <rob.walton@arm.com>
-
The EMAC test case that tests that multiple messages of random lengths (up to the MTU) can be transmitted and received can now be run for supported implementations. Signed-off-by:
Hugues Kamba-Mpiana <hugues.kambampiana@arm.com>
-
Signed-off-by:
Qinghao Shi <qinghao.shi@arm.com>
-
Signed-off-by:
Saheer Babu <saheer.babu@arm.com>
-
The EMAC test case that tests that various message lengths (up to the MTU) can be received and transmitted can now be run for supported implementations. Note: The test passes when ran on FPV but not on the FPGA. Signed-off-by:
Hugues Kamba-Mpiana <hugues.kambampiana@arm.com>
-
Update the referenced tarball name for the FVP to match the name downloaded when running wget. Without this change, the tar command will error if run without modification, due to not finding the tarball that was just downloaded. Fixes 289e0ca003ba ("FVP: Use latest version of FVP_Corstone_SSE-300_Ethos-U55 ") Signed-off-by:
Jaeden Amero <jaeden.amero@arm.com>
-
Add the infrastructure to ensure that the unicast test is invoked after emac_init/broadcast test. Also update the reference to MCU-Driver-HAL Signed-off-by:
Bilal Wasim <muhammadbilal.wasim@arm.com>
-
The previous version of GCC, 10-2020-q4-major, is not the latest and has issues with CMSE that causes PSA API calls to fail when TF-M is used. We've switched the Open IoT SDK to use the latest version 10.3-2021.10, and for consistency across our projects, we update the version used in this repo too. Signed-off-by:
Lingkai Dong <lingkai.dong@arm.com>
-
The pointer member `data` of the `gs_eth_device` object was used before being initialised. Create an instance to assign to the ` data` member in the static initialisation. Also add check for members before use in native driver. Signed-off-by:
Hugues Kamba-Mpiana <hugues.kambampiana@arm.com>
-
Functions implemented include: power_up, power_down, transmit, receive, and ETHERNET_Handler Signed-off-by:
Hugues Kamba-Mpiana <hugues.kambampiana@arm.com>
-
FVP_Corstone_SSE-300_Ethos-U55 version 11.15.xx includes fixes to enable Ethernet which is essential to working with EMAC. Signed-off-by:
Hugues Kamba-Mpiana <hugues.kambampiana@arm.com>
-
* Read Phy Status Out register at init to deassert them * Ensure the correct MAC register bank is selected when enabling Transmission at init * Drive the MDO pin correctly * Ensure MMU cmd are correctly issued * Return the correct status of the operation to allocate TX memory * Advertise capabilities before setting the PHY speed * Issue the correct value to reset the PHY * Enable Chip ID revision check as it was confirmed that the FVP implementation does implement the content of the MAC Revision register * Correct Bank select register bit mask * Correctly Bank select register bit setting * Remove CRC processing in Tx and Rx * Correctly process Rx data * Correctly auto increment the Tx Fifo on transmit Signed-off-by:
Hugues Kamba-Mpiana <hugues.kambampiana@arm.com>
-
The selected register bank and content of the pointer register need to be preserved during an ISR as they can change depending on the operation performed in the ISR. The commit also include changes to improve readability of the select_registers_bank() function. Signed-off-by:
Hugues Kamba-Mpiana <hugues.kambampiana@arm.com>
-
Functions implemented include: power_up, power_down, transmit, receive, and ETHERNET_Handler Signed-off-by:
Hugues Kamba-Mpiana <hugues.kambampiana@arm.com>
-
* Update reference of MCU-Driver-HAL to include the broadcast test as well as changes to the EMAC API. * Add the broadcast test to the test case list Signed-off-by:
Hugues Kamba-Mpiana <hugues.kambampiana@arm.com>
-
Filip Jagodzinski authored
Signed-off-by:
Filip Jagodzinski <filip.jagodzinski@arm.com>
-
The address NS_CODE_START and size NS_CODE_SIZE for TF-M non-secure side application code is calculated in region_defs.h, depending on whether TF-M has bootloader enabled, so those macros should be used when TF-M is enabled. Otherwise, boot from 0x0 which is the Instruction TCM region. Signed-off-by:
Lingkai Dong <lingkai.dong@arm.com>
-
The driver provides the same functionalities but is better structured, abstracted, documented, easier to understand, conscious of edge cases, closer to datasheet recommendations, and at least without two bugs from the existing driver. See below some of the potential bugs found in the existing driver and other improvements made. Bugs found (and fixed) * Byte count size at transmit and reception of frame omits CRC which is included because bits NOCRC and STRIP_CRC have not been set the TCR and RCR MAC registers respectively * Incorrect register read for link status * Does not select the correct register bank before accessing a register in bank 0 in device initialisation * Does not wait when issuing MMU commands * Blindly takes the ALLOCATED PACKET NUMBER without checking FAILED bit first * Does not poll ALLOC_INT after sending the ALLOC_TX Command * Does not wait 50mS after resetting the PHY Improvements: * Advertises capabilities at init * Check device ID at init Signed-off-by:
Hugues Kamba-Mpiana <hugues.kambampiana@arm.com>
-
Implement setup code to build the initialisation test Signed-off-by:
Hugues Kamba-Mpiana <hugues.kambampiana@arm.com>
-
Implement driver and interface with the LAN9220 Ethernet controller. Signed-off-by:
Hugues Kamba-Mpiana <hugues.kambampiana@arm.com>
-
Implement driver and interface with the LAN91C111 Ethernet controller. Signed-off-by:
Hugues Kamba-Mpiana <hugues.kambampiana@arm.com>
-
The file has been imported from https://gerrit.oss.arm.com/admin/repos/iot-sw/shared/native_drivers/ethernet_smsc9220 as it will be used for interfacing with the Ethernet controller used by the FPGA. Signed-off-by:
Hugues Kamba-Mpiana <hugues.kambampiana@arm.com>
-
The file has been imported from https://gitlab.arm.com/iot/open-iot-sdk/examples/keyword as it will be used for interfacing with the Ethernet controller used by the FVP. Signed-off-by:
Hugues Kamba-Mpiana <hugues.kambampiana@arm.com>
-