u-boot/arch/arm/mach-keystone/include/mach
Nishanth Menon 2283284b05 ARM: keystone2: Add missing privilege ID settings
Add missing Privilege ID settings for KS2 SoCs.

Based on:
K2H/K: Table 6-7. Privilege ID Settings from SPRS866E (Nov 2013)
  http://www.ti.com/lit/ds/symlink/66ak2h14.pdf (page 99)
K2L: Table 7-7. Privilege ID Settings from SPRS930 (April 2015)
  http://www.ti.com/lit/ds/symlink/66ak2l06.pdf (page 71)
K2E: Table 7-7. Privilege ID Settings from SPRS865D (Mar 2015)
  http://www.ti.com/lit/ds/symlink/66ak2e05.pdf (page 75)
K2G: Table 3-16. PrivIDs from SPRUHY8 (Jan 2016)
  http://www.ti.com/lit/ug/spruhy8/spruhy8.pdf (page 238)

Overall mapping:
-------+-----------+-----------+-----------+---------
PrivID | KS2H/K    | K2L       | K2E       | K2G
-------+-----------+-----------+-----------+---------
0      | C66x 0    | C66x 0    | C66x 0    | C66x 0
1      | C66x 1    | C66x 1    | Reserved  | ARM
2      | C66x 2    | C66x 2    | Reserved  | ICSS0
3      | C66x 3    | C66x 3    | Reserved  | ICSS1
4      | C66x 4    | Reserved  | Reserved  | NETCP
5      | C66x 5    | Reserved  | Reserved  | CPIE
6      | C66x 6    | Reserved  | Reserved  | USB
7      | C66x 7    | Reserved  | Reserved  | Reserved
8      | ARM       | ARM       | ARM       | MLB
9      | NetCP     | NetCP     | NetCP     | PMMC
10     | QM_PDSP   | QM_PDSP   | QM_PDSP   | DSS
11     | PCIe_0    | PCIe_0    | PCIe_0    | MMC
12     | DEBUG/DAP | DEBUG/DAP | DEBUG/DAP | DEBUG/DAP
13     | Reserved  | Reserved  | PCIe_1    | Reserved
14     | HyperLink | PCIe_1    | HyperLink | Reserved
15     | Reserved  | Reserved  | TSIP      | Reserved
-------+-----------+-----------+-----------+---------

NOTE: Few of these might have default configurations, however,
since most are software configurable, it is better to explicitly
configure the system to have a known default state.

Without programming these, we end up seeing lack of coherency on certain
peripherals resulting in inexplicable failures (such as USB peripheral's
DMA data not appearing on ARM etc and weird workarounds being done by
drivers including cache flushes which tend to have system wide
performance impact).

By marking these segments as shared, we also ensure SoC wide coherency
is enabled.

Reported-by: Bin Liu <b-liu@ti.com>
Signed-off-by: Nishanth Menon <nm@ti.com>
Reviewed-by: Lokesh Vutla <lokeshvutla@ti.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
2016-04-01 17:17:40 -04:00
..
clock-k2e.h ARM: keystone2: Use common definition for clk_get_rate 2015-08-12 20:47:55 -04:00
clock-k2g.h ARM: keystone2: K2G: Add support for different arm/device speeds 2016-03-14 19:18:44 -04:00
clock-k2hk.h ARM: keystone2: Use common definition for clk_get_rate 2015-08-12 20:47:55 -04:00
clock-k2l.h ARM: k2l: Fix device speeds 2015-08-28 12:33:16 -04:00
clock.h ARM: keystone2: K2G: Add support for different arm/device speeds 2016-03-14 19:18:44 -04:00
clock_defs.h bitops: introduce BIT() definition 2015-09-11 17:15:32 -04:00
ddr3.h ARM: keystone2: use detected ddr3a size 2016-03-14 19:18:45 -04:00
hardware-k2e.h ARM: keystone2: Refactor MSMC macros to avoid #ifdeffery 2016-04-01 17:17:40 -04:00
hardware-k2g.h ARM: keystone2: K2G: power-off DSP during boot 2016-03-14 19:18:43 -04:00
hardware-k2hk.h ARM: keystone2: Use common structure for PLLs 2015-08-12 20:47:53 -04:00
hardware-k2l.h ARM: keystone2: Refactor MSMC macros to avoid #ifdeffery 2016-04-01 17:17:40 -04:00
hardware.h ARM: keystone2: Add missing privilege ID settings 2016-04-01 17:17:40 -04:00
i2c_defs.h ARM: keystone: move SoC headers to mach-keystone/include/mach 2015-02-21 08:23:52 -05:00
mmc_host_def.h ARM: k2g: add SD card and eMMC support 2015-10-22 14:22:25 -04:00
mon.h ARM: keystone2: Split monitor code / command code 2016-03-16 15:03:15 -04:00
msmc.h ARM: keystone: move SoC headers to mach-keystone/include/mach 2015-02-21 08:23:52 -05:00
mux-k2g.h ARM: k2g: Add support for pin mux configuration 2015-10-22 14:22:19 -04:00
psc_defs.h ARM: keystone2: Convert BOOT_SET_BITFIELD into static inline function 2016-03-27 09:12:11 -04:00
xhci-keystone.h ARM: keystone: move SoC headers to mach-keystone/include/mach 2015-02-21 08:23:52 -05:00