[RFC] MMC: Proposals on reworking clock and power management

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Chris, Linus, Nicolas, Adrian and all,

It has been identified after several discussions [1], [2], that
MMC/SD/SDIO driver need to re-work on clock and power management.
I am trying to list all the design considerations which are part
of this study/discussion are following:
 
1. Remove clock handling APIs currently implemented through claim_host/
   release_host

2. Ideally host-driver driver should not tell the core to shut down
   the upper layers, instead the core should decide when to
   "disabled clock or cut the power". 

   Going in details of different state handlings - Clock disable,
   Card sleep, card power cutoff;
   
   2.a) clock disable: 
     Option-1: can be handled in the host itself using a timer based
               on some idle period, OR
     Option-2: let the core do enabling/ disabling clks based on
               existing enable/ disable provided in the host, OR
     Option-3: with the *existing* API calls, namely the set_ios()
               method as proposed by Linus Walleij  [4]

   2.a) Card sleep, Power cutoff to the card:
     This should be handled in the core where based on block layer
     activity, calling corresponding API's from bus layer:
     mmc_power_save_host/ mmc_power_restore_host 

3. MMC_CAP_DISABLE - should not be a host capability.  This should be
   a core feature that should be _transparent_  to all hosts with no
   changes to any of the host drivers.  

Also it's discussed that different groups need to work together [3].

Few Patches posted by Linus Wallej in July 2009 [4], but they are
not merged yet. They would require some rework.

Therefore would like to know -
a). if the work can be taken forward from where Linus Walleij left.
b). does anyone started working on it and need to do any shearing
    to make bit faster.
c). if anything else also need to take care at re-design.

Regards,
Ghorai

	

[1] [PATCH 11/15] wireless: wl1271: introduce platform device support
    http://www.mail-archive.com/linux-omap@xxxxxxxxxxxxxxx/msg31703.html

[2] [RFC RESEND] sdhci-s3c: support clock enable/disable (clock-gating)
    http://www.mail-archive.com/linux-mmc@xxxxxxxxxxxxxxx/msg03532.html

[3] http://www.mail-archive.com/linux-mmc@xxxxxxxxxxxxxxx/msg03956.html

[4] [PATCH 1/2] MMC Agressive clocking framework v5
    http://www.gossamer-threads.com/lists/linux/kernel/1106880?do=post_view_threaded#1106880


--
To unsubscribe from this list: send the line "unsubscribe linux-mmc" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux USB Devel]     [Linux Media]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux