xref: /rk3399_ARM-atf/include/drivers/synopsys/dw_mmc.h (revision 5dbdb7da1cae6e58d8b1b47948c16bb7a6babd72)
1*5dbdb7daSHaojian Zhuang /*
2*5dbdb7daSHaojian Zhuang  * Copyright (c) 2016-2017, ARM Limited and Contributors. All rights reserved.
3*5dbdb7daSHaojian Zhuang  *
4*5dbdb7daSHaojian Zhuang  * Redistribution and use in source and binary forms, with or without
5*5dbdb7daSHaojian Zhuang  * modification, are permitted provided that the following conditions are met:
6*5dbdb7daSHaojian Zhuang  *
7*5dbdb7daSHaojian Zhuang  * Redistributions of source code must retain the above copyright notice, this
8*5dbdb7daSHaojian Zhuang  * list of conditions and the following disclaimer.
9*5dbdb7daSHaojian Zhuang  *
10*5dbdb7daSHaojian Zhuang  * Redistributions in binary form must reproduce the above copyright notice,
11*5dbdb7daSHaojian Zhuang  * this list of conditions and the following disclaimer in the documentation
12*5dbdb7daSHaojian Zhuang  * and/or other materials provided with the distribution.
13*5dbdb7daSHaojian Zhuang  *
14*5dbdb7daSHaojian Zhuang  * Neither the name of ARM nor the names of its contributors may be used
15*5dbdb7daSHaojian Zhuang  * to endorse or promote products derived from this software without specific
16*5dbdb7daSHaojian Zhuang  * prior written permission.
17*5dbdb7daSHaojian Zhuang  *
18*5dbdb7daSHaojian Zhuang  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
19*5dbdb7daSHaojian Zhuang  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
20*5dbdb7daSHaojian Zhuang  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
21*5dbdb7daSHaojian Zhuang  * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
22*5dbdb7daSHaojian Zhuang  * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
23*5dbdb7daSHaojian Zhuang  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
24*5dbdb7daSHaojian Zhuang  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
25*5dbdb7daSHaojian Zhuang  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
26*5dbdb7daSHaojian Zhuang  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
27*5dbdb7daSHaojian Zhuang  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
28*5dbdb7daSHaojian Zhuang  * POSSIBILITY OF SUCH DAMAGE.
29*5dbdb7daSHaojian Zhuang  */
30*5dbdb7daSHaojian Zhuang 
31*5dbdb7daSHaojian Zhuang #ifndef __DW_MMC_H__
32*5dbdb7daSHaojian Zhuang #define __DW_MMC_H__
33*5dbdb7daSHaojian Zhuang 
34*5dbdb7daSHaojian Zhuang typedef struct dw_mmc_params {
35*5dbdb7daSHaojian Zhuang 	uintptr_t	reg_base;
36*5dbdb7daSHaojian Zhuang 	uintptr_t	desc_base;
37*5dbdb7daSHaojian Zhuang 	size_t		desc_size;
38*5dbdb7daSHaojian Zhuang 	int		clk_rate;
39*5dbdb7daSHaojian Zhuang 	int		bus_width;
40*5dbdb7daSHaojian Zhuang 	unsigned int	flags;
41*5dbdb7daSHaojian Zhuang } dw_mmc_params_t;
42*5dbdb7daSHaojian Zhuang 
43*5dbdb7daSHaojian Zhuang void dw_mmc_init(dw_mmc_params_t *params);
44*5dbdb7daSHaojian Zhuang 
45*5dbdb7daSHaojian Zhuang #endif	/* __DW_MMC_H__ */
46