blob: fe93758e84036b8abd8a2b5c5191c0545050094b [file] [log] [blame]
Jassi Brarb3040e42010-05-23 20:28:19 -07001/* linux/include/linux/amba/pl330.h
2 *
3 * Copyright (C) 2010 Samsung Electronics Co. Ltd.
4 * Jaswinder Singh <jassi.brar@samsung.com>
5 *
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation; either version 2 of the License, or
9 * (at your option) any later version.
10 */
11
12#ifndef __AMBA_PL330_H_
13#define __AMBA_PL330_H_
14
Thomas Abraham3e2ec132011-10-24 11:43:02 +020015#include <linux/dmaengine.h>
Jassi Brarb3040e42010-05-23 20:28:19 -070016
Jassi Brarb3040e42010-05-23 20:28:19 -070017struct dma_pl330_platdata {
18 /*
19 * Number of valid peripherals connected to DMAC.
20 * This may be different from the value read from
21 * CR0, as the PL330 implementation might have 'holes'
22 * in the peri list or the peri could also be reached
23 * from another DMAC which the platform prefers.
24 */
25 u8 nr_valid_peri;
26 /* Array of valid peripherals */
Thomas Abrahamcd072512011-10-24 11:43:11 +020027 u8 *peri_id;
28 /* Operational capabilities */
29 dma_cap_mask_t cap_mask;
Jassi Brarb3040e42010-05-23 20:28:19 -070030 /* Bytes to allocate for MC buffer */
31 unsigned mcbuf_sz;
32};
33
Thomas Abraham3e2ec132011-10-24 11:43:02 +020034extern bool pl330_filter(struct dma_chan *chan, void *param);
Jassi Brarb3040e42010-05-23 20:28:19 -070035#endif /* __AMBA_PL330_H_ */