1*c0474d58SKonstantin Porotchkin /* 2*c0474d58SKonstantin Porotchkin * Copyright (C) 2018 Marvell International Ltd. 3*c0474d58SKonstantin Porotchkin * 4*c0474d58SKonstantin Porotchkin * SPDX-License-Identifier: BSD-3-Clause 5*c0474d58SKonstantin Porotchkin * https://spdx.org/licenses 6*c0474d58SKonstantin Porotchkin */ 7*c0474d58SKonstantin Porotchkin 8*c0474d58SKonstantin Porotchkin /* IOW unit device driver for Marvell CP110 and CP115 SoCs */ 9*c0474d58SKonstantin Porotchkin 10*c0474d58SKonstantin Porotchkin #ifndef _IOB_H_ 11*c0474d58SKonstantin Porotchkin #define _IOB_H_ 12*c0474d58SKonstantin Porotchkin 13*c0474d58SKonstantin Porotchkin #include <addr_map.h> 14*c0474d58SKonstantin Porotchkin 15*c0474d58SKonstantin Porotchkin enum target_ids_iob { 16*c0474d58SKonstantin Porotchkin INTERNAL_TID = 0x0, 17*c0474d58SKonstantin Porotchkin MCI0_TID = 0x1, 18*c0474d58SKonstantin Porotchkin PEX1_TID = 0x2, 19*c0474d58SKonstantin Porotchkin PEX2_TID = 0x3, 20*c0474d58SKonstantin Porotchkin PEX0_TID = 0x4, 21*c0474d58SKonstantin Porotchkin NAND_TID = 0x5, 22*c0474d58SKonstantin Porotchkin RUNIT_TID = 0x6, 23*c0474d58SKonstantin Porotchkin MCI1_TID = 0x7, 24*c0474d58SKonstantin Porotchkin IOB_MAX_TID 25*c0474d58SKonstantin Porotchkin }; 26*c0474d58SKonstantin Porotchkin 27*c0474d58SKonstantin Porotchkin int init_iob(uintptr_t base); 28*c0474d58SKonstantin Porotchkin void iob_cfg_space_update(int ap_idx, int cp_idx, 29*c0474d58SKonstantin Porotchkin uintptr_t base, uintptr_t new_base); 30*c0474d58SKonstantin Porotchkin 31*c0474d58SKonstantin Porotchkin #endif /* _IOB_H_ */ 32