Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • PSM (Persistent Storage Manager) component is responsible for the storage of default/system configurations.
  • Provides software interfaces and abstractions to read/write variables stored in persistent storage and read factory config variables.
  • PSM holds mainly parameters related to hardware configuration.
  • In dual processor architecture a process running in peer processor can access PSM DB over DBUS.
  • All defaults/system configuration which are not modified during runtime are part of PSM.
  • PSM should be up and running for normal configuration of RDKB unit.
  • For WiFi initialization, PSM holds all default values of OEM specific custom parameters which is fetched through PSM HAL.

Architecture

 

...

draw.io Diagram

...

diagramNameArchitectural view of PSM sub-system diagram.drawio

...

revision1

Figure 1 - Architectural view of PSM sub-system

Code Flow

Initialization

name
Gliffy Diagram
macroId234d7b69-dddb-4d74-adb1-c9b5043ca3f0
draw.io Diagram
diagramNameInitialization of PSM sub-system diagram.drawio
pagePinrevision21

Figure 2 - Initialization of PSM sub-system

...

  • First copy the current system file into the backup file
  • Then flush the configuration into the current file

Reading configuration

Gliffy Diagram
macroId91c03be6-3b6e-4da9-8a5c-e70b3f4778db
name
draw.io Diagram
diagramNameReading Configuration Diagram.drawio
pagePinrevision1

Figure 3 - Reading Configuration

...

Restore configuration is tried first from the current system file. If it passes the verification, read is done otherwise restore configuration is tried from the backup system file. If it passes the verification, read is done otherwise restores the factory default configuration. This step has to succeed since there is no any other plan to back it up.

Get values from PSM

Gliffy Diagramdrawio
namediagramNameRetrieving Parameter.drawio
pagePinrevision1

Figure 4 - Retrieving Parameter

Using CLI utility:
psmcli get <parameter name as in bbhm file>
Eg: psmcli get eRT.com.cisco.spvtg.ccsp.Device.WiFi.NotifyWiFiChanges

Set values for PSM

pagePin
Gliffy Diagram
macroId6b81596a-97e3-4eae-96d7-dfa680a4f352
nameSetting Parameter
draw.io Diagram
diagramNameSetting Parameter.drawio
revision1

Figure 5 - Setting Parameter

...