1*4882a593Smuzhiyun // SPDX-License-Identifier: GPL-2.0 2*4882a593Smuzhiyun /* 3*4882a593Smuzhiyun * linux/arch/arm/kernel/dma-ebsa285.c 4*4882a593Smuzhiyun * 5*4882a593Smuzhiyun * Copyright (C) 1998 Phil Blundell 6*4882a593Smuzhiyun * 7*4882a593Smuzhiyun * DMA functions specific to EBSA-285/CATS architectures 8*4882a593Smuzhiyun * 9*4882a593Smuzhiyun * Changelog: 10*4882a593Smuzhiyun * 09-Nov-1998 RMK Split out ISA DMA functions to dma-isa.c 11*4882a593Smuzhiyun * 17-Mar-1999 RMK Allow any EBSA285-like architecture to have 12*4882a593Smuzhiyun * ISA DMA controllers. 13*4882a593Smuzhiyun */ 14*4882a593Smuzhiyun #include <linux/init.h> 15*4882a593Smuzhiyun #include <linux/io.h> 16*4882a593Smuzhiyun #include <linux/spinlock.h> 17*4882a593Smuzhiyun #include <linux/scatterlist.h> 18*4882a593Smuzhiyun 19*4882a593Smuzhiyun #include <asm/dma.h> 20*4882a593Smuzhiyun 21*4882a593Smuzhiyun #include <asm/mach/dma.h> 22*4882a593Smuzhiyun #include <asm/hardware/dec21285.h> 23*4882a593Smuzhiyun 24*4882a593Smuzhiyun #if 0 25*4882a593Smuzhiyun static int fb_dma_request(unsigned int chan, dma_t *dma) 26*4882a593Smuzhiyun { 27*4882a593Smuzhiyun return -EINVAL; 28*4882a593Smuzhiyun } 29*4882a593Smuzhiyun 30*4882a593Smuzhiyun static void fb_dma_enable(unsigned int chan, dma_t *dma) 31*4882a593Smuzhiyun { 32*4882a593Smuzhiyun } 33*4882a593Smuzhiyun 34*4882a593Smuzhiyun static void fb_dma_disable(unsigned int chan, dma_t *dma) 35*4882a593Smuzhiyun { 36*4882a593Smuzhiyun } 37*4882a593Smuzhiyun 38*4882a593Smuzhiyun static struct dma_ops fb_dma_ops = { 39*4882a593Smuzhiyun .type = "fb", 40*4882a593Smuzhiyun .request = fb_dma_request, 41*4882a593Smuzhiyun .enable = fb_dma_enable, 42*4882a593Smuzhiyun .disable = fb_dma_disable, 43*4882a593Smuzhiyun }; 44*4882a593Smuzhiyun #endif 45*4882a593Smuzhiyun fb_dma_init(void)46*4882a593Smuzhiyunstatic int __init fb_dma_init(void) 47*4882a593Smuzhiyun { 48*4882a593Smuzhiyun #if 0 49*4882a593Smuzhiyun dma[_DC21285_DMA(0)].d_ops = &fb_dma_ops; 50*4882a593Smuzhiyun dma[_DC21285_DMA(1)].d_ops = &fb_dma_ops; 51*4882a593Smuzhiyun #endif 52*4882a593Smuzhiyun #ifdef CONFIG_ISA_DMA 53*4882a593Smuzhiyun if (footbridge_cfn_mode()) 54*4882a593Smuzhiyun isa_init_dma(); 55*4882a593Smuzhiyun #endif 56*4882a593Smuzhiyun return 0; 57*4882a593Smuzhiyun } 58*4882a593Smuzhiyun core_initcall(fb_dma_init); 59