1. 07 11月, 2013 5 次提交
    • P
      mtd: nand: omap: clean-up ecc layout for BCH ecc schemes · b491da72
      Pekon Gupta 提交于
      In current implementation omap3_init_bch_tail() is a common function to
      define ecc layout for different BCHx ecc schemes.This patch:
      (1) removes omap3_init_bch_tail() and defines ecc layout for individual
          ecc-schemes along with populating their nand_chip->ecc data in
          omap_nand_probe(). This improves the readability and scalability of
          code for add new ecc schemes in future.
      (2) removes 'struct nand_bbt_descr bb_descrip_flashbased' because default
          nand_bbt_descr in nand_bbt.c matches the same (.len=1 for x8 devices).
      (3) add the check to see if NAND device has enough OOB/Spare bytes to
          store ECC signature of whole page, as defined by ecc-scheme.
      Signed-off-by: NPekon Gupta <pekon@ti.com>
      Tested-by: NEzequiel Garcia <ezequiel.garcia@free-electrons.com>
      Signed-off-by: NBrian Norris <computersforpeace@gmail.com>
      b491da72
    • P
      mtd: nand: omap2: clean-up BCHx_HW and BCHx_SW ECC configurations in device_probe · a919e511
      Pekon Gupta 提交于
      current implementation in omap3_init_bch() has some redundant code like:
      (1) omap3_init_bch() re-probes the DT-binding to detect presence of ELM h/w
          engine on SoC. And based on that it selects implemetation of ecc-scheme.
          However, this is already done as part of GPMC DT parsing.
      (2) As omap3_init_bch() serves as common function for configuring all types of
          BCHx ecc-schemes, so there are multiple levels of redudant if..then..else
          checks while populating nand_chip->ecc.
      
      This patch make following changes to OMAP NAND driver:
      (1) removes omap3_init_bch(): each ecc-scheme is individually configured in
          omap_nand_probe() there by removing redundant if..then..else checks.
      (2) adds is_elm_present(): re-probing of ELM device via DT is not required as
          it's done in GPMC driver probe. Thus is_elm_present() just initializes ELM
          driver with NAND probe data, when ecc-scheme with h/w based error-detection
          is used.
      (3) separates out configuration of different flavours of "BCH4" and "BCH8"
          ecc-schemes as given in below table
      (4) conditionally compiles callbacks implementations of ecc.hwctl(),
          ecc.calculate(), ecc.correct() to avoid warning of un-used functions.
      
      +---------------------------------------+---------------+---------------+
      | ECC scheme                            |ECC calculation|Error detection|
      +---------------------------------------+---------------+---------------+
      |OMAP_ECC_HAM1_CODE_HW                  |H/W (GPMC)     |S/W            |
      +---------------------------------------+---------------+---------------+
      |OMAP_ECC_BCH4_CODE_HW_DETECTION_SW     |H/W (GPMC)     |S/W (lib/bch.c)|
      | (needs CONFIG_MTD_NAND_ECC_BCH)       |               |               |
      |                                       |               |               |
      |OMAP_ECC_BCH4_CODE_HW                  |H/W (GPMC)     |H/W (ELM)      |
      | (needs CONFIG_MTD_NAND_OMAP_BCH &&    |               |               |
      |        ti,elm-id)                     |               |               |
      +---------------------------------------+---------------+---------------+
      |OMAP_ECC_BCH8_CODE_HW_DETECTION_SW     |H/W (GPMC)     |S/W (lib/bch.c)|
      | (needs CONFIG_MTD_NAND_ECC_BCH)       |               |               |
      |                                       |               |               |
      |OMAP_ECC_BCH8_CODE_HW                  |H/W (GPMC)     |H/W (ELM)      |
      | (needs CONFIG_MTD_NAND_OMAP_BCH &&    |               |               |
      |        ti,elm-id)                     |               |               |
      +---------------------------------------+---------------+---------------+
      
      - 'CONFIG_MTD_NAND_ECC_BCH' is generic KConfig required to build lib/bch.c
          which is required for ECC error detection done in software.
          (mainly used for legacy platforms which do not have on-chip ELM engine)
      
      - 'CONFIG_MTD_NAND_OMAP_BCH' is OMAP specific Kconfig to detemine presence
          on ELM h/w engine on SoC.
      Signed-off-by: NPekon Gupta <pekon@ti.com>
      Tested-by: NEzequiel Garcia <ezequiel.garcia@free-electrons.com>
      Signed-off-by: NBrian Norris <computersforpeace@gmail.com>
      a919e511
    • P
      mtd: nand: omap: use DT specified bus-width only for scanning NAND device · f18befb5
      Pekon Gupta 提交于
      This patch:
      - calls nand_scan_ident() using bus-width as passed by DT
      - removes double calls to nand_scan_ident(), in case first call fails
        then omap_nand_probe just returns error.
      Signed-off-by: NPekon Gupta <pekon@ti.com>
      Tested-by: NEzequiel Garcia <ezequiel.garcia@free-electrons.com>
      Signed-off-by: NBrian Norris <computersforpeace@gmail.com>
      f18befb5
    • P
      mtd: nand: omap: cleanup: replace local references with generic framework names · 633deb58
      Pekon Gupta 提交于
      This patch updates following in omap_nand_probe() and omap_nand_remove()
      - replaces "info->nand" with "nand_chip" (struct nand_chip *nand_chip)
      - replaces "info->mtd" with "mtd" (struct mtd_info *mtd)
      - white-space and formatting cleanup
      Signed-off-by: NPekon Gupta <pekon@ti.com>
      Tested-by: NEzequiel Garcia <ezequiel.garcia@free-electrons.com>
      Signed-off-by: NBrian Norris <computersforpeace@gmail.com>
      633deb58
    • P
      mtd: nand: omap: combine different flavours of 1-bit hamming ecc schemes · c66d0391
      Pekon Gupta 提交于
      OMAP NAND driver currently supports multiple flavours of 1-bit Hamming
      ecc-scheme, like:
      - OMAP_ECC_HAMMING_CODE_DEFAULT
      	1-bit hamming ecc code using software library
      - OMAP_ECC_HAMMING_CODE_HW
      	1-bit hamming ecc-code using GPMC h/w engine
      - OMAP_ECC_HAMMING_CODE_HW_ROMCODE
      	1-bit hamming ecc-code using GPMC h/w engin with ecc-layout compatible
      	to ROM code.
      
      This patch combines above multiple ecc-schemes into single implementation:
      - OMAP_ECC_HAM1_CODE_HW
      	1-bit hamming ecc-code using GPMC h/w engine with ROM-code compatible
      	ecc-layout.
      Signed-off-by: NPekon Gupta <pekon@ti.com>
      Reviewed-by: NFelipe Balbi <balbi@ti.com>
      Acked-by: NTony Lindgren <tony@atomide.com>
      Tested-by: NEzequiel Garcia <ezequiel.garcia@free-electrons.com>
      Signed-off-by: NBrian Norris <computersforpeace@gmail.com>
      c66d0391
  2. 31 8月, 2013 1 次提交
  3. 30 8月, 2013 1 次提交
  4. 06 8月, 2013 1 次提交
  5. 05 4月, 2013 2 次提交
  6. 04 2月, 2013 2 次提交
    • P
      mtd: nand: omap2: Support for hardware BCH error correction. · 62116e51
      Philip Avinash 提交于
      ELM module can be used for hardware error correction of BCH 4 & 8 bit.
      ELM module functionality is verified by checking the availability of
      handle for ELM module in device tree. Hence supporting
      1. ELM module available, BCH error correction done by ELM module. Also
      support read & write page in one shot by adding custom read_page and
      write_page methods. This helps in optimizing code for NAND flashes with
      page size less than 4 KB.
      2. If ELM module not available fall back to software BCH error
      correction support.
      
      New structure member is added to omap_nand_info
      1. "is_elm_used" to know the status of whether the ELM module is used for
         error correction or not.
      2. "elm_dev" device pointer to elm device on detection of ELM module.
      
      Also being here update the device tree documentation of gpmc-nand for
      adding optional property elm_id.
      
      Note:
      ECC layout uses 1 extra bytes for 512 byte of data to handle erased
      pages. Extra byte programmed to zero for programmed pages. Also BCH8
      requires 14 byte ecc to maintain compatibility with RBL ECC layout.
      This results a common ecc layout across RBL, U-boot & Linux with BCH8.
      Signed-off-by: NPhilip Avinash <avinashphilip@ti.com>
      Signed-off-by: NArtem Bityutskiy <artem.bityutskiy@linux.intel.com>
      62116e51
    • P
      mtd: nand: omap2: Update nerrors using ecc.strength · c3e4b995
      Philip Avinash 提交于
      Remove check of ecc bytes with 13, number of errors can directly update
      from nand ecc strength. This will increase re-usability of the code.
      Also add macro definitions BCH8_ERROR_MAX & BCH4_ERROR_MAX for better
      readability and cleaner code.
      Signed-off-by: NPhilip Avinash <avinashphilip@ti.com>
      Signed-off-by: NArtem Bityutskiy <artem.bityutskiy@linux.intel.com>
      c3e4b995
  7. 15 1月, 2013 1 次提交
  8. 01 12月, 2012 1 次提交
    • T
      ARM: OMAP: Move plat-omap/dma-omap.h to include/linux/omap-dma.h · 45c3eb7d
      Tony Lindgren 提交于
      Based on earlier discussions[1] we attempted to find a suitable
      location for the omap DMA header in commit 2b6c4e73 (ARM: OMAP:
      DMA: Move plat/dma.h to plat-omap/dma-omap.h) until the conversion
      to dmaengine is complete.
      
      Unfortunately that was before I was able to try to test compile
      of the ARM multiplatform builds for omap2+, and the end result
      was not very good.
      
      So I'm creating yet another all over the place patch to cut the
      last dependency for building omap2+ for ARM multiplatform. After
      this, we have finally removed the driver dependencies to the
      arch/arm code, except for few drivers that are being worked on.
      
      The other option was to make the <plat-omap/dma-omap.h> path
      to work, but we'd have to add some new header directory to for
      multiplatform builds.
      
      Or we would have to manually include arch/arm/plat-omap/include
      again from arch/arm/Makefile for omap2+.
      
      Neither of these alternatives sound appealing as they will
      likely lead addition of various other headers exposed to the
      drivers, which we want to avoid for the multiplatform kernels.
      
      Since we already have a minimal include/linux/omap-dma.h,
      let's just use that instead and add a note to it to not
      use the custom omap DMA functions any longer where possible.
      
      Note that converting omap DMA to dmaengine depends on
      dmaengine supporting automatically incrementing the FIFO
      address at the device end, and converting all the remaining
      legacy drivers. So it's going to be few more merge windows.
      
      [1] https://patchwork.kernel.org/patch/1519591/#
      
      cc: Russell King <linux@arm.linux.org.uk>
      cc: Kevin Hilman <khilman@ti.com>
      cc: "Benoît Cousson" <b-cousson@ti.com>
      cc: Herbert Xu <herbert@gondor.apana.org.au>
      cc: "David S. Miller" <davem@davemloft.net>
      cc: Vinod Koul <vinod.koul@intel.com>
      cc: Dan Williams <djbw@fb.com>
      cc: Mauro Carvalho Chehab <mchehab@infradead.org>
      cc: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
      cc: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
      cc: David Woodhouse <dwmw2@infradead.org>
      cc: Kyungmin Park <kyungmin.park@samsung.com>
      cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
      cc: Tomi Valkeinen <tomi.valkeinen@ti.com>
      cc: Florian Tobias Schandinat <FlorianSchandinat@gmx.de>
      cc: Hans Verkuil <hans.verkuil@cisco.com>
      cc: Vaibhav Hiremath <hvaibhav@ti.com>
      cc: Lokesh Vutla <lokeshvutla@ti.com>
      cc: Rusty Russell <rusty@rustcorp.com.au>
      cc: Artem Bityutskiy <artem.bityutskiy@linux.intel.com>
      cc: Afzal Mohammed <afzal@ti.com>
      cc: linux-crypto@vger.kernel.org
      cc: linux-media@vger.kernel.org
      cc: linux-mtd@lists.infradead.org
      cc: linux-usb@vger.kernel.org
      cc: linux-fbdev@vger.kernel.org
      Acked-by: NFelipe Balbi <balbi@ti.com>
      Signed-off-by: NTony Lindgren <tony@atomide.com>
      45c3eb7d
  9. 22 11月, 2012 1 次提交
  10. 16 10月, 2012 2 次提交
  11. 15 10月, 2012 4 次提交
  12. 29 9月, 2012 4 次提交
    • A
      mtd: omap2: fix module loading · 4d3d688d
      Andreas Bießmann 提交于
      Unloading the omap2 nand driver missed to release the memory region which will
      result in not being able to request it again if one want to load the driver
      later on.
      
      This patch fixes following error when loading omap2 module after unloading:
      ---8<---
      ~ $ rmmod omap2
      ~ $ modprobe omap2
      [   37.420928] omap2-nand: probe of omap2-nand.0 failed with error -16
      ~ $
      --->8---
      
      This error was introduced in 67ce04bf which
      was the first commit of this driver.
      Signed-off-by: NAndreas Bießmann <andreas@biessmann.de>
      Cc: stable@vger.kernel.org
      Signed-off-by: NArtem Bityutskiy <artem.bityutskiy@linux.intel.com>
      Signed-off-by: NDavid Woodhouse <David.Woodhouse@intel.com>
      4d3d688d
    • A
      mtd: omap2: fix omap_nand_remove segfault · 7d9b1102
      Andreas Bießmann 提交于
      Do not kfree() the mtd_info; it is handled in the mtd subsystem and
      already freed by nand_release(). Instead kfree() the struct
      omap_nand_info allocated in omap_nand_probe which was not freed before.
      
      This patch fixes following error when unloading the omap2 module:
      
      ---8<---
      ~ $ rmmod omap2
      ------------[ cut here ]------------
      kernel BUG at mm/slab.c:3126!
      Internal error: Oops - BUG: 0 [#1] PREEMPT ARM
      Modules linked in: omap2(-)
      CPU: 0    Not tainted  (3.6.0-rc3-00230-g155e36d4-dirty #3)
      PC is at cache_free_debugcheck+0x2d4/0x36c
      LR is at kfree+0xc8/0x2ac
      pc : [<c01125a0>]    lr : [<c0112efc>]    psr: 200d0193
      sp : c521fe08  ip : c0e8ef90  fp : c521fe5c
      r10: bf0001fc  r9 : c521e000  r8 : c0d99c8c
      r7 : c661ebc0  r6 : c065d5a4  r5 : c65c4060  r4 : c78005c0
      r3 : 00000000  r2 : 00001000  r1 : c65c4000  r0 : 00000001
      Flags: nzCv  IRQs off  FIQs on  Mode SVC_32  ISA ARM  Segment user
      Control: 10c5387d  Table: 86694019  DAC: 00000015
      Process rmmod (pid: 549, stack limit = 0xc521e2f0)
      Stack: (0xc521fe08 to 0xc5220000)
      fe00:                   c008a874 c00bf44c c515c6d0 200d0193 c65c4860 c515c240
      fe20: c521fe3c c521fe30 c008a9c0 c008a854 c521fe5c c65c4860 c78005c0 bf0001fc
      fe40: c780ff40 a00d0113 c521e000 00000000 c521fe84 c521fe60 c0112efc c01122d8
      fe60: c65c4860 c0673778 c06737ac 00000000 00070013 00000000 c521fe9c c521fe88
      fe80: bf0001fc c0112e40 c0673778 bf001ca8 c521feac c521fea0 c02ca11c bf0001ac
      fea0: c521fec4 c521feb0 c02c82c4 c02ca100 c0673778 bf001ca8 c521fee4 c521fec8
      fec0: c02c8dd8 c02c8250 00000000 bf001ca8 bf001ca8 c0804ee0 c521ff04 c521fee8
      fee0: c02c804c c02c8d20 bf001924 00000000 bf001ca8 c521e000 c521ff1c c521ff08
      ff00: c02c950c c02c7fbc bf001d48 00000000 c521ff2c c521ff20 c02ca3a4 c02c94b8
      ff20: c521ff3c c521ff30 bf001938 c02ca394 c521ffa4 c521ff40 c009beb4 bf001930
      ff40: c521ff6c 70616d6f b6fe0032 c0014f84 70616d6f b6fe0032 00000081 60070010
      ff60: c521ff84 c521ff70 c008e1f4 c00bf328 0001a004 70616d6f c521ff94 0021ff88
      ff80: c008e368 0001a004 70616d6f b6fe0032 00000081 c0015028 00000000 c521ffa8
      ffa0: c0014dc0 c009bcd0 0001a004 70616d6f bec2ab38 00000880 bec2ab38 00000880
      ffc0: 0001a004 70616d6f b6fe0032 00000081 00000319 00000000 b6fe1000 00000000
      ffe0: bec2ab30 bec2ab20 00019f00 b6f539c0 60070010 bec2ab38 aaaaaaaa aaaaaaaa
      Backtrace:
      [<c01122cc>] (cache_free_debugcheck+0x0/0x36c) from [<c0112efc>] (kfree+0xc8/0x2ac)
      [<c0112e34>] (kfree+0x0/0x2ac) from [<bf0001fc>] (omap_nand_remove+0x5c/0x64 [omap2])
      [<bf0001a0>] (omap_nand_remove+0x0/0x64 [omap2]) from [<c02ca11c>] (platform_drv_remove+0x28/0x2c)
       r5:bf001ca8 r4:c0673778
      [<c02ca0f4>] (platform_drv_remove+0x0/0x2c) from [<c02c82c4>] (__device_release_driver+0x80/0xdc)
      [<c02c8244>] (__device_release_driver+0x0/0xdc) from [<c02c8dd8>] (driver_detach+0xc4/0xc8)
       r5:bf001ca8 r4:c0673778
      [<c02c8d14>] (driver_detach+0x0/0xc8) from [<c02c804c>] (bus_remove_driver+0x9c/0x104)
       r6:c0804ee0 r5:bf001ca8 r4:bf001ca8 r3:00000000
      [<c02c7fb0>] (bus_remove_driver+0x0/0x104) from [<c02c950c>] (driver_unregister+0x60/0x80)
       r6:c521e000 r5:bf001ca8 r4:00000000 r3:bf001924
      [<c02c94ac>] (driver_unregister+0x0/0x80) from [<c02ca3a4>] (platform_driver_unregister+0x1c/0x20)
       r5:00000000 r4:bf001d48
      [<c02ca388>] (platform_driver_unregister+0x0/0x20) from [<bf001938>] (omap_nand_driver_exit+0x14/0x1c [omap2])
      [<bf001924>] (omap_nand_driver_exit+0x0/0x1c [omap2]) from [<c009beb4>] (sys_delete_module+0x1f0/0x2ec)
      [<c009bcc4>] (sys_delete_module+0x0/0x2ec) from [<c0014dc0>] (ret_fast_syscall+0x0/0x48)
       r8:c0015028 r7:00000081 r6:b6fe0032 r5:70616d6f r4:0001a004
      Code: e1a00005 eb0d9172 e7f001f2 e7f001f2 (e7f001f2)
      ---[ end trace 6a30b24d8c0cc2ee ]---
      Segmentation fault
      --->8---
      
      This error was introduced in 67ce04bf which
      was the first commit of this driver.
      Signed-off-by: NAndreas Bießmann <andreas@biessmann.de>
      Cc: stable@vger.kernel.org
      Signed-off-by: NArtem Bityutskiy <artem.bityutskiy@linux.intel.com>
      Signed-off-by: NDavid Woodhouse <David.Woodhouse@intel.com>
      7d9b1102
    • H
      mtd: kill MTD_NAND_VERIFY_WRITE · 657f28f8
      Huang Shijie 提交于
      Just as Artem suggested:
      
      "Both UBI and JFFS2 are able to read verify what they wrote already.
      There are also MTD tests which do this verification. So I think there
      is no reason to keep this in the NAND layer, let alone wasting RAM in
      the driver to support this feature. Besides, it does not work for sub-pages
      and many drivers have it broken. It hurts more than it provides benefits."
      
      So kill MTD_NAND_VERIFY_WRITE entirely.
      Signed-off-by: NHuang Shijie <shijie8@gmail.com>
      Signed-off-by: NArtem Bityutskiy <artem.bityutskiy@linux.intel.com>
      Signed-off-by: NDavid Woodhouse <David.Woodhouse@intel.com>
      657f28f8
    • P
  13. 19 9月, 2012 1 次提交
    • A
      ARM: omap: move platform_data definitions · 2203747c
      Arnd Bergmann 提交于
      Platform data for device drivers should be defined in
      include/linux/platform_data/*.h, not in the architecture
      and platform specific directories.
      
      This moves such data out of the omap include directories
      Signed-off-by: NArnd Bergmann <arnd@arndb.de>
      Acked-by: NMark Brown <broonie@opensource.wolfsonmicro.com>
      Acked-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      Acked-by: NNicolas Pitre <nico@linaro.org>
      Acked-by: NTony Lindgren <tony@atomide.com>
      Cc: Kevin Hilman <khilman@ti.com>
      Cc: "Benoît Cousson" <b-cousson@ti.com>
      Cc: Dmitry Torokhov <dmitry.torokhov@gmail.com>
      Cc: David Woodhouse <dwmw2@infradead.org>
      Cc: Kyungmin Park <kyungmin.park@samsung.com>
      Cc: Ohad Ben-Cohen <ohad@wizery.com>
      Cc: Grant Likely <grant.likely@secretlab.ca>
      Cc: Omar Ramirez Luna <omar.ramirez@ti.com>
      Cc: Tomi Valkeinen <tomi.valkeinen@ti.com>
      Cc: Florian Tobias Schandinat <FlorianSchandinat@gmx.de>
      Cc: Peter Ujfalusi <peter.ujfalusi@ti.com>
      Cc: Jarkko Nikula <jarkko.nikula@bitmer.com>
      Cc: Liam Girdwood <lrg@ti.com>
      Cc: Artem Bityutskiy <artem.bityutskiy@linux.intel.com>
      Cc: Jean Pihet <j-pihet@ti.com>
      Cc: J Keerthy <j-keerthy@ti.com>
      Cc: linux-omap@vger.kernel.org
      2203747c
  14. 31 8月, 2012 3 次提交
  15. 10 8月, 2012 1 次提交
    • A
      mtd/omap2: fix dmaengine_slave_config error handling · d680e2c1
      Arnd Bergmann 提交于
      The newly added dmaengine support in the omap2 nand driver
      potentially causes an undefined return value from the
      omap_nand_probe function when dmaengine_slave_config
      reports an error. Let's handle this by returning the
      same error back to the caller.
      
      Without this patch, building omap2plus_defconfig results in:
      
      drivers/mtd/nand/omap2.c: In function 'omap_nand_probe':
      drivers/mtd/nand/omap2.c:1154:6: warning: 'err' may be used uninitialized in this function [-Wuninitialized]
      Signed-off-by: NArnd Bergmann <arnd@arndb.de>
      Cc: Russell King <rmk+kernel@arm.linux.org.uk>
      Cc: Grazvydas Ignotas <notasas@gmail.com>
      d680e2c1
  16. 31 7月, 2012 2 次提交
  17. 14 5月, 2012 3 次提交
  18. 27 3月, 2012 2 次提交
    • M
      mtd: flash drivers set ecc strength · 6a918bad
      Mike Dunn 提交于
      Flash device drivers initialize 'ecc_strength' in struct mtd_info, which is the
      maximum number of bit errors that can be corrected in one writesize region.
      
      Drivers using the nand interface intitialize 'strength' in struct nand_ecc_ctrl,
      which is the maximum number of bit errors that can be corrected in one ecc step.
      Nand infrastructure code translates this to 'ecc_strength'.
      
      Also for nand drivers, the nand infrastructure code sets ecc.strength for ecc
      modes NAND_ECC_SOFT, NAND_ECC_SOFT_BCH, and NAND_ECC_NONE.  It is set in the
      driver for all other modes.
      Signed-off-by: NMike Dunn <mikedunn@newsguy.com>
      Signed-off-by: NArtem Bityutskiy <artem.bityutskiy@linux.intel.com>
      Signed-off-by: NDavid Woodhouse <David.Woodhouse@intel.com>
      6a918bad
    • A
      mtd: do not use plain 0 as NULL · 42d7fbe2
      Artem Bityutskiy 提交于
      The first 3 arguments of 'mtd_device_parse_register()' are pointers,
      but many callers pass '0' instead of 'NULL'. Fix this globally. Thanks
      to coccinelle for making it easy to do with the following semantic patch:
      
       @@
       expression mtd, types, parser_data, parts, nr_parts;
       @@
       (
       -mtd_device_parse_register(mtd, 0, parser_data, parts, nr_parts)
       +mtd_device_parse_register(mtd, NULL, parser_data, parts, nr_parts)
       |
       -mtd_device_parse_register(mtd, types, 0, parts, nr_parts)
       +mtd_device_parse_register(mtd, types, NULL, parts, nr_parts)
       |
       -mtd_device_parse_register(mtd, types, parser_data, 0, nr_parts)
       +mtd_device_parse_register(mtd, types, parser_data, NULL, nr_parts)
       )
      Signed-off-by: NArtem Bityutskiy <artem.bityutskiy@linux.intel.com>
      Signed-off-by: NDavid Woodhouse <David.Woodhouse@intel.com>
      42d7fbe2
  19. 10 1月, 2012 1 次提交
  20. 01 11月, 2011 1 次提交
  21. 11 9月, 2011 1 次提交