at91.h revision 1.1.1.1
1/* $NetBSD: at91.h,v 1.1.1.1 2017/06/15 20:14:23 jmcneill Exp $ */ 2 3/* 4 * This header provides macros for at91 dma bindings. 5 * 6 * Copyright (C) 2013 Ludovic Desroches <ludovic.desroches@atmel.com> 7 * 8 * GPLv2 only 9 */ 10 11#ifndef __DT_BINDINGS_AT91_DMA_H__ 12#define __DT_BINDINGS_AT91_DMA_H__ 13 14/* ---------- HDMAC ---------- */ 15 16/* 17 * Source and/or destination peripheral ID 18 */ 19#define AT91_DMA_CFG_PER_ID_MASK (0xff) 20#define AT91_DMA_CFG_PER_ID(id) (id & AT91_DMA_CFG_PER_ID_MASK) 21 22/* 23 * FIFO configuration: it defines when a request is serviced. 24 */ 25#define AT91_DMA_CFG_FIFOCFG_OFFSET (8) 26#define AT91_DMA_CFG_FIFOCFG_MASK (0xf << AT91_DMA_CFG_FIFOCFG_OFFSET) 27#define AT91_DMA_CFG_FIFOCFG_HALF (0x0 << AT91_DMA_CFG_FIFOCFG_OFFSET) /* half FIFO (default behavior) */ 28#define AT91_DMA_CFG_FIFOCFG_ALAP (0x1 << AT91_DMA_CFG_FIFOCFG_OFFSET) /* largest defined AHB burst */ 29#define AT91_DMA_CFG_FIFOCFG_ASAP (0x2 << AT91_DMA_CFG_FIFOCFG_OFFSET) /* single AHB access */ 30 31 32/* ---------- XDMAC ---------- */ 33#define AT91_XDMAC_DT_MEM_IF_MASK (0x1) 34#define AT91_XDMAC_DT_MEM_IF_OFFSET (13) 35#define AT91_XDMAC_DT_MEM_IF(mem_if) (((mem_if) & AT91_XDMAC_DT_MEM_IF_MASK) \ 36 << AT91_XDMAC_DT_MEM_IF_OFFSET) 37#define AT91_XDMAC_DT_GET_MEM_IF(cfg) (((cfg) >> AT91_XDMAC_DT_MEM_IF_OFFSET) \ 38 & AT91_XDMAC_DT_MEM_IF_MASK) 39 40#define AT91_XDMAC_DT_PER_IF_MASK (0x1) 41#define AT91_XDMAC_DT_PER_IF_OFFSET (14) 42#define AT91_XDMAC_DT_PER_IF(per_if) (((per_if) & AT91_XDMAC_DT_PER_IF_MASK) \ 43 << AT91_XDMAC_DT_PER_IF_OFFSET) 44#define AT91_XDMAC_DT_GET_PER_IF(cfg) (((cfg) >> AT91_XDMAC_DT_PER_IF_OFFSET) \ 45 & AT91_XDMAC_DT_PER_IF_MASK) 46 47#define AT91_XDMAC_DT_PERID_MASK (0x7f) 48#define AT91_XDMAC_DT_PERID_OFFSET (24) 49#define AT91_XDMAC_DT_PERID(perid) (((perid) & AT91_XDMAC_DT_PERID_MASK) \ 50 << AT91_XDMAC_DT_PERID_OFFSET) 51#define AT91_XDMAC_DT_GET_PERID(cfg) (((cfg) >> AT91_XDMAC_DT_PERID_OFFSET) \ 52 & AT91_XDMAC_DT_PERID_MASK) 53 54#endif /* __DT_BINDINGS_AT91_DMA_H__ */ 55