Skip to contentSkip to conversation

Qualcomm SMEM driver

PATCH New Ramon Fried 1 participant 1 message Jul 1, 2018

lore
Share & tools
lore
#0 lore raw

v5 cover Qualcomm SMEM driver

This patchset introduces Qualcomm's shared memory manager. In U-boot context, it will allow reading board specific information (IE. RAM address, RAM size) that was prepopulated by the SBL.

As part of the patchset a new uclass id is introduced, UCLASS_SMEM.

Changes in v5:
(As suggested by Simon Glass)
- Add more documentation to smem.h describing item/host parameters.

Changes in v4:
- Fixed typo in function name.

Changes in v3:
(As suggested by Simon Glass)
- Fixed line wrap
- Fixed smem_get_free_space() interface to match smem_get_free_space()
- Added more documentation to ops.
- Removed license, SPDX is enough.
- Text and grammar fixes.
- Adapt to smem_get_free_space() new interface in series 3.

Changes in v2:
(As suggested by Simon Glass)
- Introduced a new dm class (CLASS_SMEM) instead of CLASS_SOC.
- Added sandbox driver
- Added testing for DM class.
- Applied checkpatch fixes (also sent these to Linux upstream)
- Changed UCLASS_SOC to UCLASS_SMEM
- Removed function exports and registered functionality through .ops

Ramon Fried (6):
dm: SMEM (Shared memory) uclass
soc: qualcomm: Add Shared Memory Manager driver
dts: db410c: added smem nodes
dts: db820c: added smem nodes
drivers: smem: sandbox
test: smem: add basic smem test

 MAINTAINERS                             |   1 +
 arch/arm/Kconfig                        |   2 +
 arch/arm/dts/dragonboard410c-uboot.dtsi |   5 +
 arch/arm/dts/dragonboard410c.dts        |  16 +
 arch/arm/dts/dragonboard820c-uboot.dtsi |   4 +
 arch/arm/dts/dragonboard820c.dts        |  16 +
 arch/sandbox/dts/test.dts               |   4 +
 configs/sandbox64_defconfig             |   2 +
 configs/sandbox_defconfig               |   2 +
 drivers/Kconfig                         |   2 +
 drivers/Makefile                        |   1 +
 drivers/smem/Kconfig                    |  24 +
 drivers/smem/Makefile                   |   7 +
 drivers/smem/msm_smem.c                 | 932 ++++++++++++++++++++++++
 drivers/smem/sandbox_smem.c             |  45 ++
 drivers/smem/smem-uclass.c              |  45 ++
 include/dm/uclass-id.h                  |   1 +
 include/smem.h                          |  91 +++
 test/dm/Makefile                        |   1 +
 test/dm/smem.c                          |  28 +
 20 files changed, 1229 insertions(+)
 create mode 100644 drivers/smem/Kconfig
 create mode 100644 drivers/smem/Makefile
 create mode 100644 drivers/smem/msm_smem.c
 create mode 100644 drivers/smem/sandbox_smem.c
 create mode 100644 drivers/smem/smem-uclass.c
 create mode 100644 include/smem.h
 create mode 100644 test/dm/smem.c
Signature · 1 line
2.17.1