Path: blob/master/arch/sh/include/cpu-sh3/cpu/dma-register.h
38302 views
/* SPDX-License-Identifier: GPL-2.01*2* SH3 CPU-specific DMA definitions, used by both DMA drivers3*4* Copyright (C) 2010 Guennadi Liakhovetski <[email protected]>5*/6#ifndef CPU_DMA_REGISTER_H7#define CPU_DMA_REGISTER_H89#define CHCR_TS_LOW_MASK 0x1810#define CHCR_TS_LOW_SHIFT 311#define CHCR_TS_HIGH_MASK 012#define CHCR_TS_HIGH_SHIFT 01314#define DMAOR_INIT DMAOR_DME1516/*17* The SuperH DMAC supports a number of transmit sizes, we list them here,18* with their respective values as they appear in the CHCR registers.19*/20enum {21XMIT_SZ_8BIT,22XMIT_SZ_16BIT,23XMIT_SZ_32BIT,24XMIT_SZ_128BIT,25};2627/* log2(size / 8) - used to calculate number of transfers */28#define TS_SHIFT { \29[XMIT_SZ_8BIT] = 0, \30[XMIT_SZ_16BIT] = 1, \31[XMIT_SZ_32BIT] = 2, \32[XMIT_SZ_128BIT] = 4, \33}3435#define TS_INDEX2VAL(i) (((i) & 3) << CHCR_TS_LOW_SHIFT)3637#endif383940