All of lore.kernel.org
 help / color / mirror / Atom feed
From: Nicolas Pitre <nico@fluxnic.net>
To: Roger Quadros <roger.quadros@nokia.com>
Cc: "Hunter Adrian (Nokia-MS/Helsinki)" <adrian.hunter@nokia.com>,
	Ohad Ben-Cohen <ohad@wizery.com>,
	"linux-wireless@vger.kernel.org" <linux-wireless@vger.kernel.org>,
	"linux-mmc@vger.kernel.org" <linux-mmc@vger.kernel.org>,
	"linux-omap@vger.kernel.org" <linux-omap@vger.kernel.org>,
	"linux-arm-kernel@lists.infradead.org"
	<linux-arm-kernel@lists.infradead.org>,
	"linux@arm.linux.org.uk" <linux@arm.linux.org.uk>,
	Chikkature Rajashekar Madhusudhan <madhu.cr@ti.com>,
	"Coelho Luciano (Nokia-MS/Helsinki)" <Luciano.Coelho@nokia.com>,
	"akpm@linux-foundation.org" <akpm@linux-foundation.org>,
	San Mehat <san@google.com>
Subject: Re: [PATCH 11/15] wireless: wl1271: introduce platform device support
Date: Wed, 07 Jul 2010 10:02:42 -0400 (EDT)	[thread overview]
Message-ID: <alpine.LFD.2.00.1007070954010.6020@xanadu.home> (raw)
In-Reply-To: <4C34347F.8030000@nokia.com>

On Wed, 7 Jul 2010, Roger Quadros wrote:

> On 07/06/2010 10:51 PM, Hunter Adrian (Nokia-MS/Helsinki) wrote:
> > For eMMC in omap_hsmmc, this is all done via claim_host / release_host
> > which call ->enable() / ->disable() methods.  omap_hsmmc makes use of
> > mmc_power_restore_host() which calls host->bus_ops->power_restore()
> > which is not implemented for SDIO, but for MMC and SD it reinitializes
> > the card.

This is IMHO a really bad design.  The power control decision has to 
come from the top, not from the bottom.  And certainly not with a 
U-turn dependency the omap_hsmmc is using.

I regret to say this, but the omap_hsmmc driver is becoming a total 
mess.  The host controller driver has to be a dumb interface serving 
requests from the hardware used by the upper layer stack, not the place 
where decisions such as power handling should be made.  Think of it like 
an ethernet driver.  No ethernet driver in Linux is telling the IP stack 
when to shut down.

> Shouldn't the power control intelligence (i.e. when to turn power ON/OFF) lie
> with the bus drivers?

Absolutely!  And in the SDIO case that should lie with each function 
drivers.  Please let's stop this omap_hsmmc madness.


Nicolas

WARNING: multiple messages have this Message-ID (diff)
From: nico@fluxnic.net (Nicolas Pitre)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH 11/15] wireless: wl1271: introduce platform device support
Date: Wed, 07 Jul 2010 10:02:42 -0400 (EDT)	[thread overview]
Message-ID: <alpine.LFD.2.00.1007070954010.6020@xanadu.home> (raw)
In-Reply-To: <4C34347F.8030000@nokia.com>

On Wed, 7 Jul 2010, Roger Quadros wrote:

> On 07/06/2010 10:51 PM, Hunter Adrian (Nokia-MS/Helsinki) wrote:
> > For eMMC in omap_hsmmc, this is all done via claim_host / release_host
> > which call ->enable() / ->disable() methods.  omap_hsmmc makes use of
> > mmc_power_restore_host() which calls host->bus_ops->power_restore()
> > which is not implemented for SDIO, but for MMC and SD it reinitializes
> > the card.

This is IMHO a really bad design.  The power control decision has to 
come from the top, not from the bottom.  And certainly not with a 
U-turn dependency the omap_hsmmc is using.

I regret to say this, but the omap_hsmmc driver is becoming a total 
mess.  The host controller driver has to be a dumb interface serving 
requests from the hardware used by the upper layer stack, not the place 
where decisions such as power handling should be made.  Think of it like 
an ethernet driver.  No ethernet driver in Linux is telling the IP stack 
when to shut down.

> Shouldn't the power control intelligence (i.e. when to turn power ON/OFF) lie
> with the bus drivers?

Absolutely!  And in the SDIO case that should lie with each function 
drivers.  Please let's stop this omap_hsmmc madness.


Nicolas

  reply	other threads:[~2010-07-07 14:02 UTC|newest]

Thread overview: 161+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-07-06  0:37 [PATCH 00/15] wlan+omap+mmc: out-of-the-box WLAN support for ZOOM2/3 Ohad Ben-Cohen
2010-07-06  0:37 ` Ohad Ben-Cohen
2010-07-06  0:37 ` Ohad Ben-Cohen
2010-07-06  0:37 ` [PATCH 01/15] sdio: add TI + wl1271 ids Ohad Ben-Cohen
2010-07-06  0:37   ` Ohad Ben-Cohen
2010-07-06  0:37   ` Ohad Ben-Cohen
2010-07-06  0:37 ` [PATCH 02/15] wireless: wl1271: remove SDIO IDs from driver Ohad Ben-Cohen
2010-07-06  0:37   ` Ohad Ben-Cohen
2010-07-06  0:37   ` Ohad Ben-Cohen
2010-07-06  7:04   ` Luciano Coelho
2010-07-06  7:04     ` Luciano Coelho
2010-07-06  0:37 ` [PATCH 03/15] omap: mmc: prepare for software card detect support Ohad Ben-Cohen
2010-07-06  0:37   ` Ohad Ben-Cohen
2010-07-06  0:37   ` Ohad Ben-Cohen
2010-07-06  0:37 ` [PATCH 04/15] mmc: support embedded data field in mmc_host Ohad Ben-Cohen
2010-07-06  0:37   ` Ohad Ben-Cohen
2010-07-06  0:37   ` Ohad Ben-Cohen
2010-07-06 15:49   ` Grazvydas Ignotas
2010-07-06 15:49     ` Grazvydas Ignotas
2010-07-06 15:49     ` Grazvydas Ignotas
2010-07-06 15:54     ` Ohad Ben-Cohen
2010-07-06 15:54       ` Ohad Ben-Cohen
2010-07-08  3:39   ` Ghorai, Sukumar
2010-07-08  3:39   ` Ghorai, Sukumar
2010-07-08  3:39     ` Ghorai, Sukumar
2010-07-08  3:39     ` Ghorai, Sukumar
2010-07-06  0:37 ` [PATCH 05/15] omap: hsmmc: add virtual card detect support Ohad Ben-Cohen
2010-07-06  0:37   ` Ohad Ben-Cohen
2010-07-06  0:37   ` Ohad Ben-Cohen
2010-07-06  1:45   ` Nicolas Pitre
2010-07-06  1:45     ` Nicolas Pitre
2010-07-06 10:22     ` Ohad Ben-Cohen
2010-07-06 10:22       ` Ohad Ben-Cohen
2010-07-06 10:22       ` Ohad Ben-Cohen
2010-07-06 11:02       ` Roger Quadros
2010-07-06 11:02         ` Roger Quadros
2010-07-06 12:02         ` Ohad Ben-Cohen
2010-07-06 12:02           ` Ohad Ben-Cohen
2010-07-06 11:48       ` Ohad Ben-Cohen
2010-07-06 11:48         ` Ohad Ben-Cohen
2010-07-06 12:39         ` Roger Quadros
2010-07-06 12:39           ` Roger Quadros
2010-07-06 13:44           ` Ohad Ben-Cohen
2010-07-06 13:44             ` Ohad Ben-Cohen
2010-07-06 15:34         ` Madhusudhan
2010-07-06 15:34           ` Madhusudhan
2010-07-06 15:34           ` Madhusudhan
2010-07-06 17:00           ` Nicolas Pitre
2010-07-06 17:00             ` Nicolas Pitre
2010-07-06  0:37 ` [PATCH 06/15] omap zoom2: wlan board muxing Ohad Ben-Cohen
2010-07-06  0:37   ` Ohad Ben-Cohen
2010-07-06  0:37   ` Ohad Ben-Cohen
2010-07-06 11:43   ` Tony Lindgren
2010-07-06 11:43     ` Tony Lindgren
2010-07-08  3:39   ` Ghorai, Sukumar
2010-07-08  3:39   ` Ghorai, Sukumar
2010-07-08  3:39     ` Ghorai, Sukumar
2010-07-08  3:39     ` Ghorai, Sukumar
2010-07-08  9:45     ` Tony Lindgren
2010-07-08  9:45       ` Tony Lindgren
2010-07-08 20:12       ` Ohad Ben-Cohen
2010-07-08 20:12         ` Ohad Ben-Cohen
2010-07-08 20:12         ` Ohad Ben-Cohen
2010-07-06  0:37 ` [PATCH 07/15] omap zoom3: " Ohad Ben-Cohen
2010-07-06  0:37   ` Ohad Ben-Cohen
2010-07-06  0:37   ` Ohad Ben-Cohen
2010-07-06  0:37 ` [PATCH 08/15] wireless: wl1271: make wl12xx.h common to both spi and sdio Ohad Ben-Cohen
2010-07-06  0:37   ` Ohad Ben-Cohen
2010-07-06  0:37   ` Ohad Ben-Cohen
2010-07-06  7:08   ` Luciano Coelho
2010-07-06  7:08     ` Luciano Coelho
2010-07-06  7:08     ` Luciano Coelho
2010-07-06  0:37 ` [PATCH 09/15] wireless: wl12xx: support pdata SDIO handlers Ohad Ben-Cohen
2010-07-06  0:37   ` Ohad Ben-Cohen
2010-07-06  0:37   ` Ohad Ben-Cohen
2010-07-06  0:37 ` [PATCH 10/15] wireless: wl1271: support return value for the set power func Ohad Ben-Cohen
2010-07-06  0:37   ` Ohad Ben-Cohen
2010-07-06  0:37   ` Ohad Ben-Cohen
2010-07-06  7:11   ` Luciano Coelho
2010-07-06  7:11     ` Luciano Coelho
2010-07-06  0:37 ` [PATCH 11/15] wireless: wl1271: introduce platform device support Ohad Ben-Cohen
2010-07-06  0:37   ` Ohad Ben-Cohen
2010-07-06  0:37   ` Ohad Ben-Cohen
2010-07-06  8:53   ` Roger Quadros
2010-07-06  8:53     ` Roger Quadros
2010-07-06  8:53     ` Roger Quadros
2010-07-06  9:30     ` Ohad Ben-Cohen
2010-07-06  9:30       ` Ohad Ben-Cohen
2010-07-06  9:30       ` Ohad Ben-Cohen
2010-07-06 10:35       ` Roger Quadros
2010-07-06 10:35         ` Roger Quadros
2010-07-06 12:53         ` Ohad Ben-Cohen
2010-07-06 12:53           ` Ohad Ben-Cohen
2010-07-06 14:30           ` Roger Quadros
2010-07-06 14:30             ` Roger Quadros
2010-07-06 17:42             ` Nicolas Pitre
2010-07-06 17:42               ` Nicolas Pitre
2010-07-06 17:42               ` Nicolas Pitre
2010-07-06 19:51               ` Adrian Hunter
2010-07-06 19:51                 ` Adrian Hunter
2010-07-07  8:02                 ` Roger Quadros
2010-07-07  8:02                   ` Roger Quadros
2010-07-07  8:02                   ` Roger Quadros
2010-07-07 14:02                   ` Nicolas Pitre [this message]
2010-07-07 14:02                     ` Nicolas Pitre
2010-07-07 14:54                     ` Madhusudhan
2010-07-07 14:54                       ` Madhusudhan
2010-07-07 14:54                       ` Madhusudhan
2010-07-07 15:46                       ` Nicolas Pitre
2010-07-07 15:46                         ` Nicolas Pitre
2010-07-07 19:59                     ` Adrian Hunter
2010-07-07 19:59                       ` Adrian Hunter
2010-07-08  4:34                       ` Nicolas Pitre
2010-07-08  4:34                         ` Nicolas Pitre
2010-07-08  4:34                         ` Nicolas Pitre
2010-07-07  7:48               ` Roger Quadros
2010-07-07  7:48                 ` Roger Quadros
2010-07-07 13:52                 ` Nicolas Pitre
2010-07-07 13:52                   ` Nicolas Pitre
2010-07-08  8:54                   ` Roger Quadros
2010-07-08  8:54                     ` Roger Quadros
2010-07-08 20:10               ` Ohad Ben-Cohen
2010-07-08 20:10                 ` Ohad Ben-Cohen
2010-07-09  8:12                 ` Roger Quadros
2010-07-09  8:12                   ` Roger Quadros
2010-07-09  8:32                   ` Ohad Ben-Cohen
2010-07-09  8:32                     ` Ohad Ben-Cohen
2010-07-09  9:24                     ` Grazvydas Ignotas
2010-07-09  9:24                       ` Grazvydas Ignotas
2010-08-10 21:21               ` Ohad Ben-Cohen
2010-08-10 21:21                 ` Ohad Ben-Cohen
2010-07-06  0:37 ` [PATCH 12/15] wireless: wl1271: take irq info from platform data Ohad Ben-Cohen
2010-07-06  0:37   ` Ohad Ben-Cohen
2010-07-06  0:37   ` Ohad Ben-Cohen
2010-07-06  0:37 ` [PATCH 13/15] wireless: wl1271: make ref_clock configurable by board Ohad Ben-Cohen
2010-07-06  0:37   ` Ohad Ben-Cohen
2010-07-06  0:37   ` Ohad Ben-Cohen
2010-07-06  0:37 ` [PATCH 14/15] omap: zoom: add WLAN device Ohad Ben-Cohen
2010-07-06  0:37   ` Ohad Ben-Cohen
2010-07-06  0:37   ` Ohad Ben-Cohen
2010-07-06 12:33   ` Roger Quadros
2010-07-06 12:33     ` Roger Quadros
2010-07-06 13:47     ` Ohad Ben-Cohen
2010-07-06 13:47       ` Ohad Ben-Cohen
2010-07-06 13:47       ` Ohad Ben-Cohen
2010-07-08  3:39   ` Ghorai, Sukumar
2010-07-08  3:39     ` Ghorai, Sukumar
2010-07-08  3:39     ` Ghorai, Sukumar
2010-07-06  0:37 ` [PATCH 15/15] omap: zoom: enable " Ohad Ben-Cohen
2010-07-06  0:37   ` Ohad Ben-Cohen
2010-07-06  0:37   ` Ohad Ben-Cohen
2010-07-08  3:39   ` Ghorai, Sukumar
2010-07-08  3:39     ` Ghorai, Sukumar
2010-07-08  3:39     ` Ghorai, Sukumar
2010-07-08 20:13     ` Ohad Ben-Cohen
2010-07-08 20:13       ` Ohad Ben-Cohen
2010-07-08  3:39   ` Ghorai, Sukumar
2010-07-08  3:39 ` [PATCH 00/15] wlan+omap+mmc: out-of-the-box WLAN support for ZOOM2/3 Ghorai, Sukumar
2010-07-08  3:39 ` Ghorai, Sukumar
2010-07-08  3:39   ` Ghorai, Sukumar
2010-07-08  3:39   ` Ghorai, Sukumar

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=alpine.LFD.2.00.1007070954010.6020@xanadu.home \
    --to=nico@fluxnic.net \
    --cc=Luciano.Coelho@nokia.com \
    --cc=adrian.hunter@nokia.com \
    --cc=akpm@linux-foundation.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-mmc@vger.kernel.org \
    --cc=linux-omap@vger.kernel.org \
    --cc=linux-wireless@vger.kernel.org \
    --cc=linux@arm.linux.org.uk \
    --cc=madhu.cr@ti.com \
    --cc=ohad@wizery.com \
    --cc=roger.quadros@nokia.com \
    --cc=san@google.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.