Lines Matching +full:bman +full:- +full:portal
3 � 1995-2003, 2004, 2005-2011 Freescale Semiconductor, Inc.
89 /* BM-Portal defaults */
92 /* BM-Pool defaults */
109 /* BMan Buffer Pool Configuration & Status Registers */
110 volatile uint32_t swdet[BM_NUM_OF_POOLS]; /**< S/W Portal depletion entry threshold */
111 volatile uint32_t hwdet[BM_NUM_OF_POOLS]; /**< H/W Portal depletion entry threshold */
112 volatile uint32_t swdxt[BM_NUM_OF_POOLS]; /**< S/W Portal depletion exit threshold */
113 volatile uint32_t hwdxt[BM_NUM_OF_POOLS]; /**< H/W Portal depletion exit threshold */
114 volatile uint32_t sdcnt[BM_NUM_OF_POOLS]; /**< S/W Portal depletion count */
115 volatile uint32_t hdcnt[BM_NUM_OF_POOLS]; /**< H/W Portal depletion count */
125 …volatile uint32_t cmd_pm_cfg[BM_NUM_OF_PM]; /**< BMan Command Performance Monitor configuratio…
126 …volatile uint32_t fl_pm_cfg[BM_NUM_OF_PM]; /**< BMan Free List Performance Monitor configurat…
129 /* BMan Error Capture Registers */
130 volatile uint32_t ecsr; /**< BMan Error Capture Status Register */
131 volatile uint32_t ecir; /**< BMan Error Capture Information Register */
132 volatile uint32_t eadr; /**< BMan Error Capture Address Register */
134 volatile uint32_t edata[8]; /**< BMan ECC Error Data Register */
135 …volatile uint32_t sbet; /**< BMan Single Bit ECC Error Threshold Register …
136 volatile uint32_t efcr; /**< BMan Error Fetch Capture Register */
137 volatile uint32_t efar; /**< BMan Error Fetch Address Register */
139 … volatile uint32_t sbec0; /**< BMan Single Bit ECC Error Count 0 Register */
140 … volatile uint32_t sbec1; /**< BMan Single Bit ECC Error Count 1 Register */
143 /* BMan ID/Revision Registers */
144 volatile uint32_t ip_rev_1; /**< BMan IP Block Revision 1 register */
145 volatile uint32_t ip_rev_2; /**< BMan IP Block Revision 2 register */
153 volatile uint32_t srcidr; /**< BMan Source ID Register */
154 volatile uint32_t liodnr; /**< BMan Logical I/O Device Number Register */
157 /* BMan Interrupt and Error Registers */
158 volatile uint32_t err_isr; /**< BMan Error Interrupt Status Register */
159 volatile uint32_t err_ier; /**< BMan Error Interrupt Enable Register */
160 …volatile uint32_t err_isdr; /**< BMan Error Interrupt Status Disable Register …
161 volatile uint32_t err_iir; /**< BMan Error Interrupt Inhibit Register */
162 volatile uint32_t err_ifr; /**< BMan Error Interrupt Force Register */
182 #define NCSW_PLOCK(p) ((t_BmPortal*)(p))->irq_flags = XX_DisableAllIntr()
183 #define PUNLOCK(p) XX_RestoreAllIntr(((t_BmPortal*)(p))->irq_flags)
222 …uint32_t depletionThresholds[MAX_DEPLETION_THRESHOLDS]; /**< depletion-ent…
224 … when run in the control plane (which controls Bman CCSR) */
228 … uint8_t bpid; /**< index of the buffer pool to encapsulate (0-63) */
234 uint32_t flags; /**< bit-mask of BMAN_POOL_FLAG_*** options */
236 …t_BmDepletionCallback *f_Depletion; /**< depletion-entry/exit callback, if BMAN_POOL_FLAG_…
239 /* stockpile state - NULL unless BMAN_POOL_FLAG_STOCKPILE is set */
266 int cpu; /* This is used for any "core-affine" portals, ie. default portals
267 … * associated to the corresponding cpu. -1 implies that there is no core
269 …struct bman_depletion pools[2]; /**< 2-element array. pools[0] is mask, pools[1] is snapshot. …
270 uint32_t flags; /**< BMAN_PORTAL_FLAG_*** - static, caller-provided */
274 …uint32_t rcrProd; /**< The wrap-around rcr_[prod|cons] counters are used to suppo…
276 /**< 64-entry hash-table of pool objects that are tracking depletion
277 * entry/exit (ie. BMAN_POOL_FLAG_DEPLETION). This isn't fast-path, so
278 * we're not fussy about cache-misses and so forth - whereas the above
281 * you'll never guess the hash-function ... */
313 ASSERT_COND(!((t_Bm*)h_Bm)->h_Portals[portalId] || !h_Portal); in BmSetPortalHandle()
314 ((t_Bm*)h_Bm)->h_Portals[portalId] = h_Portal; in BmSetPortalHandle()
321 return p_Bm->h_Portals[CORE_GetId()]; in BmGetPortalHandle()
326 return p_BmPortal->cbs[type].f_BmUpdateCb(p_BmPortal->p_BmPortalLow); in BmUpdate()
331 if (p_BmPortal->cbs[type].f_BmPrefetchCb) in BmPrefetch()
332 p_BmPortal->cbs[type].f_BmPrefetchCb(p_BmPortal->p_BmPortalLow); in BmPrefetch()
337 p_BmPortal->cbs[type].f_BmCommitCb(p_BmPortal->p_BmPortalLow, myverb); in BmCommit()
347 if (MM_InRange(p_Bm->h_BpidMm, (uint64_t)base)) in BmBpidGet()
349 ans = MM_GetForce(p_Bm->h_BpidMm, in BmBpidGet()
355 else if (p_Bm->h_Session) in BmBpidGet()
369 if ((errCode = XX_IpcSendMessage(p_Bm->h_Session, in BmBpidGet()
389 DBG(WARNING, ("No Ipc - can't validate bpid.")); in BmBpidGet()
394 ans = MM_Get(p_Bm->h_BpidMm, in BmBpidGet()
404 if (MM_InRange(p_Bm->h_BpidMm, (uint64_t)base)) in BmBpidPut()
406 if (MM_Put(p_Bm->h_BpidMm, (uint64_t)base) != base) in BmBpidPut()
411 else if (p_Bm->h_Session) in BmBpidPut()
421 if ((errCode = XX_IpcSendMessage(p_Bm->h_Session, in BmBpidPut()
431 DBG(WARNING, ("No Ipc - can't validate bpid.")); in BmBpidPut()
436 /* Inter-Module functions */