From patchwork Fri Jul 20 09:28:10 2012 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Venkatraman S X-Patchwork-Id: 1220141 Return-Path: X-Original-To: patchwork-linux-omap@patchwork.kernel.org Delivered-To: patchwork-process-083081@patchwork2.kernel.org Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by patchwork2.kernel.org (Postfix) with ESMTP id 525E1DF24C for ; Fri, 20 Jul 2012 09:28:38 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751507Ab2GTJ2h (ORCPT ); Fri, 20 Jul 2012 05:28:37 -0400 Received: from na3sys009aog102.obsmtp.com ([74.125.149.69]:46519 "EHLO na3sys009aog102.obsmtp.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751227Ab2GTJ2g (ORCPT ); Fri, 20 Jul 2012 05:28:36 -0400 Received: from mail-bk0-f47.google.com ([209.85.214.47]) (using TLSv1) by na3sys009aob102.postini.com ([74.125.148.12]) with SMTP ID DSNKUAkkwwe9slvLPBQzYZ0yP/CQMZBwbizK@postini.com; Fri, 20 Jul 2012 02:28:36 PDT Received: by bkcik5 with SMTP id ik5so3087422bkc.20 for ; Fri, 20 Jul 2012 02:28:30 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc:content-type:x-gm-message-state; bh=4b3qqvnUYjHdOTYshP8YjO8Bg0KjoYMYIE/ywA4Lylk=; b=gLWTYJiD6gKbYU4fXvYM3k8+rNIXO1XTNguEh//pV73L9z4Tx+p3KPDxsmgwlrODid MpAAjhdzlb+VscfNvjxJB3P19qHHCFBnvz2xoK5CUKkKnC54BK5kZmizKyw7ocESDtT4 9tVG6GWAu0c5nGStRAn/gKqSydrsZukwwVD/D9iyj7hT5Uu81tj+PmkV6YlhiW8hCs0U FXUPXIcvb0LVlGvLP3lvY1vopt1B7icdzmHk1pOPhMGMGXT9ZYQQM5v6tZtvRqlm86Bx UMJ+PnCw12grKwlK0hF4EMmu9AJedwDv3HnJLx0hGKBWEzvj9mZqXmL7c6GtrMsBvpal VhGg== Received: by 10.204.130.10 with SMTP id q10mr2402773bks.90.1342776510351; Fri, 20 Jul 2012 02:28:30 -0700 (PDT) MIME-Version: 1.0 Received: by 10.205.119.8 with HTTP; Fri, 20 Jul 2012 02:28:10 -0700 (PDT) In-Reply-To: <20120719113246.GN6522@atomide.com> References: <20120718065951.GH6522@atomide.com> <20120718071039.GI6522@atomide.com> <20120719113246.GN6522@atomide.com> From: "S, Venkatraman" Date: Fri, 20 Jul 2012 14:58:10 +0530 Message-ID: Subject: Re: [PATCH 1/1] mmc: host: enable OMAP DMA engine support for omap hosts by default To: Tony Lindgren Cc: "Shilimkar, Santosh" , Javier Martinez Canillas , Javier Martinez Canillas , Kevin Hilman , Russell King , linux-omap@vger.kernel.org, linux-arm-kernel@lists.infradead.org, Chris Ball , linux-mmc@vger.kernel.org X-Gm-Message-State: ALoCoQmMK9d4ksNXofQp9MVPRwXTqrUe9yK7er6heQ+zb3X2Jw5j7V0Z6wAKTEUUerAeKOywIQ4N Sender: linux-omap-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-omap@vger.kernel.org On Thu, Jul 19, 2012 at 5:02 PM, Tony Lindgren wrote: > * Shilimkar, Santosh [120718 02:49]: >> >> "The patch simply make them depend on DMA_OMAP since DMA_OMAP >> will select DMA_ENGINE automatically" >> >> This won't be true if the DMA selection are not done >> at ARCH_OMAP level as discussed in this thread. >> >> Having said that, I think Russell and Tony need to >> take call on how this needs to be handled. > > As the DMA channels can run out, drivers should also work > without DMA. And building everything as modules should be > possible for the distro kernels. > > So I'd rather not have either select or depends and have > the drivers fixed. > Ok - I'll work on getting polling mode to work, but as you know it's not the mode to get the best performance out of the device. I see that you've also merged the changes to omap2plus_defconfig, which should get MMC working as before DMA Engine conversion. There's a small patch needed to omap_hsmmc to return a non-zero error code during the probe error path. This will atleast make probe failure explicit when DMA is not available. Let me know if you want me to post it separately as a patch.. unsigned tx_req, rx_req; --- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html diff --git a/drivers/mmc/host/omap_hsmmc.c b/drivers/mmc/host/omap_hsmmc.c index 2338703..892a046 100644 --- a/drivers/mmc/host/omap_hsmmc.c +++ b/drivers/mmc/host/omap_hsmmc.c @@ -1773,7 +1773,7 @@ static int __devinit omap_hsmmc_probe(struct platform_device *pdev) struct mmc_host *mmc; struct omap_hsmmc_host *host = NULL; struct resource *res; - int ret, irq; + int ret = -ENXIO, irq; const struct of_device_id *match; dma_cap_mask_t mask;