cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
mwiesing
Visitor
Visitor
587 Views
Registered: ‎03-28-2018

Interactin with PMU from linux on A53

Hello,

currently i want to control (poweroff/poweron) single power-nodes using the kernels pm_debug_fs.

1.    Releasing nodes by requesting PMU via "node_release" and "node_request" functions

 

First i tried it like this for USB0:

 

 

echo "get_node_status 22" > power

The result is

 

 

GET_NODE_STATUS:
[ 1507.449980] 	NodeId: 22
[ 1507.449980] 	Status: 2
[ 1507.449980] 	Requirements: 1
[ 1507.449980] 	Usage: 1

Which seems fine. After issuing a "release_node" state changes to

 

 

 

[ 1665.405977] GET_NODE_STATUS:
[ 1665.405977] 	NodeId: 22
[ 1665.405977] 	Status: 2
[ 1665.405977] 	Requirements: 0
[ 1665.405977] 	Usage: 0

 

 

Status 2 means afaik, that PMU did not powerdown the power-island, which was the intention.

 

2.  Reading node's state by requesting PMU via "mmio_read" and "mmio_write" functions

https://forums.xilinx.com/t5/Embedded-Linux/Accessing-PMU-registers-from-petalinux-running-on-A53/m-p/832542/highlight/true#M24353

 

Result is:

 

echo: write error: Permission denied

 

3.  Requesting PMU_LOCAL register reads via PMU

echo "mmio_read 0xffd60060" > power

Result is:

 

echo: write error: Permission denied

 

So basically i think PMU is configured wrong. Especially because i am not allowed to deal with Power-islands. But how should i configure it correct?

Our Workflow is

Vivado -> export hdf -> put hdf in yocto -> Image with BOOT.bin

 

As far as i know PMU-Firmware has a PM-Module and is stored in FSBL.

According to

https://xilinx-wiki.atlassian.net/wiki/spaces/A/pages/18841724/PMU+Firmware#PMUFirmware-PowerManagementinPMUFW

a PM-Configuration Object exists and gives some hints. But just by looking at FSBL Sources it's hard to figure out, what is wrong about that config.

 

Can you please give me a hint what i am missing?

Kind regards

 

Tags (2)
0 Kudos
0 Replies