diff options
Diffstat (limited to 'libc/kernel/common/linux/mmc')
-rw-r--r-- | libc/kernel/common/linux/mmc/card.h | 100 | ||||
-rw-r--r-- | libc/kernel/common/linux/mmc/host.h | 120 | ||||
-rw-r--r-- | libc/kernel/common/linux/mmc/mmc.h | 99 |
3 files changed, 0 insertions, 319 deletions
diff --git a/libc/kernel/common/linux/mmc/card.h b/libc/kernel/common/linux/mmc/card.h deleted file mode 100644 index 94afe21..0000000 --- a/libc/kernel/common/linux/mmc/card.h +++ /dev/null @@ -1,100 +0,0 @@ -/**************************************************************************** - **************************************************************************** - *** - *** This header was automatically generated from a Linux kernel header - *** of the same name, to make information necessary for userspace to - *** call into the kernel available to libc. It contains only constants, - *** structures, and macros generated from the original header, and thus, - *** contains no copyrightable information. - *** - **************************************************************************** - ****************************************************************************/ -#ifndef LINUX_MMC_CARD_H -#define LINUX_MMC_CARD_H - -#include <linux/mmc/mmc.h> - -struct mmc_cid { - unsigned int manfid; - char prod_name[8]; - unsigned int serial; - unsigned short oemid; - unsigned short year; - unsigned char hwrev; - unsigned char fwrev; - unsigned char month; -}; - -struct mmc_csd { - unsigned char mmca_vsn; - unsigned short cmdclass; - unsigned short tacc_clks; - unsigned int tacc_ns; - unsigned int r2w_factor; - unsigned int max_dtr; - unsigned int read_blkbits; - unsigned int write_blkbits; - unsigned int capacity; - unsigned int read_partial:1, - read_misalign:1, - write_partial:1, - write_misalign:1; -}; - -struct sd_scr { - unsigned char sda_vsn; - unsigned char bus_widths; -#define SD_SCR_BUS_WIDTH_1 (1<<0) -#define SD_SCR_BUS_WIDTH_4 (1<<2) -}; - -struct mmc_host; - -struct mmc_card { - struct list_head node; - struct mmc_host *host; - struct device dev; - unsigned int rca; - unsigned int state; -#define MMC_STATE_PRESENT (1<<0) -#define MMC_STATE_DEAD (1<<1) -#define MMC_STATE_BAD (1<<2) -#define MMC_STATE_SDCARD (1<<3) -#define MMC_STATE_READONLY (1<<4) - u32 raw_cid[4]; - u32 raw_csd[4]; - u32 raw_scr[2]; - struct mmc_cid cid; - struct mmc_csd csd; - struct sd_scr scr; -}; - -#define mmc_card_present(c) ((c)->state & MMC_STATE_PRESENT) -#define mmc_card_dead(c) ((c)->state & MMC_STATE_DEAD) -#define mmc_card_bad(c) ((c)->state & MMC_STATE_BAD) -#define mmc_card_sd(c) ((c)->state & MMC_STATE_SDCARD) -#define mmc_card_readonly(c) ((c)->state & MMC_STATE_READONLY) - -#define mmc_card_set_present(c) ((c)->state |= MMC_STATE_PRESENT) -#define mmc_card_set_dead(c) ((c)->state |= MMC_STATE_DEAD) -#define mmc_card_set_bad(c) ((c)->state |= MMC_STATE_BAD) -#define mmc_card_set_sd(c) ((c)->state |= MMC_STATE_SDCARD) -#define mmc_card_set_readonly(c) ((c)->state |= MMC_STATE_READONLY) - -#define mmc_card_name(c) ((c)->cid.prod_name) -#define mmc_card_id(c) ((c)->dev.bus_id) - -#define mmc_list_to_card(l) container_of(l, struct mmc_card, node) -#define mmc_get_drvdata(c) dev_get_drvdata(&(c)->dev) -#define mmc_set_drvdata(c,d) dev_set_drvdata(&(c)->dev, d) - -struct mmc_driver { - struct device_driver drv; - int (*probe)(struct mmc_card *); - void (*remove)(struct mmc_card *); - int (*suspend)(struct mmc_card *, pm_message_t); - int (*resume)(struct mmc_card *); -}; - -#define mmc_card_release_host(c) mmc_release_host((c)->host) -#endif diff --git a/libc/kernel/common/linux/mmc/host.h b/libc/kernel/common/linux/mmc/host.h deleted file mode 100644 index 9433626..0000000 --- a/libc/kernel/common/linux/mmc/host.h +++ /dev/null @@ -1,120 +0,0 @@ -/**************************************************************************** - **************************************************************************** - *** - *** This header was automatically generated from a Linux kernel header - *** of the same name, to make information necessary for userspace to - *** call into the kernel available to libc. It contains only constants, - *** structures, and macros generated from the original header, and thus, - *** contains no copyrightable information. - *** - **************************************************************************** - ****************************************************************************/ -#ifndef LINUX_MMC_HOST_H -#define LINUX_MMC_HOST_H - -#include <linux/mmc/mmc.h> - -struct mmc_ios { - unsigned int clock; - unsigned short vdd; - -#define MMC_VDD_150 0 -#define MMC_VDD_155 1 -#define MMC_VDD_160 2 -#define MMC_VDD_165 3 -#define MMC_VDD_170 4 -#define MMC_VDD_180 5 -#define MMC_VDD_190 6 -#define MMC_VDD_200 7 -#define MMC_VDD_210 8 -#define MMC_VDD_220 9 -#define MMC_VDD_230 10 -#define MMC_VDD_240 11 -#define MMC_VDD_250 12 -#define MMC_VDD_260 13 -#define MMC_VDD_270 14 -#define MMC_VDD_280 15 -#define MMC_VDD_290 16 -#define MMC_VDD_300 17 -#define MMC_VDD_310 18 -#define MMC_VDD_320 19 -#define MMC_VDD_330 20 -#define MMC_VDD_340 21 -#define MMC_VDD_350 22 -#define MMC_VDD_360 23 - - unsigned char bus_mode; - -#define MMC_BUSMODE_OPENDRAIN 1 -#define MMC_BUSMODE_PUSHPULL 2 - - unsigned char chip_select; - -#define MMC_CS_DONTCARE 0 -#define MMC_CS_HIGH 1 -#define MMC_CS_LOW 2 - - unsigned char power_mode; - -#define MMC_POWER_OFF 0 -#define MMC_POWER_UP 1 -#define MMC_POWER_ON 2 - - unsigned char bus_width; - -#define MMC_BUS_WIDTH_1 0 -#define MMC_BUS_WIDTH_4 2 -}; - -struct mmc_host_ops { - void (*request)(struct mmc_host *host, struct mmc_request *req); - void (*set_ios)(struct mmc_host *host, struct mmc_ios *ios); - int (*get_ro)(struct mmc_host *host); -}; - -struct mmc_card; -struct device; - -struct mmc_host { - struct device *dev; - struct class_device class_dev; - int index; - const struct mmc_host_ops *ops; - unsigned int f_min; - unsigned int f_max; - u32 ocr_avail; - - unsigned long caps; - -#define MMC_CAP_4_BIT_DATA (1 << 0) - - unsigned int max_seg_size; - unsigned short max_hw_segs; - unsigned short max_phys_segs; - unsigned short max_sectors; - unsigned short unused; - - struct mmc_ios ios; - u32 ocr; - - unsigned int mode; -#define MMC_MODE_MMC 0 -#define MMC_MODE_SD 1 - - struct list_head cards; - - wait_queue_head_t wq; - spinlock_t lock; - struct mmc_card *card_busy; - struct mmc_card *card_selected; - - struct work_struct detect; - - unsigned long private[0] ____cacheline_aligned; -}; - -#define mmc_dev(x) ((x)->dev) -#define mmc_hostname(x) ((x)->class_dev.class_id) - -#endif - diff --git a/libc/kernel/common/linux/mmc/mmc.h b/libc/kernel/common/linux/mmc/mmc.h deleted file mode 100644 index 089714c..0000000 --- a/libc/kernel/common/linux/mmc/mmc.h +++ /dev/null @@ -1,99 +0,0 @@ -/**************************************************************************** - **************************************************************************** - *** - *** This header was automatically generated from a Linux kernel header - *** of the same name, to make information necessary for userspace to - *** call into the kernel available to libc. It contains only constants, - *** structures, and macros generated from the original header, and thus, - *** contains no copyrightable information. - *** - **************************************************************************** - ****************************************************************************/ -#ifndef MMC_H -#define MMC_H - -#include <linux/list.h> -#include <linux/interrupt.h> -#include <linux/device.h> - -struct request; -struct mmc_data; -struct mmc_request; - -struct mmc_command { - u32 opcode; - u32 arg; - u32 resp[4]; - unsigned int flags; -#define MMC_RSP_PRESENT (1 << 0) -#define MMC_RSP_136 (1 << 1) -#define MMC_RSP_CRC (1 << 2) -#define MMC_RSP_BUSY (1 << 3) -#define MMC_RSP_OPCODE (1 << 4) -#define MMC_CMD_MASK (3 << 5) -#define MMC_CMD_AC (0 << 5) -#define MMC_CMD_ADTC (1 << 5) -#define MMC_CMD_BC (2 << 5) -#define MMC_CMD_BCR (3 << 5) - -#define MMC_RSP_NONE (0) -#define MMC_RSP_R1 (MMC_RSP_PRESENT|MMC_RSP_CRC|MMC_RSP_OPCODE) -#define MMC_RSP_R1B (MMC_RSP_PRESENT|MMC_RSP_CRC|MMC_RSP_OPCODE|MMC_RSP_BUSY) -#define MMC_RSP_R2 (MMC_RSP_PRESENT|MMC_RSP_136|MMC_RSP_CRC) -#define MMC_RSP_R3 (MMC_RSP_PRESENT) -#define MMC_RSP_R6 (MMC_RSP_PRESENT|MMC_RSP_CRC) - -#define mmc_resp_type(cmd) ((cmd)->flags & (MMC_RSP_PRESENT|MMC_RSP_136|MMC_RSP_CRC|MMC_RSP_BUSY|MMC_RSP_OPCODE)) - -#define mmc_cmd_type(cmd) ((cmd)->flags & MMC_CMD_MASK) - - unsigned int retries; - unsigned int error; - -#define MMC_ERR_NONE 0 -#define MMC_ERR_TIMEOUT 1 -#define MMC_ERR_BADCRC 2 -#define MMC_ERR_FIFO 3 -#define MMC_ERR_FAILED 4 -#define MMC_ERR_INVALID 5 - - struct mmc_data *data; - struct mmc_request *mrq; -}; - -struct mmc_data { - unsigned int timeout_ns; - unsigned int timeout_clks; - unsigned int blksz_bits; - unsigned int blksz; - unsigned int blocks; - unsigned int error; - unsigned int flags; - -#define MMC_DATA_WRITE (1 << 8) -#define MMC_DATA_READ (1 << 9) -#define MMC_DATA_STREAM (1 << 10) -#define MMC_DATA_MULTI (1 << 11) - - unsigned int bytes_xfered; - - struct mmc_command *stop; - struct mmc_request *mrq; - - unsigned int sg_len; - struct scatterlist *sg; -}; - -struct mmc_request { - struct mmc_command *cmd; - struct mmc_data *data; - struct mmc_command *stop; - - void *done_data; - void (*done)(struct mmc_request *); -}; - -struct mmc_host; -struct mmc_card; - -#endif |