⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 sdcard.h

📁 嵌入式linux系统下hi3510平台的osd开发源码
💻 H
字号:
/*
 * extdrv/interface/spi_sd/sdcard.h for Linux .
 *
 * History: 
 *      2006-4-11 create this file
 */ 
 
#ifndef __SDCARD_H__
#define __SDCARD_H__

		
	#define SD_WORKQUEUE_NAME "sd_workqueue_name"
	#define KERNEL_SECTOR_SIZE 512
    
	#define MAXNUM		1024
	#define SSPDELAYW	50
	#define SSPDELAYR	10
    
	#define CONFIG_SDCARD_DEBUG 
	#ifdef CONFIG_SDCARD_DEBUG
		#define DBG(x...)	printk( x) /* KERN_DEBUG */
	#else
		#define DBG(x...)	do { } while (0)
	#endif

	
	struct sd_device 
	{
		unsigned long size;
		spinlock_t lock;
	#ifdef CONFIG_SSP_DMA
		char * readbuf;
		char * writebuf;
	#else
	    	char readbuf[MAXNUM*KERNEL_SECTOR_SIZE],writebuf[MAXNUM*KERNEL_SECTOR_SIZE];
	#endif
	    unsigned int mapreadbufaddr,mapwritebufaddr;
	    unsigned int raddr,waddr;
	    unsigned int roffset,woffset;
	    unsigned int rblock_num,wblock_num;
	    unsigned int readlist[MAXNUM][2];
	    unsigned int readlist_offset;
	    struct gendisk *gd;

	    wait_queue_head_t wq;
	    wait_queue_head_t dma_wq;
	    unsigned int media_change;
	    unsigned int users;
	    unsigned int sd_error;
	    unsigned int sd_online;
	    int major_num;
	};
	
	
	#ifdef CONFIG_SSP_DMA
	extern unsigned int sdcard_read(unsigned int addr,unsigned int off,unsigned int block_num);
	#else
	extern unsigned int sdcard_read(unsigned int addr,unsigned char *buf,unsigned int block_num);
	#endif
	#ifdef CONFIG_SSP_DMA
	extern unsigned int sdcard_write(unsigned int addr,unsigned int off,unsigned int block_num);
	#else
	extern unsigned int sdcard_write(unsigned int addr,unsigned char *buf,unsigned int block_num);
	#endif
	extern unsigned int sdcard_init(void);
	extern void sdcard_exit(void);
	extern unsigned int sdcard_csd_read(void);
	extern unsigned int sdcard_cid_read(void);
	extern void sdcard_repower(void);
	extern unsigned char sdcard_read_byte(void);
	extern unsigned char sdcard_write_byte(unsigned char byte);
	#ifdef CONFIG_SSP_DMA
	extern int sd_dmac_ssp_init(unsigned int *readbuf,unsigned int *writebuf);;
	extern void sd_dmac_ssp_exit(void);
	#endif


#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -