aboutsummaryrefslogtreecommitdiff
path: root/src/ethosu_common.h
AgeCommit message (Collapse)Author
2021-11-01Autumn clean/refactor of NPU driverJonny Svärd
A continuation of the spring clean/refactor work. Create a better separation between driver and device(s). A short summary of what this commit contains: - Split device and driver - Simplify and hide the internal device interface - Remove (broken) abort inference functionality - Refactoring of structure - Optimizations and bugfixes Change-Id: I8988bc5f163f9ea62add2a933e4f100a82cc8d35
2021-07-08Improved Logging - Core Driver logging clean up21.08-rc321.08-rc221.08-rc121.08Anton Moberg
Made a separate header file for logging specific content. Cleaned up logging messages. Change-Id: Id329b40977156ca5b954b3a222effaedbc6b2a2c
2021-06-08Spring clean/refactor of NPU driverJonny Svärd
These changes mostly focus on creating a better structure for the driver. Creating a better separation between driver and device(s). A short summary of what this commit contains: - Move driver specific defines from device to driver - Prefix device functions with ethosu_dev - Remove device specific register access' from driver - Remove device specific debug/dump functions - Add function prototypes for weak functions - Remove legacy ARM_NPU_STUB support - Rename ethosu_device.c to ethosu_device_u55.c - Remove redundant irq handler prototype - Remove (deprecated) hardcoded instance ethosu_drv - Simplify versioning API Split driver version and hardware version/information so that driver version can be queried without a driver instance. - Improve and simplify logging Make warning the new default severity level to print and reduce severity levels to: err warning info debug - Add severity prefix to log lines. Error messages print file and line number, debug messages print function by default. - Clarify some log messages - Small optimizations and bugfixes Change-Id: I2dfbfc3a40d7eca133c82f187f422325e1e6d314
2021-05-26Optimizations21.05-rc3Kristofer Jonsson
Removing the ASSERT() makro using assert() instead. assert() is better controlled with the NDEBUG define. Using uintptr_t instead of uint32_t * for the NPU base address. This saves a division by 4 in the register read and write functions. Change-Id: I65a91fe35dc63666e50bdf7a756ad15b56dc66e9
2020-10-20PMU counter shadowKristofer Jonsson
Storing PMU counters in shadow variables, in case the PMU was powered off or soft reset. Change-Id: I64ccf3fb6195f9be2d8315891ec612bb75404885
2020-08-11Set default log severity in headersKristofer Jonsson
Change-Id: Ia984092db29cc5f1294ecdcf5c2b6b744c6d32b2
2020-08-05Header cleanupKristofer Jonsson
Change-Id: I84754f316ce940917516cb7f5c59189f523d4095
2020-07-17MLBEDSW-2596 Add support to set driver log severityBhavik Patel
The driver can log at one of the following levels: 0=emerg, 1=alert, 2=crit, 3=err, 4=warning, 5=notice, 6=info, 7=debug. The logs at or below the set level are printed whereas the higher level logs are not printed. Change-Id: I05a498d4c8c78112207187d9dceaa2386b138c5d
2020-07-03MLBEDSW-2378 Set NPU base address in ethosu_initBhavik Patel
Change-Id: I1145834000ff81d6e497a8fa77bf997478a80372
2020-07-02Move PMU functions from pmu_ethosu.h to ethosu_pmu.cBhavik Patel
This change is done as a prerequisite to be able to set base address for NPU through ethosu_init(). So instead of using a mamory mapped struct we use the same functions to read/write PMU registers as the rest of the ethos-u driver. Change-Id: Ie1f6e6af4627cbe9375e2b2d079ba8017b6294d3
2020-04-16Add Ethos-u core driverKristofer Jonsson
Change-Id: I541862775031c21e6483f26446a29dfe452382ab