1554c0a3aSHans de Goede /******************************************************************************
2554c0a3aSHans de Goede  *
3554c0a3aSHans de Goede  * Copyright(c) 2007 - 2011 Realtek Corporation. All rights reserved.
4554c0a3aSHans de Goede  *
5554c0a3aSHans de Goede  * This program is free software; you can redistribute it and/or modify it
6554c0a3aSHans de Goede  * under the terms of version 2 of the GNU General Public License as
7554c0a3aSHans de Goede  * published by the Free Software Foundation.
8554c0a3aSHans de Goede  *
9554c0a3aSHans de Goede  * This program is distributed in the hope that it will be useful, but WITHOUT
10554c0a3aSHans de Goede  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11554c0a3aSHans de Goede  * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
12554c0a3aSHans de Goede  * more details.
13554c0a3aSHans de Goede  *
14554c0a3aSHans de Goede  ******************************************************************************/
15554c0a3aSHans de Goede #ifndef __SDIO_OPS_LINUX_H__
16554c0a3aSHans de Goede #define __SDIO_OPS_LINUX_H__
17554c0a3aSHans de Goede 
18554c0a3aSHans de Goede #define SDIO_ERR_VAL8	0xEA
19554c0a3aSHans de Goede #define SDIO_ERR_VAL16	0xEAEA
20554c0a3aSHans de Goede #define SDIO_ERR_VAL32	0xEAEAEAEA
21554c0a3aSHans de Goede 
22554c0a3aSHans de Goede u8 sd_f0_read8(struct intf_hdl *pintfhdl, u32 addr, s32 *err);
23554c0a3aSHans de Goede 
24554c0a3aSHans de Goede s32 _sd_cmd52_read(struct intf_hdl *pintfhdl, u32 addr, u32 cnt, u8 *pdata);
25554c0a3aSHans de Goede s32 _sd_cmd52_write(struct intf_hdl *pintfhdl, u32 addr, u32 cnt, u8 *pdata);
26554c0a3aSHans de Goede s32 sd_cmd52_read(struct intf_hdl *pintfhdl, u32 addr, u32 cnt, u8 *pdata);
27554c0a3aSHans de Goede s32 sd_cmd52_write(struct intf_hdl *pintfhdl, u32 addr, u32 cnt, u8 *pdata);
28554c0a3aSHans de Goede 
29554c0a3aSHans de Goede u8 sd_read8(struct intf_hdl *pintfhdl, u32 addr, s32 *err);
30554c0a3aSHans de Goede u32 sd_read32(struct intf_hdl *pintfhdl, u32 addr, s32 *err);
31554c0a3aSHans de Goede s32 _sd_read(struct intf_hdl *pintfhdl, u32 addr, u32 cnt, void *pdata);
32554c0a3aSHans de Goede s32 sd_read(struct intf_hdl *pintfhdl, u32 addr, u32 cnt, void *pdata);
33554c0a3aSHans de Goede void sd_write8(struct intf_hdl *pintfhdl, u32 addr, u8 v, s32 *err);
34554c0a3aSHans de Goede void sd_write32(struct intf_hdl *pintfhdl, u32 addr, u32 v, s32 *err);
35554c0a3aSHans de Goede s32 _sd_write(struct intf_hdl *pintfhdl, u32 addr, u32 cnt, void *pdata);
36554c0a3aSHans de Goede s32 sd_write(struct intf_hdl *pintfhdl, u32 addr, u32 cnt, void *pdata);
37554c0a3aSHans de Goede 
38554c0a3aSHans de Goede 
39554c0a3aSHans de Goede void rtw_sdio_set_irq_thd(struct dvobj_priv *dvobj, void *thd_hdl);
40554c0a3aSHans de Goede #endif
41