From c5941c40cce587814bed52a3645cb72150e6c755 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonny=20Sv=C3=A4rd?= Date: Tue, 1 Jun 2021 18:40:45 +0200 Subject: Remove hardcoded Ethos-U driver instance Adjust to updated Ethos-U driver Change-Id: Ie374c29bec2baee4717634588b22f6db419ad9a3 --- applications/driver_unit_tests/command_stream.cpp | 12 ++++++------ applications/driver_unit_tests/command_stream.hpp | 2 +- targets/corstone-300/target.cpp | 6 +++--- 3 files changed, 10 insertions(+), 10 deletions(-) diff --git a/applications/driver_unit_tests/command_stream.cpp b/applications/driver_unit_tests/command_stream.cpp index e099b73..2de1ae8 100644 --- a/applications/driver_unit_tests/command_stream.cpp +++ b/applications/driver_unit_tests/command_stream.cpp @@ -102,7 +102,7 @@ CommandStream::CommandStream(const DataPointer &_commandStream, drv(ethosu_reserve_driver()), commandStream(_commandStream), basePointers(_basePointers), pmu(drv, _pmuEvents) { // Disable clock gating, else the NPU PMU will be clock gated and report too few cycles - ethosu_set_clock_and_power(&drv->dev, ETHOSU_CLOCK_Q_DISABLE, ETHOSU_POWER_Q_DISABLE); + ethosu_dev_set_clock_and_power(&drv->dev, ETHOSU_CLOCK_Q_DISABLE, ETHOSU_POWER_Q_DISABLE); // Use simplified driver setup ethosu_set_power_mode(drv, true); @@ -115,16 +115,16 @@ CommandStream::~CommandStream() { int CommandStream::run(size_t repeat) { // Base pointer array - uint64_t baseAddress[ETHOSU_DRIVER_BASEP_INDEXES]; - size_t baseAddressSize[ETHOSU_DRIVER_BASEP_INDEXES]; - for (size_t i = 0; i < ETHOSU_DRIVER_BASEP_INDEXES; i++) { + uint64_t baseAddress[ETHOSU_BASEP_INDEXES]; + size_t baseAddressSize[ETHOSU_BASEP_INDEXES]; + for (size_t i = 0; i < ETHOSU_BASEP_INDEXES; i++) { baseAddress[i] = reinterpret_cast(basePointers[i].data); baseAddressSize[i] = reinterpret_cast(basePointers[i].size); } while (repeat-- > 0) { int error = ethosu_invoke( - drv, commandStream.data, commandStream.size, baseAddress, baseAddressSize, ETHOSU_DRIVER_BASEP_INDEXES); + drv, commandStream.data, commandStream.size, baseAddress, baseAddressSize, ETHOSU_BASEP_INDEXES); if (error != 0) { printf("Inference failed. error=%d\n", error); @@ -134,7 +134,7 @@ int CommandStream::run(size_t repeat) { // Wait for interrupt while (true) { uint16_t status; - ethosu_get_status_mask(&drv->dev, &status); + ethosu_dev_get_status_mask(&drv->dev, &status); // Return if NPU raise error status if (status & 0xcc) { diff --git a/applications/driver_unit_tests/command_stream.hpp b/applications/driver_unit_tests/command_stream.hpp index 4a0b602..2004b03 100644 --- a/applications/driver_unit_tests/command_stream.hpp +++ b/applications/driver_unit_tests/command_stream.hpp @@ -74,7 +74,7 @@ private: * CommandStream ****************************************************************************/ -using BasePointers = std::array; +using BasePointers = std::array; class CommandStream { public: diff --git a/targets/corstone-300/target.cpp b/targets/corstone-300/target.cpp index 2344995..541d4a5 100644 --- a/targets/corstone-300/target.cpp +++ b/targets/corstone-300/target.cpp @@ -60,7 +60,7 @@ __attribute__((aligned(16), section(".bss.ethosu_scratch"))) uint8_t ethosu_scra #endif #ifdef ETHOSU -struct ethosu_driver *ethosu0_driver = ðosu_drv; +struct ethosu_driver ethosu0_driver; #endif static uintptr_t ethosu_ta_base_addrs[ETHOSU_NPU_COUNT][ETHOSU_NPU_TA_COUNT] = { @@ -135,7 +135,7 @@ void HardFault_Handler() { #ifdef ETHOSU void ethosuIrqHandler() { - ethosu_irq_handler(ethosu0_driver); + ethosu_irq_handler(ðosu0_driver); } #endif @@ -158,7 +158,7 @@ void targetSetup() { #ifdef ETHOSU // Initialize Ethos-U NPU driver - if (ethosu_init(ethosu0_driver, + if (ethosu_init(ðosu0_driver, reinterpret_cast(ETHOSU_BASE_ADDRESS), ethosu_scratch, ETHOSU_FAST_MEMORY_SIZE, -- cgit v1.2.1