From patchwork Tue Jun 21 13:12:47 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ulf Hansson X-Patchwork-Id: 9190579 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork.web.codeaurora.org (Postfix) with ESMTP id 0F8D960756 for ; Tue, 21 Jun 2016 13:37:41 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 011BE27FAC for ; Tue, 21 Jun 2016 13:37:41 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id EA15E28174; Tue, 21 Jun 2016 13:37:40 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-6.8 required=2.0 tests=BAYES_00,DKIM_SIGNED, RCVD_IN_DNSWL_HI,T_DKIM_INVALID autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id E83E027FAC for ; Tue, 21 Jun 2016 13:37:39 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751099AbcFUNhi (ORCPT ); Tue, 21 Jun 2016 09:37:38 -0400 Received: from mail-lf0-f53.google.com ([209.85.215.53]:36835 "EHLO mail-lf0-f53.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751347AbcFUNhh (ORCPT ); Tue, 21 Jun 2016 09:37:37 -0400 Received: by mail-lf0-f53.google.com with SMTP id q132so24308841lfe.3 for ; Tue, 21 Jun 2016 06:37:16 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=iPQNT5m/lIDSlhuAh9AuNwbNPnJGgvBlqAGwoAoVcFA=; b=FcIb7fachdZxq7b8/XAHEeDKIpMje5PBZYGQ1NUr2A+EdA3OpmOgNYLh3DhFjURBSb EhBdf35H7W+07VJRPgEXYjpXk1exC7S9Axc9TiJvM7gr1HLWMfbI5omh/GRcS3p3C0O+ e5UBAfEwvFDR9yCOcXfYKmEb4DQ/AzrMlP8yM= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=iPQNT5m/lIDSlhuAh9AuNwbNPnJGgvBlqAGwoAoVcFA=; b=nFSk+PXvLMkwpghCVHFg8SbLtbeo89ysmjec4eXCCh3wOkg/vTuIdEjGMT2nPaRMgT azKS7lL233XhPNt8G0hnPoV8iTcTEEIGtuHrc9raMK2O6w2/JGVCwDI2Khyym5VH/jsF MX4/H7q7W2LC8wjoujAt2hWnH52BzcF7liCXAI/BPQkCWwQikx1ZW/RZAzYoWqwgGoxa Ls9Cw8EqIC5AG9/YqUdr6vfZMdUYMYgDrkfx3VVITT1z4Z6Dzrq7QFdcBqns5d2Krksn WS6fcBWDjjUcPYOOftdYnb/H3ZPz1hH84Z6KrmKw84RJ8vq4uaDf8NVDTsnL2TCt+zAm /fUg== X-Gm-Message-State: ALyK8tIHqNmw8tjU5AvSeCf+rr8Y6VH+o+6ppg8s6p+4JmqlbT/TXhvQ2zZXe6N8tyryOSu6 X-Received: by 10.25.86.79 with SMTP id k76mr3314564lfb.135.1466514791191; Tue, 21 Jun 2016 06:13:11 -0700 (PDT) Received: from uffe-Latitude-E6430s.ideon.se ([85.235.10.227]) by smtp.gmail.com with ESMTPSA id ze5sm4978244lbb.8.2016.06.21.06.13.09 (version=TLSv1/SSLv3 cipher=OTHER); Tue, 21 Jun 2016 06:13:09 -0700 (PDT) From: Ulf Hansson To: linux-mmc@vger.kernel.org, Ulf Hansson Cc: Kuninori Morimoto , Geert Uytterhoeven , Nguyen Viet Dung , Magnus Damm , Simon Horman , Baolin Wang Subject: [PATCH 2/5] mmc: sh_mmcif: Enable MMC_CAP2_NO_SD and MMC_CAP2_NO_SDIO Date: Tue, 21 Jun 2016 15:12:47 +0200 Message-Id: <1466514770-9462-3-git-send-email-ulf.hansson@linaro.org> X-Mailer: git-send-email 1.9.1 In-Reply-To: <1466514770-9462-1-git-send-email-ulf.hansson@linaro.org> References: <1466514770-9462-1-git-send-email-ulf.hansson@linaro.org> Sender: linux-mmc-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-mmc@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP Enable the capabilities which tells the mmc core to prevent sending SD and SDIO commands during card initialization. In this way, we can also remove the validation of non-supported commands in the ->request() callback. Signed-off-by: Ulf Hansson --- drivers/mmc/host/sh_mmcif.c | 18 ++---------------- 1 file changed, 2 insertions(+), 16 deletions(-) diff --git a/drivers/mmc/host/sh_mmcif.c b/drivers/mmc/host/sh_mmcif.c index dd64b86..4d6c59f 100644 --- a/drivers/mmc/host/sh_mmcif.c +++ b/drivers/mmc/host/sh_mmcif.c @@ -1009,22 +1009,6 @@ static void sh_mmcif_request(struct mmc_host *mmc, struct mmc_request *mrq) host->state = STATE_REQUEST; spin_unlock_irqrestore(&host->lock, flags); - switch (mrq->cmd->opcode) { - /* MMCIF does not support SD/SDIO command */ - case MMC_SLEEP_AWAKE: /* = SD_IO_SEND_OP_COND (5) */ - case MMC_SEND_EXT_CSD: /* = SD_SEND_IF_COND (8) */ - if ((mrq->cmd->flags & MMC_CMD_MASK) != MMC_CMD_BCR) - break; - case MMC_APP_CMD: - case SD_IO_RW_DIRECT: - host->state = STATE_IDLE; - mrq->cmd->error = -ETIMEDOUT; - mmc_request_done(mmc, mrq); - return; - default: - break; - } - host->mrq = mrq; sh_mmcif_start_cmd(host, mrq); @@ -1488,6 +1472,8 @@ static int sh_mmcif_probe(struct platform_device *pdev) sh_mmcif_init_ocr(host); mmc->caps |= MMC_CAP_MMC_HIGHSPEED | MMC_CAP_WAIT_WHILE_BUSY; + mmc->caps2 |= MMC_CAP2_NO_SD | MMC_CAP2_NO_SDIO; + if (pd && pd->caps) mmc->caps |= pd->caps; mmc->max_segs = 32;