]> git.karo-electronics.de Git - linux-beck.git/commitdiff
staging: rts_pstor: delete a function
authorwwang <wei_wang@realsil.com.cn>
Wed, 16 Feb 2011 07:56:10 +0000 (15:56 +0800)
committerGreg Kroah-Hartman <gregkh@suse.de>
Fri, 18 Feb 2011 20:31:28 +0000 (12:31 -0800)
Delete a function named rtsx_transfer_sglist which won't be called.

Signed-off-by: wwang <wei_wang@realsil.com.cn>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
drivers/staging/rts_pstor/rtsx_transport.c

index e581f15147f20980d133301bf9bf5afc75e04a07..3b160dcb98b76b67f0b76835db75544213526a96 100644 (file)
@@ -715,142 +715,6 @@ out:
        return err;
 }
 
-int rtsx_transfer_sglist(struct rtsx_chip *chip, u8 card,
-               struct scatterlist *sg, int num_sg,
-               enum dma_data_direction dma_dir, int timeout)
-{
-       struct rtsx_dev *rtsx = chip->rtsx;
-       struct completion trans_done;
-       u8 dir;
-       int buf_cnt, i;
-       int err = 0;
-       long timeleft;
-
-       if ((sg == NULL) || (num_sg <= 0))
-               return -EIO;
-
-       if (dma_dir == DMA_TO_DEVICE) {
-               dir = HOST_TO_DEVICE;
-       } else if (dma_dir == DMA_FROM_DEVICE) {
-               dir = DEVICE_TO_HOST;
-       } else {
-               return -ENXIO;
-       }
-
-       if (card == SD_CARD) {
-               rtsx->check_card_cd = SD_EXIST;
-       } else if (card == MS_CARD) {
-               rtsx->check_card_cd = MS_EXIST;
-       } else if (card == XD_CARD) {
-               rtsx->check_card_cd = XD_EXIST;
-       } else {
-               rtsx->check_card_cd = 0;
-       }
-
-       spin_lock_irq(&rtsx->reg_lock);
-
-       /* set up data structures for the wakeup system */
-       rtsx->done = &trans_done;
-
-       rtsx->trans_state = STATE_TRANS_SG;
-       rtsx->trans_result = TRANS_NOT_READY;
-
-       spin_unlock_irq(&rtsx->reg_lock);
-
-       buf_cnt = dma_map_sg(&(rtsx->pci->dev), sg, num_sg, dma_dir);
-
-       for (i = 0; i < buf_cnt; i++) {
-               u32 bier = 0;
-               u32 val = (1 << 31);
-               dma_addr_t addr = sg_dma_address(sg + i);
-               unsigned int len = sg_dma_len(sg + i);
-
-               RTSX_DEBUGP("dma_addr = 0x%x, dma_len = %d\n",
-                            (unsigned int)addr, len);
-
-               val |= (u32)(dir & 0x01) << 29;
-               val |= (u32)(len & 0x00FFFFFF);
-
-               spin_lock_irq(&rtsx->reg_lock);
-
-               init_completion(&trans_done);
-
-               if (i == (buf_cnt - 1)) {
-                       /* If last transfer, disable data interrupt */
-                       bier = rtsx_readl(chip, RTSX_BIER);
-                       rtsx_writel(chip, RTSX_BIER, bier & 0xBFFFFFFF);
-               }
-
-               rtsx_writel(chip, RTSX_HDBAR, addr);
-               rtsx_writel(chip, RTSX_HDBCTLR, val);
-
-               spin_unlock_irq(&rtsx->reg_lock);
-
-               timeleft = wait_for_completion_interruptible_timeout(
-                       &trans_done, timeout * HZ / 1000);
-               if (timeleft <= 0) {
-                       RTSX_DEBUGP("Timeout (%s %d)\n", __func__, __LINE__);
-                       RTSX_DEBUGP("chip->int_reg = 0x%x\n", chip->int_reg);
-                       err = -ETIMEDOUT;
-                       if (i == (buf_cnt - 1))
-                               rtsx_writel(chip, RTSX_BIER, bier);
-                       goto out;
-               }
-
-               spin_lock_irq(&rtsx->reg_lock);
-               if (rtsx->trans_result == TRANS_RESULT_FAIL) {
-                       err = -EIO;
-                       spin_unlock_irq(&rtsx->reg_lock);
-                       if (i == (buf_cnt - 1))
-                               rtsx_writel(chip, RTSX_BIER, bier);
-                       goto out;
-               }
-               spin_unlock_irq(&rtsx->reg_lock);
-
-               if (i == (buf_cnt - 1)) {
-                       /* If last transfer, enable data interrupt
-                        * after transfer finished
-                        */
-                       rtsx_writel(chip, RTSX_BIER, bier);
-               }
-       }
-
-       /* Wait for TRANS_OK_INT */
-       spin_lock_irq(&rtsx->reg_lock);
-       if (rtsx->trans_result == TRANS_NOT_READY) {
-               init_completion(&trans_done);
-               spin_unlock_irq(&rtsx->reg_lock);
-               timeleft = wait_for_completion_interruptible_timeout(
-                       &trans_done, timeout * HZ / 1000);
-               if (timeleft <= 0) {
-                       RTSX_DEBUGP("Timeout (%s %d)\n", __func__, __LINE__);
-                       RTSX_DEBUGP("chip->int_reg = 0x%x\n", chip->int_reg);
-                       err = -ETIMEDOUT;
-                       goto out;
-               }
-       } else {
-               spin_unlock_irq(&rtsx->reg_lock);
-       }
-
-       spin_lock_irq(&rtsx->reg_lock);
-       if (rtsx->trans_result == TRANS_RESULT_FAIL) {
-               err = -EIO;
-       } else if (rtsx->trans_result == TRANS_RESULT_OK) {
-               err = 0;
-       }
-       spin_unlock_irq(&rtsx->reg_lock);
-
-out:
-       rtsx->done = NULL;
-       rtsx->trans_state = STATE_TRANS_NONE;
-       dma_unmap_sg(&(rtsx->pci->dev), sg, num_sg, dma_dir);
-
-       if (err < 0)
-               rtsx_stop_cmd(chip, card);
-
-       return err;
-}
-
 int rtsx_transfer_data_partial(struct rtsx_chip *chip, u8 card,
                void *buf, size_t len, int use_sg, unsigned int *index,
                unsigned int *offset, enum dma_data_direction dma_dir,