1. 20 9月, 2009 1 次提交
  2. 04 9月, 2009 3 次提交
  3. 06 6月, 2009 1 次提交
  4. 06 4月, 2009 1 次提交
  5. 31 3月, 2009 1 次提交
    • R
      module: remove module_text_address() · a6e6abd5
      Rusty Russell 提交于
      Impact: Replace and remove risky (non-EXPORTed) API
      
      module_text_address() returns a pointer to the module, which given locking
      improvements in module.c, is useless except to test for NULL:
      
      1) If the module can't go away, use __module_text_address.
      2) Otherwise, just use is_module_text_address().
      
      Cc: linux-mtd@lists.infradead.org
      Signed-off-by: NRusty Russell <rusty@rustcorp.com.au>
      a6e6abd5
  6. 20 3月, 2009 2 次提交
    • D
      [MTD] [NAND] fix broken debug messages · 374555ae
      David Brownell 提交于
      Fix incorrect debug messages (*write* not read); someone committed some
      cut'n'paste bugs.   There might be more, I only noticed these since I was
      looking for nand_read usage and landed in some very wrong functions.
      
      IMO all MTD debugging message framework is goofed, anyway.  It uses
      "DEBUG" in a way that's incompatible with usage most everywhere else in
      the kernel, and which prevents normal pr_dbg() and dev_dbg() calls from
      working right.
      
      [True. It predates those by a long way, and should probably be updated 
      to use them. dwmw2]
      Signed-off-by: NDavid Brownell <dbrownell@users.sourceforge.net>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NDavid Woodhouse <David.Woodhouse@intel.com>
      374555ae
    • D
      [MTD] [NAND] fix "raw" reads with ECC syndrome layouts · 52ff49df
      David Brownell 提交于
      The syndrome based page read/write routines store ECC, and possibly other
      "OOB" data, right after each chunk of ECC'd data.  With ECC chunk size of
      512 bytes and a large page (2KiB) NAND, the layout is:
      
        data-0 OOB-0 data-1 OOB-1 data-2 OOB-2 data-3 OOB-3 OOB-leftover
      
      Where OOBx is (prepad, ECC, postpad).  However, the current "raw" routines
      use a traditional layout -- data OOB, disregarding the prepad and postpad
      values -- so when they're used with that type of ECC hardware, those calls
      mix up the data and OOB.  Which means, in particular, that bad block
      tables won't be found on startup, with data corruption and related chaos
      ensuing.
      
      The current syndrome-based drivers in mainline all seem to use one chunk
      per page; presumably they haven't noticed such bugs.
      
      Fix this, by adding read/write page_raw_syndrome() routines as siblings of
      the existing non-raw routines; "raw" just means to bypass the ECC
      computations, not change data and OOB layout.
      Signed-off-by: NDavid Brownell <dbrownell@users.sourceforge.net>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NDavid Woodhouse <David.Woodhouse@intel.com>
      52ff49df
  7. 11 12月, 2008 1 次提交
    • R
      [MTD] [NAND] remove excess kernel-doc notation · d3af0f04
      Randy Dunlap 提交于
      Delete extra kernel-doc notation for struct fields and function
      parameters that don't exist:
      
      Warning(include/linux/mtd/nand.h:428): Excess struct/union/enum/typedef member 'wq' description in 'nand_chip'
      Warning(include/linux/mtd/nand.h:428): Excess struct/union/enum/typedef member 'datbuf' description in 'nand_chip'
      Warning(include/linux/mtd/nand.h:428): Excess struct/union/enum/typedef member 'oobbuf' description in 'nand_chip'
      Warning(include/linux/mtd/nand.h:428): Excess struct/union/enum/typedef member 'oobdirty' description in 'nand_chip'
      Warning(include/linux/mtd/nand.h:428): Excess struct/union/enum/typedef member 'data_poi' description in 'nand_chip'
      Warning(drivers/mtd/nand/nand_base.c:2527): Excess function parameter 'maxchips' description in 'nand_scan_tail'
      Signed-off-by: NRandy Dunlap <randy.dunlap@oracle.com>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NDavid Woodhouse <David.Woodhouse@intel.com>
      d3af0f04
  8. 10 12月, 2008 1 次提交
    • A
      [MTD] update internal API to support 64-bit device size · 69423d99
      Adrian Hunter 提交于
      MTD internal API presently uses 32-bit values to represent
      device size.  This patch updates them to 64-bits but leaves
      the external API unchanged.  Extending the external API
      is a separate issue for several reasons.  First, no one
      needs it at the moment.  Secondly, whether the implementation
      is done with IOCTLs, sysfs or both is still debated.  Thirdly
      external API changes require the internal API to be accepted
      first.
      
      Note that although the MTD API will be able to support 64-bit
      device sizes, existing drivers do not and are not required
      to do so, although NAND base has been updated.
      
      In general, changing from 32-bit to 64-bit values cause little
      or no changes to the majority of the code with the following
      exceptions:
          	- printk message formats
          	- division and modulus of 64-bit values
          	- NAND base support
      	- 32-bit local variables used by mtdpart and mtdconcat
      	- naughtily assuming one structure maps to another
      	in MEMERASE ioctl
      Signed-off-by: NAdrian Hunter <ext-adrian.hunter@nokia.com>
      Signed-off-by: NArtem Bityutskiy <Artem.Bityutskiy@nokia.com>
      Signed-off-by: NDavid Woodhouse <David.Woodhouse@intel.com>
      69423d99
  9. 16 9月, 2008 1 次提交
  10. 21 8月, 2008 1 次提交
  11. 12 8月, 2008 1 次提交
  12. 25 7月, 2008 1 次提交
  13. 23 4月, 2008 1 次提交
  14. 03 2月, 2008 2 次提交
  15. 08 1月, 2008 1 次提交
  16. 21 10月, 2007 1 次提交
  17. 07 10月, 2007 1 次提交
  18. 03 8月, 2007 2 次提交
  19. 01 8月, 2007 1 次提交
  20. 23 7月, 2007 1 次提交
  21. 29 6月, 2007 1 次提交
  22. 03 5月, 2007 1 次提交
  23. 27 4月, 2007 1 次提交
  24. 18 4月, 2007 2 次提交
  25. 08 3月, 2007 1 次提交
    • V
      [MTD] [NAND] make oobavail public · 1f92267c
      Vitaly Wool 提交于
      During the MTD rework the oobavail parameter of mtd_info structure has become
      private. This is not quite correct in terms of integrity and logic. If we have
      means to write to OOB area, then we'd like to know upfront how many bytes out
      of OOB are spare per page to be able to adapt to specific cases.
      The patch inlined adds the public oobavail parameter.
      Signed-off-by: NVitaly Wool <vwool@ru.mvista.com>
      Signed-off-by: NDavid Woodhouse <dwmw2@infradead.org>
      1f92267c
  26. 09 2月, 2007 2 次提交
  27. 29 11月, 2006 2 次提交
    • T
      [MTD] NAND: add subpage write support · 29072b96
      Thomas Gleixner 提交于
      Many SLC NANDs support up to 4 writes at one NAND page. Add support
      of this feature.
      Signed-off-by: NArtem Bityutskiy <dedekind@infradead.org>
      29072b96
    • V
      [MTD] [NAND] remove len/ooblen confusion. · 7014568b
      Vitaly Wool 提交于
      As was discussed between Ricard Wanderlöf, David Woodhouse, Artem 
      Bityutskiy and me, the current API for reading/writing OOB is confusing. 
      
      The thing that introduces confusion is the need to specify ops.len 
      together with ops.ooblen for reads/writes that concern only OOB not data 
      area. So, ops.len is overloaded: when ops.datbuf != NULL it serves to 
      specify the length of the data read, and when ops.datbuf == NULL, it 
      serves to specify the full OOB read length.
      
      The patch inlined below is the slightly updated version of the previous 
      patch serving the same purpose, but with the new Artem's comments taken 
      into account.
      
      Artem, BTW, thanks a lot for your valuable input!
      Signed-off-by: NVitaly Wool <vwool@ru.mvista.com>
      Signed-off-by: NDavid Woodhouse <dwmw2@infradead.org>
      7014568b
  28. 28 10月, 2006 1 次提交
  29. 26 10月, 2006 1 次提交
    • R
      [MTD] NAND: Fix nand_default_mark_blockbad() when flash-based BBT disabled · ff0dab64
      Ricard Wanderlöf 提交于
      When a flash-based BBT is not used, nand_default_mark_blockbad() is supposed
      to mark the block bad in the oob. However, it sets the wrong length variable
      so that no bad block marker is in fact written. This patch attempts to
      rectify that.
      
      (As note, it seems to be that logically, it shouldn't be necessary to set
      both length variables, as one appears to be for the main buffer, and
      one for the oob buffer, but this is how it is done in several places,
      including the code for the mtd character device MEMWRITEOOB and MEMREADOOB
      ioctls. I'm not sure if this is a temporary solution during some rework of
      the mtd infrastructure, or whether there is a deeper thought here.)
      Signed-off-by: NRicard Wanderlöf <ricardw@axis.com>
      Signed-off-by: NDavid Woodhouse <dwmw2@infradead.org>
      ff0dab64
  30. 22 10月, 2006 2 次提交
  31. 21 10月, 2006 1 次提交