]> git.karo-electronics.de Git - mv-sheeva.git/blobdiff - drivers/mmc/host/msm_sdcc.h
Merge tag 'v2.6.38' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6
[mv-sheeva.git] / drivers / mmc / host / msm_sdcc.h
index ff2b0f74f6f427d4fa9b611d8b71be0b6f45cc40..939557af266d6e535c8b416895665cdaaceef645 100644 (file)
 #define MCI_IRQENABLE  \
        (MCI_CMDCRCFAILMASK|MCI_DATACRCFAILMASK|MCI_CMDTIMEOUTMASK|     \
        MCI_DATATIMEOUTMASK|MCI_TXUNDERRUNMASK|MCI_RXOVERRUNMASK|       \
-       MCI_CMDRESPENDMASK|MCI_CMDSENTMASK|MCI_DATAENDMASK)
+       MCI_CMDRESPENDMASK|MCI_CMDSENTMASK|MCI_DATAENDMASK|MCI_PROGDONEMASK)
 
 /*
  * The size of the FIFO in bytes.
@@ -172,6 +172,8 @@ struct msmsdcc_dma_data {
        struct msmsdcc_host             *host;
        int                             busy; /* Set if DM is busy */
        int                             active;
+       unsigned int                    result;
+       struct msm_dmov_errdata         err;
 };
 
 struct msmsdcc_pio_data {
@@ -188,7 +190,6 @@ struct msmsdcc_curr_req {
        unsigned int            xfer_remain;    /* Bytes remaining to send */
        unsigned int            data_xfered;    /* Bytes acked by BLKEND irq */
        int                     got_dataend;
-       int                     got_datablkend;
        int                     user_pages;
 };
 
@@ -235,6 +236,7 @@ struct msmsdcc_host {
        int                     cmdpoll;
        struct msmsdcc_stats    stats;
 
+       struct tasklet_struct   dma_tlet;
        /* Command parameters */
        unsigned int            cmd_timeout;
        unsigned int            cmd_pio_irqmask;
@@ -242,6 +244,8 @@ struct msmsdcc_host {
        struct mmc_command      *cmd_cmd;
        u32                     cmd_c;
 
+       bool prog_scan;
+       bool prog_enable;
 };
 
 #endif