File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 99#include "common_setup.h"
1010#include "exynos4412_setup.h"
1111
12+ #define NR_TZASC_BANKS 4
13+
14+ /* Allow non-secure and secure access to all memory */
15+ #define RA0_VAL 0xf0000000
16+
17+ static void tzasc_init (void ) {
18+ unsigned int start = samsung_get_base_dmc_tzasc ();
19+ unsigned int end = start + (DMC_OFFSET * (NR_TZASC_BANKS - 1 ));
20+
21+ for (; start <= end ; start += DMC_OFFSET ) {
22+ struct exynos4412_tzasc * asc = (struct exynos4412_tzasc * )start ;
23+ writel (RA0_VAL , & asc -> region_attributes_0 );
24+ }
25+ }
26+
1227void mem_ctrl_init (int reset )
1328{
1429 struct exynos4_dmc * dmc = (struct exynos4_dmc * )samsung_get_base_dmc_ctrl ();
@@ -124,6 +139,8 @@ void mem_ctrl_init(int reset)
124139 writel (DMC_MEMCONTROL , & dmc -> memcontrol );
125140 writel (DMC_MEMCONTROL , & dmc1 -> memcontrol );
126141
142+ tzasc_init ();
143+
127144}
128145
129146
Original file line number Diff line number Diff line change 7070#define EXYNOS4X12_TZPC_BASE 0x10110000
7171#define EXYNOS4X12_DMC_CTRL_BASE 0x10600000
7272#define EXYNOS4X12_GPIO_PART4_BASE 0x106E0000
73+ #define EXYNOS4X12_DMC_TZASC_BASE 0x10700000
7374#define EXYNOS4X12_ACE_SFR_BASE 0x10830000
7475#define EXYNOS4X12_GPIO_PART2_BASE 0x11000000
7576#define EXYNOS4X12_GPIO_PART2_0 0x11000000
101102#define EXYNOS4X12_AUDIOSS_BASE DEVICE_NOT_AVAILABLE
102103#define EXYNOS4X12_USB_HOST_XHCI_BASE DEVICE_NOT_AVAILABLE
103104#define EXYNOS4X12_USB3PHY_BASE DEVICE_NOT_AVAILABLE
104- #define EXYNOS4X12_DMC_TZASC_BASE DEVICE_NOT_AVAILABLE
105105
106106/* EXYNOS5 */
107107#define EXYNOS5_I2C_SPACING 0x10000
Original file line number Diff line number Diff line change @@ -419,6 +419,25 @@ struct exynos5420_phy_control {
419419 unsigned int phy_con42 ;
420420};
421421
422+ struct exynos4412_tzasc {
423+ unsigned char res1 [0x100 ];
424+ unsigned int region_setup_low_0 ; // 100
425+ unsigned int region_setup_high_0 ; // 104
426+ unsigned int region_attributes_0 ; // 108
427+ unsigned int res2 ; // 10c
428+ unsigned int region_setup_low_1 ; // 110
429+ unsigned int region_setup_high_1 ; // 114
430+ unsigned int region_setup_attributes_1 ; // 118
431+ unsigned int res3 ;
432+ unsigned int region_setup_low_2 ; // 120
433+ unsigned int region_setup_high_2 ; // 124
434+ unsigned int region_setup_attributes_2 ; // 128
435+ unsigned int res4 ;
436+ unsigned int region_setup_low_3 ; // 130
437+ unsigned int region_setup_high_3 ; // 134
438+ unsigned int region_attributes_3 ; // 138
439+ };
440+
422441struct exynos5420_tzasc {
423442 unsigned char res1 [0xf00 ];
424443 unsigned int membaseconfig0 ;
You can’t perform that action at this time.
0 commit comments