Lines Matching refs:itcw
57 struct itcw { struct
72 struct tcw *itcw_get_tcw(struct itcw *itcw) in itcw_get_tcw() argument
74 return itcw->tcw; in itcw_get_tcw()
99 len = sizeof(struct itcw); in itcw_calc_size()
177 struct itcw *itcw_init(void *buffer, size_t size, int op, int intrg, in itcw_init()
180 struct itcw *itcw; in itcw_init() local
193 chunk = fit_chunk(&start, end, sizeof(struct itcw), 1, 0); in itcw_init()
196 itcw = chunk; in itcw_init()
202 itcw->max_tidaws = max_tidaws + cross_count; in itcw_init()
207 itcw->intrg_max_tidaws = intrg_max_tidaws + cross_count; in itcw_init()
212 itcw->tcw = chunk; in itcw_init()
213 tcw_init(itcw->tcw, (op == ITCW_OP_READ) ? 1 : 0, in itcw_init()
220 itcw->intrg_tcw = chunk; in itcw_init()
221 tcw_init(itcw->intrg_tcw, 1, 0); in itcw_init()
222 tcw_set_intrg(itcw->tcw, itcw->intrg_tcw); in itcw_init()
227 itcw->max_tidaws, 16, 0); in itcw_init()
230 tcw_set_data(itcw->tcw, chunk, 1); in itcw_init()
235 itcw->intrg_max_tidaws, 16, 0); in itcw_init()
238 tcw_set_data(itcw->intrg_tcw, chunk, 1); in itcw_init()
245 tcw_set_tsb(itcw->tcw, chunk); in itcw_init()
252 tcw_set_tsb(itcw->intrg_tcw, chunk); in itcw_init()
259 tcw_set_tccb(itcw->tcw, chunk); in itcw_init()
266 tcw_set_tccb(itcw->intrg_tcw, chunk); in itcw_init()
269 tcw_finalize(itcw->intrg_tcw, 0); in itcw_init()
271 return itcw; in itcw_init()
292 struct dcw *itcw_add_dcw(struct itcw *itcw, u8 cmd, u8 flags, void *cd, in itcw_add_dcw() argument
295 return tccb_add_dcw(tcw_get_tccb(itcw->tcw), TCCB_MAX_SIZE, cmd, in itcw_add_dcw()
316 struct tidaw *itcw_add_tidaw(struct itcw *itcw, u8 flags, void *addr, u32 count) in itcw_add_tidaw() argument
320 if (itcw->num_tidaws >= itcw->max_tidaws) in itcw_add_tidaw()
327 following = ((struct tidaw *) tcw_get_data(itcw->tcw)) in itcw_add_tidaw()
328 + itcw->num_tidaws + 1; in itcw_add_tidaw()
329 if (itcw->num_tidaws && !((unsigned long) following & ~PAGE_MASK)) { in itcw_add_tidaw()
330 tcw_add_tidaw(itcw->tcw, itcw->num_tidaws++, in itcw_add_tidaw()
332 if (itcw->num_tidaws >= itcw->max_tidaws) in itcw_add_tidaw()
335 return tcw_add_tidaw(itcw->tcw, itcw->num_tidaws++, flags, addr, count); in itcw_add_tidaw()
350 void itcw_set_data(struct itcw *itcw, void *addr, int use_tidal) in itcw_set_data() argument
352 tcw_set_data(itcw->tcw, addr, use_tidal); in itcw_set_data()
365 void itcw_finalize(struct itcw *itcw) in itcw_finalize() argument
367 tcw_finalize(itcw->tcw, itcw->num_tidaws); in itcw_finalize()