1. 18 3月, 2011 3 次提交
  2. 16 3月, 2011 4 次提交
  3. 14 1月, 2011 1 次提交
    • P
      mmc: sh_mmcif: Convert to __raw_xxx() I/O accessors. · bba95878
      Paul Mundt 提交于
      When using the I/O accessors in raw mode from the boot stubs we don't
      want to bother with any of the complexity associated with readl/writel
      and friends. Furthermore, utilization within the context of the host
      driver itself is all performed on an ioremapped window, so using the
      __raw variants there doesn't pose any problem either.
      
      If and when barriers need to be added in the future, these will need to
      be explicitly written out, but this is so far not a concern for any of
      the affected CPUs in question.
      
      This fixes up the link error introduced by the ARM tree via its barrier
      refactoring:
      
      	arch/arm/boot/compressed/mmcif-sh7372.o: In function `mmcif_loader':
      	mmcif-sh7372.c:(.text+0x9e8): undefined reference to `outer_cache
      
      Following the change in:
      
      	http://www.arm.linux.org.uk/developer/patches/viewpatch.php?id=6275/1Reported-by: NSimon Horman <horms@verge.net.au>
      Signed-off-by: NPaul Mundt <lethal@linux-sh.org>
      bba95878
  4. 09 1月, 2011 6 次提交
  5. 08 12月, 2010 2 次提交
  6. 29 11月, 2010 2 次提交
  7. 25 11月, 2010 1 次提交
  8. 20 11月, 2010 1 次提交
    • O
      mmc: sdio: fix runtime PM anomalies by introducing MMC_CAP_POWER_OFF_CARD · ed919b01
      Ohad Ben-Cohen 提交于
      Some board/card/host configurations are not capable of powering off the
      card after boot.
      
      To support such configurations, and to allow smoother transition to
      runtime PM behavior, MMC_CAP_POWER_OFF_CARD is added, so hosts need to
      explicitly indicate whether it's OK to power off their cards after boot.
      
      SDIO core will enable runtime PM for a card only if that cap is set.
      As a result, the card will be powered down after boot, and will only
      be powered up again when a driver is loaded (and then it's up to the
      driver to decide whether power will be kept or not).
      
      This will prevent sdio_bus_probe() failures with setups that do not
      support powering off the card.
      Reported-and-tested-by: NDaniel Drake <dsd@laptop.org>
      Reported-and-tested-by: NArnd Hannemann <arnd@arndnet.de>
      Signed-off-by: NOhad Ben-Cohen <ohad@wizery.com>
      Signed-off-by: NChris Ball <cjb@laptop.org>
      ed919b01
  9. 10 11月, 2010 1 次提交
    • S
      mmc, sh: Move constants to sh_mmcif.h · da1d39e3
      Simon Horman 提交于
      This moves some constants from sh_mmcif.c to sh_mmcif.h
      so that they can be used in sh_mmcif_boot_init().
      
      It also alters the definition of SOFT_RST_OFF from (0 << 31) to
      ~SOFT_RST_ON (= ~(1 << 31)). The former seems bogus.  The latter is
      consistent with the code in sh_mmcif_boot_init().
      
      Cc: Yusuke Goda <yusuke.goda.sx@renesas.com>
      Cc: Magnus Damm <magnus.damm@gmail.com>
      Signed-off-by: NSimon Horman <horms@verge.net.au>
      Signed-off-by: NPaul Mundt <lethal@linux-sh.org>
      da1d39e3
  10. 04 11月, 2010 1 次提交
  11. 29 10月, 2010 1 次提交
  12. 23 10月, 2010 13 次提交
  13. 12 10月, 2010 1 次提交
  14. 10 9月, 2010 1 次提交
  15. 12 8月, 2010 1 次提交
    • A
      mmc: add erase, secure erase, trim and secure trim operations · dfe86cba
      Adrian Hunter 提交于
      SD/MMC cards tend to support an erase operation.  In addition, eMMC v4.4
      cards can support secure erase, trim and secure trim operations that are
      all variants of the basic erase command.
      
      SD/MMC device attributes "erase_size" and "preferred_erase_size" have been
      added.
      
      "erase_size" is the minimum size, in bytes, of an erase operation.  For
      MMC, "erase_size" is the erase group size reported by the card.  Note that
      "erase_size" does not apply to trim or secure trim operations where the
      minimum size is always one 512 byte sector.  For SD, "erase_size" is 512
      if the card is block-addressed, 0 otherwise.
      
      SD/MMC cards can erase an arbitrarily large area up to and
      including the whole card.  When erasing a large area it may
      be desirable to do it in smaller chunks for three reasons:
      
          1. A single erase command will make all other I/O on the card
             wait.  This is not a problem if the whole card is being erased, but
             erasing one partition will make I/O for another partition on the
             same card wait for the duration of the erase - which could be a
             several minutes.
      
          2. To be able to inform the user of erase progress.
      
          3. The erase timeout becomes too large to be very useful.
             Because the erase timeout contains a margin which is multiplied by
             the size of the erase area, the value can end up being several
             minutes for large areas.
      
      "erase_size" is not the most efficient unit to erase (especially for SD
      where it is just one sector), hence "preferred_erase_size" provides a good
      chunk size for erasing large areas.
      
      For MMC, "preferred_erase_size" is the high-capacity erase size if a card
      specifies one, otherwise it is based on the capacity of the card.
      
      For SD, "preferred_erase_size" is the allocation unit size specified by
      the card.
      
      "preferred_erase_size" is in bytes.
      Signed-off-by: NAdrian Hunter <adrian.hunter@nokia.com>
      Acked-by: NJens Axboe <axboe@kernel.dk>
      Cc: Kyungmin Park <kmpark@infradead.org>
      Cc: Madhusudhan Chikkature <madhu.cr@ti.com>
      Cc: Christoph Hellwig <hch@lst.de>
      Cc: Ben Gardiner <bengardiner@nanometrics.ca>
      Cc: <linux-mmc@vger.kernel.org>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      dfe86cba
  16. 11 8月, 2010 1 次提交
    • G
      sdio: allow non-standard SDIO cards · 6f51be3d
      Grazvydas Ignotas 提交于
      There are some chips (like TI WL12xx series) that can be interfaced over
      SDIO but don't support the SDIO specification, meaning that they are
      missing CIA (Common I/O Area) with all it's registers.  Current Linux SDIO
      implementation relies on those registers to identify and configure the
      card, so non-standard cards can not function and cause lots of warnings
      from the core when it reads invalid data from non-existent registers.
      
      After this patch, init_card() host callback can now set new quirk
      MMC_QUIRK_NONSTD_SDIO, which means that SDIO core should not try to access
      any standard SDIO registers and rely on init_card() to fill all SDIO
      structures instead.  As those cards are usually embedded chips, all the
      required information can be obtained from machine board files by the host
      driver when it's called through init_card() callback.
      Signed-off-by: NGrazvydas Ignotas <notasas@gmail.com>
      Cc: Adrian Hunter <adrian.hunter@nokia.com>
      Cc: Tony Lindgren <tony@atomide.com>
      Cc: Bob Copeland <me@bobcopeland.com>
      Cc: Kalle Valo <kvalo@adurom.com>
      Cc: Madhusudhan Chikkature <madhu.cr@ti.com>
      Cc: Kishore Kadiyala <kishore.kadiyala@ti.com>
      Cc: Russell King <linux@arm.linux.org.uk>
      Cc: <linux-mmc@vger.kernel.org>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      6f51be3d