Lines Matching refs:win
115 unsigned int (*win_cfg_offset)(const int win);
116 unsigned int (*win_remap_offset)(const int win);
164 const int win) in mvebu_mbus_window_is_remappable() argument
166 return mbus->soc->win_remap_offset(win) != MVEBU_MBUS_NO_REMAP; in mvebu_mbus_window_is_remappable()
174 int win, int *enabled, u64 *base, in mvebu_mbus_read_window() argument
179 mbus->soc->win_cfg_offset(win); in mvebu_mbus_read_window()
200 if (mvebu_mbus_window_is_remappable(mbus, win)) { in mvebu_mbus_read_window()
203 mbus->soc->win_remap_offset(win); in mvebu_mbus_read_window()
213 int win) in mvebu_mbus_disable_window() argument
217 addr = mbus->mbuswins_base + mbus->soc->win_cfg_offset(win); in mvebu_mbus_disable_window()
221 if (mvebu_mbus_window_is_remappable(mbus, win)) { in mvebu_mbus_disable_window()
222 addr = mbus->mbuswins_base + mbus->soc->win_remap_offset(win); in mvebu_mbus_disable_window()
231 const int win) in mvebu_mbus_window_is_free() argument
234 mbus->soc->win_cfg_offset(win); in mvebu_mbus_window_is_free()
249 int win; in mvebu_mbus_window_conflicts() local
251 for (win = 0; win < mbus->soc->num_wins; win++) { in mvebu_mbus_window_conflicts()
257 mvebu_mbus_read_window(mbus, win, in mvebu_mbus_window_conflicts()
280 int win; in mvebu_mbus_find_window() local
282 for (win = 0; win < mbus->soc->num_wins; win++) { in mvebu_mbus_find_window()
287 mvebu_mbus_read_window(mbus, win, in mvebu_mbus_find_window()
295 return win; in mvebu_mbus_find_window()
302 int win, phys_addr_t base, size_t size, in mvebu_mbus_setup_window() argument
307 mbus->soc->win_cfg_offset(win); in mvebu_mbus_setup_window()
331 if (mvebu_mbus_window_is_remappable(mbus, win)) { in mvebu_mbus_setup_window()
333 mbus->soc->win_remap_offset(win); in mvebu_mbus_setup_window()
351 int win; in mvebu_mbus_alloc_window() local
354 for (win = 0; win < mbus->soc->num_wins; win++) { in mvebu_mbus_alloc_window()
355 if (mvebu_mbus_window_is_remappable(mbus, win)) in mvebu_mbus_alloc_window()
358 if (mvebu_mbus_window_is_free(mbus, win)) in mvebu_mbus_alloc_window()
359 return mvebu_mbus_setup_window(mbus, win, base, in mvebu_mbus_alloc_window()
365 for (win = 0; win < mbus->soc->num_wins; win++) { in mvebu_mbus_alloc_window()
368 !mvebu_mbus_window_is_remappable(mbus, win)) in mvebu_mbus_alloc_window()
371 if (mvebu_mbus_window_is_free(mbus, win)) in mvebu_mbus_alloc_window()
372 return mvebu_mbus_setup_window(mbus, win, base, size, in mvebu_mbus_alloc_window()
461 int win; in mvebu_devs_debug_show() local
463 for (win = 0; win < mbus->soc->num_wins; win++) { in mvebu_devs_debug_show()
469 mvebu_mbus_read_window(mbus, win, in mvebu_devs_debug_show()
474 seq_printf(seq, "[%02d] disabled\n", win); in mvebu_devs_debug_show()
479 win, (unsigned long long)wbase, in mvebu_devs_debug_show()
486 if (mvebu_mbus_window_is_remappable(mbus, win)) { in mvebu_devs_debug_show()
512 static unsigned int generic_mbus_win_cfg_offset(int win) in generic_mbus_win_cfg_offset() argument
514 return win << 4; in generic_mbus_win_cfg_offset()
517 static unsigned int armada_370_xp_mbus_win_cfg_offset(int win) in armada_370_xp_mbus_win_cfg_offset() argument
531 if (win < 8) in armada_370_xp_mbus_win_cfg_offset()
532 return win << 4; in armada_370_xp_mbus_win_cfg_offset()
534 return 0x90 + ((win - 8) << 3); in armada_370_xp_mbus_win_cfg_offset()
537 static unsigned int mv78xx0_mbus_win_cfg_offset(int win) in mv78xx0_mbus_win_cfg_offset() argument
539 if (win < 8) in mv78xx0_mbus_win_cfg_offset()
540 return win << 4; in mv78xx0_mbus_win_cfg_offset()
542 return 0x900 + ((win - 8) << 4); in mv78xx0_mbus_win_cfg_offset()
545 static unsigned int generic_mbus_win_remap_2_offset(int win) in generic_mbus_win_remap_2_offset() argument
547 if (win < 2) in generic_mbus_win_remap_2_offset()
548 return generic_mbus_win_cfg_offset(win); in generic_mbus_win_remap_2_offset()
553 static unsigned int generic_mbus_win_remap_4_offset(int win) in generic_mbus_win_remap_4_offset() argument
555 if (win < 4) in generic_mbus_win_remap_4_offset()
556 return generic_mbus_win_cfg_offset(win); in generic_mbus_win_remap_4_offset()
561 static unsigned int generic_mbus_win_remap_8_offset(int win) in generic_mbus_win_remap_8_offset() argument
563 if (win < 8) in generic_mbus_win_remap_8_offset()
564 return generic_mbus_win_cfg_offset(win); in generic_mbus_win_remap_8_offset()
569 static unsigned int armada_xp_mbus_win_remap_offset(int win) in armada_xp_mbus_win_remap_offset() argument
571 if (win < 8) in armada_xp_mbus_win_remap_offset()
572 return generic_mbus_win_cfg_offset(win); in armada_xp_mbus_win_remap_offset()
573 else if (win == 13) in armada_xp_mbus_win_remap_offset()
811 int win; in mvebu_mbus_del_window() local
813 win = mvebu_mbus_find_window(&mbus_state, base, size); in mvebu_mbus_del_window()
814 if (win < 0) in mvebu_mbus_del_window()
815 return win; in mvebu_mbus_del_window()
817 mvebu_mbus_disable_window(&mbus_state, win); in mvebu_mbus_del_window()
864 int win; in mvebu_mbus_suspend() local
869 for (win = 0; win < s->soc->num_wins; win++) { in mvebu_mbus_suspend()
871 s->soc->win_cfg_offset(win); in mvebu_mbus_suspend()
874 s->wins[win].base = readl(addr + WIN_BASE_OFF); in mvebu_mbus_suspend()
875 s->wins[win].ctrl = readl(addr + WIN_CTRL_OFF); in mvebu_mbus_suspend()
877 if (!mvebu_mbus_window_is_remappable(s, win)) in mvebu_mbus_suspend()
881 s->soc->win_remap_offset(win); in mvebu_mbus_suspend()
883 s->wins[win].remap_lo = readl(addr_rmp + WIN_REMAP_LO_OFF); in mvebu_mbus_suspend()
884 s->wins[win].remap_hi = readl(addr_rmp + WIN_REMAP_HI_OFF); in mvebu_mbus_suspend()
898 int win; in mvebu_mbus_resume() local
905 for (win = 0; win < s->soc->num_wins; win++) { in mvebu_mbus_resume()
907 s->soc->win_cfg_offset(win); in mvebu_mbus_resume()
910 writel(s->wins[win].base, addr + WIN_BASE_OFF); in mvebu_mbus_resume()
911 writel(s->wins[win].ctrl, addr + WIN_CTRL_OFF); in mvebu_mbus_resume()
913 if (!mvebu_mbus_window_is_remappable(s, win)) in mvebu_mbus_resume()
917 s->soc->win_remap_offset(win); in mvebu_mbus_resume()
919 writel(s->wins[win].remap_lo, addr_rmp + WIN_REMAP_LO_OFF); in mvebu_mbus_resume()
920 writel(s->wins[win].remap_hi, addr_rmp + WIN_REMAP_HI_OFF); in mvebu_mbus_resume()
938 int win; in mvebu_mbus_common_init() local
963 for (win = 0; win < mbus->soc->num_wins; win++) in mvebu_mbus_common_init()
964 mvebu_mbus_disable_window(mbus, win); in mvebu_mbus_common_init()