Searched hist:"26 a5278c9e6f0aa477f14dc38ccbf8dc30fe9cb3" (Results 1 – 1 of 1) sorted by relevance
| /rk3399_rockchip-uboot/drivers/net/ |
| H A D | mvpp2.c | 26a5278c9e6f0aa477f14dc38ccbf8dc30fe9cb3 Thu Feb 16 07:03:37 UTC 2017 Thomas Petazzoni <thomas.petazzoni@free-electrons.com> 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>
|