Lines Matching +full:ipa +full:- +full:setup +full:- +full:ready
1 /* SPDX-License-Identifier: GPL-2.0 */
3 /* Copyright (c) 2012-2018, The Linux Foundation. All rights reserved.
4 * Copyright (C) 2018-2020 Linaro Ltd.
31 * enum ipa_flag - IPA state flags
33 * @IPA_FLAG_COUNT: Number of defined IPA flags
41 * struct ipa - IPA information
44 * @version: IPA hardware version
48 * @clock: IPA clocking information
51 * @interrupt: IPA Interrupt information
52 * @uc_loaded: true after microcontroller has reported it's ready
53 * @reg_addr: DMA address used for IPA register access
54 * @reg_virt: Virtual address used for IPA register access
55 * @mem_addr: DMA address of IPA-local memory space
56 * @mem_virt: Virtual address of IPA-local memory space
57 * @mem_offset: Offset from @mem_virt used for access to IPA memory
59 * @mem: Array of IPA-local memory region descriptors
60 * @imem_iova: I/O virtual address of IPA region in IMEM
62 * @smem_iova: I/O virtual address of IPA region in SMEM
64 * @zero_addr: DMA address of preallocated zero-filled memory
65 * @zero_virt: Virtual address of preallocated zero-filled memory
66 * @zero_size: Size (bytes) of preallocated zero-filled memory
74 * @channel_map: Mapping of GSI channel to IPA endpoint
75 * @name_map: Mapping of IPA endpoint name to IPA endpoint
76 * @setup_complete: Flag indicating whether setup stage has completed
81 struct ipa { struct
136 * ipa_setup() - Perform IPA setup
137 * @ipa: IPA pointer argument
139 * IPA initialization is broken into stages: init; config; and setup.
143 * any access to IPA hardware. Activities performed at the config stage
144 * require the IPA clock to be running, because they involve access
145 * to IPA registers. The setup stage is performed only after the GSI
146 * hardware is ready (more on this below). The setup stage allows
148 * commands" using a special interface to the IPA.
150 * This function, @ipa_setup(), starts the setup stage.
153 * loaded (in addition to some other low-level initialization). This early
159 * verification was successful, the GSI layer is ready and ipa_setup()
160 * implements the setup phase of initialization.
166 int ipa_setup(struct ipa *ipa);