Lines Matching defs:win
29 #define AMB_WIN_CR_OFFSET(win) (amb_base + 0x0 + (0x8 * win))
35 #define AMB_WIN_BASE_OFFSET(win) (amb_base + 0x4 + (0x8 * win))
44 static void amb_check_win(struct addr_map_win *win, uint32_t win_num)
49 if (win->base_addr > AMB_BASE_ADDR_MASK) {
51 win_num, win->base_addr);
52 win->base_addr = AMB_BASE_ADDR_MASK;
53 WARN("Set the base address to 0x%" PRIx64 "\n", win->base_addr);
56 base_addr = win->base_addr << AMB_BASE_OFFSET;
60 win->base_addr = ALIGN_UP(base_addr, AMB_WIN_ALIGNMENT_1M);
63 WARN("Align up the base address to 0x%" PRIx64 "\n", win->base_addr);
67 if (!IS_POWER_OF_2(win->win_size)) {
69 win_num, win->win_size);
70 win->win_size = ROUND_UP_TO_POW_OF_2(win->win_size);
71 WARN("Rounding size to 0x%" PRIx64 "\n", win->win_size);
75 static void amb_enable_win(struct addr_map_win *win, uint32_t win_num)
84 size = (win->win_size / AMB_WIN_ALIGNMENT_64K) - 1;
85 ctrl = (size << AMB_SIZE_OFFSET) | (win->target_id << AMB_ATTR_OFFSET);
86 base = win->base_addr << AMB_BASE_OFFSET;
121 struct addr_map_win *win;
131 marvell_get_amb_memory_map(&win, &win_count, base);
148 for (win_id = 0; win_id < win_count; win_id++, win++) {
149 amb_check_win(win, win_id);
150 amb_enable_win(win, win_id);