[PATCH v6 0/3] Add Amlogic secure monitor driver

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




From: Carlo Caione <carlo@xxxxxxxxxxxx>

In the Amlogic SoCs the secure monitor calls are used for a lot of reasons:
interact with the NVMEM (efuses), check the reboot reason, set USB boot, ...

This driver defines a generic interface towards the secure monitor that can be
used by more specialized drivers to interact with the secure monitor itself
without worrying about bounce buffers managing.

Changelog:

v6:
  * Added comments
  * Fix checking u32 < 0
  * s/-ENODEV/-EINVAL/ in the probe function
  * Use WARN_ON()

v5:
  * Moved IDs from DT to header file
  * Made read/write bounce buffers not mandatory
  * Introduced helper meson_sm_map_shmem()

v4:
  * Changed patches order
  * Removed now useless PATCH 2/4
  * Changed compatible to be SoC-specific
  * In the DT now we use SoC-agnostic IDs for the SMC functions. These IDs are
    traslated into SoC specific function IDs inside the driver
  * Added error checking on meson_sm_call() to retrieve the base address
  * Improved printing on errors

v3:
  * Moved driver to drivers/firmware
  * Added EXPORT_SYMBOL macros
  * Changed '_' in '-'
  * Introduced 'struct meson_sm_firmware' and 'meson_sm_get_fw()' to be used by
    drivers using the secure-monitor to enforce probe ordering

v2:
  * All the SMC function identifiers are now in a SoC-specific header file to
    be included by the DTS files so the SMC commands are now defined in the DT
    instead to be hardcoded into the driver
  * Patchset is no longer an RFC
  * Better error management and boundary checking
  * s/unsigned int/u32/
  * SMC call not only on CPU 0
  * Fix memory leaking
  * s/amlogic/meson/ in the directory names

Carlo Caione (3):
  firmware: Amlogic: Add secure monitor driver
  documentation: Add secure monitor binding documentation
  ARM64: dts: amlogic: gxbb: Enable secure monitor

 .../bindings/firmware/meson/meson_sm.txt           |  29 +++
 arch/arm64/boot/dts/amlogic/meson-gxbb.dtsi        |   8 +
 drivers/firmware/Kconfig                           |   1 +
 drivers/firmware/Makefile                          |   1 +
 drivers/firmware/meson/Kconfig                     |   8 +
 drivers/firmware/meson/Makefile                    |   1 +
 drivers/firmware/meson/meson_sm.c                  | 283 +++++++++++++++++++++
 include/linux/firmware/meson/meson_sm.h            |  32 +++
 8 files changed, 363 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/firmware/meson/meson_sm.txt
 create mode 100644 drivers/firmware/meson/Kconfig
 create mode 100644 drivers/firmware/meson/Makefile
 create mode 100644 drivers/firmware/meson/meson_sm.c
 create mode 100644 include/linux/firmware/meson/meson_sm.h

-- 
2.7.4

--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]
  Powered by Linux