diff options
author | Michal Simek <michal.simek@xilinx.com> | 2022-01-14 13:25:38 +0100 |
---|---|---|
committer | Michal Simek <michal.simek@xilinx.com> | 2022-02-15 13:04:03 +0100 |
commit | fac46bc446e0ca2e5bd8fa4d28f243ee4a1d8995 (patch) | |
tree | 0998e9391c6dc3cc45d90fda53f5ed662b91d4a9 /drivers/firmware | |
parent | c750c6dbb29535efa01464d46afc6ccf999cf7c5 (diff) | |
download | u-boot-fac46bc446e0ca2e5bd8fa4d28f243ee4a1d8995.zip u-boot-fac46bc446e0ca2e5bd8fa4d28f243ee4a1d8995.tar.gz u-boot-fac46bc446e0ca2e5bd8fa4d28f243ee4a1d8995.tar.bz2 |
arm64: zynqmp: Add command for disabling loading other overlays
Add command "zynqmp pmufw node close" to disable permission to load
additional pmufw config overlays. This command will make sure that any
other sw will ask for changing permission.
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Link: https://lore.kernel.org/r/cfa5cc7909eb8deb23eb0f11c26954cbaddeb861.1642163135.git.michal.simek@xilinx.com
Diffstat (limited to 'drivers/firmware')
-rw-r--r-- | drivers/firmware/firmware-zynqmp.c | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/drivers/firmware/firmware-zynqmp.c b/drivers/firmware/firmware-zynqmp.c index 05628da..8d8492d 100644 --- a/drivers/firmware/firmware-zynqmp.c +++ b/drivers/firmware/firmware-zynqmp.c @@ -49,6 +49,25 @@ static unsigned int xpm_configobject[] = { PM_CONFIG_IPI_PSU_CORTEXR5_1_MASK, /* IPI Mask */ }; +static unsigned int xpm_configobject_close[] = { + /**********************************************************************/ + /* HEADER */ + 2, /* Number of remaining words in the header */ + 1, /* Number of sections included in config object */ + PM_CONFIG_OBJECT_TYPE_OVERLAY, /* Type of Config object as overlay */ + /**********************************************************************/ + /* SET CONFIG SECTION */ + PM_CONFIG_SET_CONFIG_SECTION_ID, + 0U, /* Loading permission to Overlay config object */ +}; + +int zynqmp_pmufw_config_close(void) +{ + zynqmp_pmufw_load_config_object(xpm_configobject_close, + sizeof(xpm_configobject_close)); + return 0; +} + int zynqmp_pmufw_node(u32 id) { /* Record power domain id */ |