aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/dma/ste_dma40_ll.h
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/dma/ste_dma40_ll.h')
-rw-r--r--drivers/dma/ste_dma40_ll.h51
1 files changed, 15 insertions, 36 deletions
diff --git a/drivers/dma/ste_dma40_ll.h b/drivers/dma/ste_dma40_ll.h
index a51ec187b5cf..37f81e84cd13 100644
--- a/drivers/dma/ste_dma40_ll.h
+++ b/drivers/dma/ste_dma40_ll.h
@@ -268,22 +268,6 @@ struct d40_def_lcsp {
268 u32 lcsp1; 268 u32 lcsp1;
269}; 269};
270 270
271/**
272 * struct d40_lcla_elem - Info for one LCA element.
273 *
274 * @src_id: logical channel src id
275 * @dst_id: logical channel dst id
276 * @src: LCPA formated src parameters
277 * @dst: LCPA formated dst parameters
278 *
279 */
280struct d40_lcla_elem {
281 int src_id;
282 int dst_id;
283 struct d40_log_lli *src;
284 struct d40_log_lli *dst;
285};
286
287/* Physical channels */ 271/* Physical channels */
288 272
289void d40_phy_cfg(struct stedma40_chan_cfg *cfg, 273void d40_phy_cfg(struct stedma40_chan_cfg *cfg,
@@ -324,38 +308,33 @@ void d40_phy_lli_write(void __iomem *virtbase,
324void d40_log_fill_lli(struct d40_log_lli *lli, 308void d40_log_fill_lli(struct d40_log_lli *lli,
325 dma_addr_t data, 309 dma_addr_t data,
326 u32 data_size, 310 u32 data_size,
327 u32 lli_next_off,
328 u32 reg_cfg, 311 u32 reg_cfg,
329 u32 data_width, 312 u32 data_width,
330 bool term_int,
331 bool addr_inc); 313 bool addr_inc);
332 314
333int d40_log_sg_to_dev(struct d40_lcla_elem *lcla, 315int d40_log_sg_to_dev(struct scatterlist *sg,
334 struct scatterlist *sg,
335 int sg_len, 316 int sg_len,
336 struct d40_log_lli_bidir *lli, 317 struct d40_log_lli_bidir *lli,
337 struct d40_def_lcsp *lcsp, 318 struct d40_def_lcsp *lcsp,
338 u32 src_data_width, 319 u32 src_data_width,
339 u32 dst_data_width, 320 u32 dst_data_width,
340 enum dma_data_direction direction, 321 enum dma_data_direction direction,
341 dma_addr_t dev_addr, 322 dma_addr_t dev_addr);
342 int max_len, 323
343 int llis_per_log); 324int d40_log_sg_to_lli(struct scatterlist *sg,
344
345int d40_log_lli_write(struct d40_log_lli_full *lcpa,
346 struct d40_log_lli *lcla_src,
347 struct d40_log_lli *lcla_dst,
348 struct d40_log_lli *lli_dst,
349 struct d40_log_lli *lli_src,
350 int llis_per_log);
351
352int d40_log_sg_to_lli(int lcla_id,
353 struct scatterlist *sg,
354 int sg_len, 325 int sg_len,
355 struct d40_log_lli *lli_sg, 326 struct d40_log_lli *lli_sg,
356 u32 lcsp13, /* src or dst*/ 327 u32 lcsp13, /* src or dst*/
357 u32 data_width, 328 u32 data_width);
358 int max_len, 329
359 int llis_per_log); 330void d40_log_lli_lcpa_write(struct d40_log_lli_full *lcpa,
331 struct d40_log_lli *lli_dst,
332 struct d40_log_lli *lli_src,
333 int next);
334
335void d40_log_lli_lcla_write(struct d40_log_lli *lcla,
336 struct d40_log_lli *lli_dst,
337 struct d40_log_lli *lli_src,
338 int next);
360 339
361#endif /* STE_DMA40_LLI_H */ 340#endif /* STE_DMA40_LLI_H */