diff options
| author | Thomas Petazzoni <thomas.petazzoni@free-electrons.com> | 2017-02-16 08:03:37 +0100 |
|---|---|---|
| committer | Stefan Roese <sr@denx.de> | 2017-03-29 07:41:11 +0200 |
| commit | 26a5278c9e6f0aa477f14dc38ccbf8dc30fe9cb3 (patch) | |
| tree | d51f5bd463cf7e7c6904f7ff804cc7e673094c88 /scripts/objdiff | |
| parent | 80350f55cf3ab7e7d82833219d37380abf78d173 (diff) | |
net: mvpp2: handle register mapping and access for PPv2.2
This commit adjusts the mvpp2 driver register mapping and access logic
to support PPv2.2, to handle a number of differences.
Due to how the registers are laid out in memory, the Device Tree binding
for the "reg" property is different:
- On PPv2.1, we had a first area for the common registers, and then one
area per port.
- On PPv2.2, we have a first area for the common registers, and a
second area for all the per-ports registers.
In addition, on PPv2.2, the area for the common registers is split into
so-called "address spaces" of 64 KB each. They allow to access the same
registers, but from different CPUs. Hence the introduction of cpu_base[]
in 'struct mvpp2', and the modification of the mvpp2_write() and
mvpp2_read() register accessors. For PPv2.1, the compatibility is
preserved by using an "address space" size of 0.
Changed by Stefan for U-Boot:
Since we don't support multiple CPUs in U-Boot, I've removed all the
code, macros and variables introduced in the Linux patch version for this.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Stefan Roese <sr@denx.de>
Acked-by: Joe Hershberger <joe.hershberger@ni.com>
Diffstat (limited to 'scripts/objdiff')
0 files changed, 0 insertions, 0 deletions
