Commit Graph

24 Commits

Author SHA1 Message Date
Emil Obalski 27186a8606 drivers: hwinfo: Use HAL for reading deviceID.
Do not refer to registers directly when reading DEVICEID.
Rely on HAL instead.

Signed-off-by: Emil Obalski <emil.obalski@nordicsemi.no>
2019-12-17 09:11:37 +01:00
Emil Obalski dddc435f80 drivers: hwinfo: Depend HWINFO_NRF on all SoCs
Depend chosing HWINFO_NRF on any nRF device.

Signed-off-by: Emil Obalski <emil.obalski@nordicsemi.no>
2019-12-17 09:11:37 +01:00
Ulf Magnusson bd6e04411e kconfig: Clean up header comments and make them consistent
Use this short header style in all Kconfig files:

    # <description>

    # <copyright>
    # <license>

    ...

Also change all <description>s from

    # Kconfig[.extension] - Foo-related options

to just

    # Foo-related options

It's clear enough that it's about Kconfig.

The <description> cleanup was done with this command, along with some
manual cleanup (big letter at the start, etc.)

    git ls-files '*Kconfig*' | \
        xargs sed -i -E '1 s/#\s*Kconfig[\w.-]*\s*-\s*/# /'

Signed-off-by: Ulf Magnusson <Ulf.Magnusson@nordicsemi.no>
2019-11-04 17:31:27 -05:00
Jakub Wegnerowski ab1ba3d4cf drivers: hwinfo: Add LiteX DNA driver
This commit adds driver supporting reading DNA ID value for LiteX SoC
builder.

Signed-off-by: Jakub Wegnerowski <jwegnerowski@internships.antmicro.com>
Signed-off-by: Mateusz Holenko <mholenko@antmicro.com>
2019-09-21 21:36:00 +02:00
Andy Ross 643701aaf8 kernel: syscalls: Whitespace fixups
The semi-automated API changes weren't checkpatch aware.  Fix up
whitespace warnings that snuck into the previous patches.  Really this
should be squashed, but that's somewhat difficult given the structure
of the series.

Signed-off-by: Andy Ross <andrew.j.ross@intel.com>
2019-09-12 11:31:50 +08:00
Andy Ross 075c94f6e2 kernel: Port remaining syscalls to new API
These calls are not accessible in CI test, nor do they get built on
common platforms (in at least one case I found a typo which proved the
code was truly unused).  These changes are blind, so live in a
separate commit.  But the nature of the port is mechanical, all other
syscalls in the system work fine, and any errors should be easily
corrected.

Signed-off-by: Andy Ross <andrew.j.ross@intel.com>
2019-09-12 11:31:50 +08:00
Anas Nashif 9ab2a56751 cleanup: include/: move misc/printk.h to sys/printk.h
move misc/printk.h to sys/printk.h and
create a shim for backward-compatibility.

No functional changes to the headers.
A warning in the shim can be controlled with CONFIG_COMPAT_INCLUDES.

Related to #16539

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2019-06-27 22:55:49 -04:00
Anas Nashif f901e26de9 cleanup: include/: move hwinfo.h to drivers/hwinfo.h
move hwinfo.h to drivers/hwinfo.h and
create a shim for backward-compatibility.

No functional changes to the headers.
A warning in the shim can be controlled with CONFIG_COMPAT_INCLUDES.

Related to #16539

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2019-06-27 22:55:49 -04:00
Kumar Gala a2693975d7 dts: Convert from DT_<COMPAT>_<INSTANCE>_<PROP> to DT_INST...
Change code from using now deprecated DT_<COMPAT>_<INSTANCE>_<PROP>
defines to using DT_INST_<INSTANCE>_<COMPAT>_<PROP>.

Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
2019-06-14 08:02:15 -05:00
Leandro Pereira 05351dbf9d drivers: hwinfo: Add support for ESP32
ESP32 can sport up to 4 network interfaces: two 802.11 (station and
ap), ethernet, and bluetooth.  All of them derive from the same RDATA
register in efuse block 0.  However, in most cases, the last (sixth)
octet will change like so:

  - 802.11 station:  mac[5] += 0
  - 802.11 ap:       mac[5] += 1
  - bluetooth:       mac[5] += 2
  - ethernet:        mac[5] += 3

Read "Number of universally admnistered MAC address" section in esp-idf
documentation[1] for more information.

[1] https://docs.espressif.com/projects/esp-idf/en/latest/

Signed-off-by: Leandro Pereira <leandro@hardinfo.org>
2019-05-30 09:28:50 -04:00
Benjamin Valentin c43067047c drivers: hwinfo: add driver support for Atmel SAM0 device ID
Add driver support for Atmel SAM0 device ID, which is 16-bytes long.
The device ID can simply be read from memory at a known location, but
the location is only described in the data sheet, not in ASF.

For SAMD2x it's 0x0080A00C, 0x0080A040, 0x0080A044 & 0x0080A048.
For SAMD5x it's 0x008061FC, 0x00806010, 0x00806014 & 0x00806018.

This adds a new property to the device tree to define the device ID
registers for this SoC family.

Signed-off-by: Benjamin Valentin <benjamin.valentin@ml-pa.com>
2019-04-18 17:54:30 -04:00
Anas Nashif 3ae52624ff license: cleanup: add SPDX Apache-2.0 license identifier
Update the files which contain no license information with the
'Apache-2.0' SPDX license identifier.  Many source files in the tree are
missing licensing information, which makes it harder for compliance
tools to determine the correct license.

By default all files without license information are under the default
license of Zephyr, which is Apache version 2.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2019-04-07 08:45:22 -04:00
Aurelien Jarno bf59fcb78c drivers: hwinfo: add driver support for Atmel SAM device ID
Add driver support for Atmel SAM device ID, which is 16-bytes long. On
this SoC family, the device ID is part of the flash controller and
complex to read. Therefore the driver reads it once at boot time and
then just returned the copy saved in RAM.

Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
2019-03-25 15:55:48 -04:00
Patrik Flykt 4344e27c26 all: Update reserved function names
Update reserved function names starting with one underscore, replacing
them as follows:
   '_k_' with 'z_'
   '_K_' with 'Z_'
   '_handler_' with 'z_handl_'
   '_Cstart' with 'z_cstart'
   '_Swap' with 'z_swap'

This renaming is done on both global and those static function names
in kernel/include and include/. Other static function names in kernel/
are renamed by removing the leading underscore. Other function names
not starting with any prefix listed above are renamed starting with
a 'z_' or 'Z_' prefix.

Function names starting with two or three leading underscores are not
automatcally renamed since these names will collide with the variants
with two or three leading underscores.

Various generator scripts have also been updated as well as perf,
linker and usb files. These are
   drivers/serial/uart_handlers.c
   include/linker/kobject-text.ld
   kernel/include/syscall_handler.h
   scripts/gen_kobject_list.py
   scripts/gen_syscall_header.py

Signed-off-by: Patrik Flykt <patrik.flykt@intel.com>
2019-03-11 13:48:42 -04:00
Alexander Wachter 1ed18b8988 drivers: hwinfo: change stm32 device id driver from HAL to LL
Use LL drivers instead of HAL driver because LL driver is available
for all soc while HAL driver is not.

Signed-off-by: Alexander Wachter <alexander.wachter@student.tugraz.at>
2019-03-09 16:05:20 -05:00
Daniel Egger d4d75eb1da shell: Make sure digits of the device id are rendered with 2 hex digits
This is achieved by a simple change to the formatter, fixing it to 2 hex
digits with 0 padding.

Signed-off-by: Daniel Egger <daniel@eggers-club.de>
2019-03-09 10:05:01 -05:00
Krzysztof Chruscinski 3605e48c44 shell: Modify subcommands to use SHELL_STATIC_SUBCMD_SET_CREATE
It is planned to deprecate SHELL_CREATE_STATIC_SUBCMD_SET macro
which is replaced by SHELL_STATIC_SUBCMD_SET_CREATE.

Additionally, removed irrelevant comments about alphabetical
ordering which is no longer needed.

Signed-off-by: Krzysztof Chruscinski <krzysztof.chruscinski@nordicsemi.no>
2019-02-20 07:31:35 -05:00
Aurelien Jarno 2682170502 drivers: hwinfo: fix shell dependency
The hwinfo shell uses shell functions and thus doesn't build when
CONFIG_SHELL=n. Fix that by adding a dependency on SHELL.

Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
2019-02-10 12:24:04 -05:00
Alexander Wachter ad92d5bfe9 drivers: hwinfo: add driver support for NXP i.mx RT device ID
Add driver support for NXP i.mx RT ID device.
This device has an ID of 8 bytes.

Signed-off-by: Alexander Wachter <alexander.wachter@student.tugraz.at>
2019-02-07 15:08:18 -06:00
Alexander Wachter 50156e0ea9 drivers: hwinfo: add driver support for kinetis device ID
Add driver support for kinetis ID device.
The length depends on the SoC.
`SIM_GetUniqueId` was not used because the struct would reorder
the ID and makes the driver more complicated because the length
of the struct depends on the SoC.

Signed-off-by: Alexander Wachter <alexander.wachter@student.tugraz.at>
2019-02-07 15:08:18 -06:00
Alexander Wachter 7b1e9e9b34 drivers: hwinfo: Add shell command for device id
This commit adds support for device id shell command.
Example:
uart:~$ hwinfo devid
Length: 12
ID: 0x1b0320d51485330313420

Signed-off-by: Alexander Wachter <alexander.wachter@student.tugraz.at>
2019-02-04 14:53:50 -05:00
Alexander Wachter 841f72f81e drivers: hwinfo: add driver support for Nordic NRF device ID
Add driver support for Nordic NRF ID device.
This device has an ID of 8 bytes.

Signed-off-by: Alexander Wachter <alexander.wachter@student.tugraz.at>
2019-02-03 12:07:20 -05:00
Alexander Wachter 8f3e6ab5d2 drivers: hwinfo: add driver support for STM32 device ID
Add driver support for STM32 ID device.
This device has an ID of 12 bytes.

Signed-off-by: Alexander Wachter <alexander.wachter@student.tugraz.at>
2019-02-03 12:07:20 -05:00
Alexander Wachter 5b59c10fc4 drivers: Add hwinfo API
This commit adds a new hardware info API.
With this API it is possible to read out the device ID.

Signed-off-by: Alexander Wachter <alexander.wachter@student.tugraz.at>
2019-02-03 12:07:20 -05:00