1. 18 10月, 2014 1 次提交
  2. 16 4月, 2014 1 次提交
  3. 15 4月, 2014 3 次提交
    • B
      mtd: spi-nor: unify read opcode variants with ST SPI FSM · 58b89a1f
      Brian Norris 提交于
      serial_flash_cmds.h defines our opcodes a little differently. Let's
      borrow its naming, since it's borrowed from the SFDP standard, and it's
      more extensible.
      
      This prepares us for merging serial_flash_cmds.h and spi-nor.h opcode
      listing.
      Signed-off-by: NBrian Norris <computersforpeace@gmail.com>
      Reviewed-by: NMarek Vasut <marex@denx.de>
      Acked-by: NHuang Shijie <b32955@freescale.com>
      58b89a1f
    • B
      mtd: spi-nor: re-name OPCODE_* to SPINOR_OP_* · b02e7f3e
      Brian Norris 提交于
      Qualify these with a better namespace, and prepare them for use in more
      drivers.
      Signed-off-by: NBrian Norris <computersforpeace@gmail.com>
      Reviewed-by: NMarek Vasut <marex@denx.de>
      Acked-by: NHuang Shijie <b32955@freescale.com>
      b02e7f3e
    • H
      mtd: spi-nor: Add Freescale QuadSPI driver · e46ecda7
      Huang Shijie 提交于
      (0) What is the QuadSPI controller?
      
          The QuadSPI(Quad Serial Peripheral Interface) acts as an interface to
          one single or two external serial flash devices, each with up to 4
          bidirectional data lines.
      
      (1) The QuadSPI controller is driven by the LUT(Look-up Table) registers.
          The LUT registers are a look-up-table for sequences of instructions.
          A valid sequence consists of four LUT registers.
      
      (2) The definition of the LUT register shows below:
      
          ---------------------------------------------------
          | INSTR1 | PAD1 | OPRND1 | INSTR0 | PAD0 | OPRND0 |
          ---------------------------------------------------
      
          There are several types of INSTRx, such as:
      	CMD	: the SPI NOR command.
      	ADDR	: the address for the SPI NOR command.
      	DUMMY	: the dummy cycles needed by the SPI NOR command.
      	....
      
          There are several types of PADx, such as:
      	PAD1	: use a singe I/O line.
      	PAD2	: use two I/O lines.
      	PAD4	: use quad I/O lines.
      	....
      
      (3) Test this driver with the JFFS2 and UBIFS:
      
          For jffs2:
          -------------
      	#flash_eraseall /dev/mtd0
      	#mount -t jffs2 /dev/mtdblock0 tmp
      	#bonnie++ -d tmp -u 0 -s 10 -r 5
      
          For ubifs:
          -------------
      	#flash_eraseall /dev/mtd0
      	#ubiattach /dev/ubi_ctrl -m 0
      	#ubimkvol /dev/ubi0 -N test -m
      	#mount -t ubifs ubi0:test tmp
      	#bonnie++ -d tmp -u 0 -s 10 -r 5
      Signed-off-by: NHuang Shijie <b32955@freescale.com>
      Signed-off-by: NBrian Norris <computersforpeace@gmail.com>
      e46ecda7