1. 31 7月, 2018 2 次提交
  2. 20 7月, 2018 1 次提交
  3. 18 7月, 2018 8 次提交
  4. 02 7月, 2018 4 次提交
  5. 15 5月, 2018 1 次提交
  6. 09 5月, 2018 1 次提交
    • M
      mtd: rawnand.h: use nested union kernel-doc markups · a6766880
      Mauro Carvalho Chehab 提交于
      Gets rid of those warnings and better document the parameters.
      
        ./include/linux/mtd/rawnand.h:752: warning: Function parameter or member 'timings.sdr' not described in 'nand_data_interface'
        ./include/linux/mtd/rawnand.h:817: warning: Function parameter or member 'buf' not described in 'nand_op_data_instr'
        ./include/linux/mtd/rawnand.h:817: warning: Function parameter or member 'buf.in' not described in 'nand_op_data_instr'
        ./include/linux/mtd/rawnand.h:817: warning: Function parameter or member 'buf.out' not described in 'nand_op_data_instr'
        ./include/linux/mtd/rawnand.h:863: warning: Function parameter or member 'ctx' not described in 'nand_op_instr'
        ./include/linux/mtd/rawnand.h:863: warning: Function parameter or member 'ctx.cmd' not described in 'nand_op_instr'
        ./include/linux/mtd/rawnand.h:863: warning: Function parameter or member 'ctx.addr' not described in 'nand_op_instr'
        ./include/linux/mtd/rawnand.h:863: warning: Function parameter or member 'ctx.data' not described in 'nand_op_instr'
        ./include/linux/mtd/rawnand.h:863: warning: Function parameter or member 'ctx.waitrdy' not described in 'nand_op_instr'
        ./include/linux/mtd/rawnand.h:1010: warning: Function parameter or member 'ctx' not described in 'nand_op_parser_pattern_elem'
        ./include/linux/mtd/rawnand.h:1010: warning: Function parameter or member 'ctx.addr' not described in 'nand_op_parser_pattern_elem'
        ./include/linux/mtd/rawnand.h:1010: warning: Function parameter or member 'ctx.data' not described in 'nand_op_parser_pattern_elem'
        ./include/linux/mtd/rawnand.h:1313: warning: Function parameter or member 'manufacturer.desc' not described in 'nand_chip'
        ./include/linux/mtd/rawnand.h:1313: warning: Function parameter or member 'manufacturer.priv' not described in 'nand_chip'
      
        ./include/linux/mtd/rawnand.h:848: WARNING: Unexpected indentation.
      Signed-off-by: NMauro Carvalho Chehab <mchehab+samsung@kernel.org>
      Signed-off-by: NMauro Carvalho Chehab <mchehab+samsung@kernel.org>
      Signed-off-by: NBoris Brezillon <boris.brezillon@bootlin.com>
      a6766880
  7. 29 4月, 2018 1 次提交
  8. 20 3月, 2018 7 次提交
  9. 20 1月, 2018 1 次提交
  10. 16 12月, 2017 1 次提交
    • M
      mtd: nand: add ->exec_op() implementation · 8878b126
      Miquel Raynal 提交于
      Introduce a new interface to instruct NAND controllers to send specific
      NAND operations. The new interface takes the form of a single method
      called ->exec_op(). This method is designed to replace ->cmd_ctrl(),
      ->cmdfunc() and ->read/write_byte/word/buf() hooks.
      
      ->exec_op() is passed a set of instructions describing the operation
      to execute. Each instruction has a type (ADDR, CMD, DATA, WAITRDY)
      and delay. The delay is here to help simple controllers wait enough
      time between each instruction, advanced controllers with integrated
      timings control can ignore these delays.
      
      Controllers that natively support complex operations (operations
      formed of several instructions) can use the NAND op parser
      infrastructure. This infrastructure allows controller drivers to
      describe the sequence of instructions they support (called
      nand_op_pattern) and a hook for each of these supported sequences. The
      core then tries to find the best match for a given NAND operation, and
      calls the associated hook.
      
      Various other helpers are also added to ease NAND controller drivers
      writing.
      
      This new interface should ease support of vendor specific operations
      in that NAND manufacturer drivers now have a way to check if the
      controller they are connected to supports a specific operation, and
      complain or refuse to probe the NAND chip when that's not the case.
      Suggested-by: NBoris Brezillon <boris.brezillon@free-electrons.com>
      Signed-off-by: NMiquel Raynal <miquel.raynal@free-electrons.com>
      Signed-off-by: NBoris Brezillon <boris.brezillon@free-electrons.com>
      8878b126
  11. 14 12月, 2017 5 次提交
  12. 18 9月, 2017 1 次提交
  13. 30 8月, 2017 1 次提交
  14. 13 8月, 2017 1 次提交
  15. 03 8月, 2017 1 次提交
  16. 02 8月, 2017 1 次提交
  17. 10 6月, 2017 2 次提交
    • M
      mtd: nand: add a shorthand to generate nand_ecc_caps structure · a03c6017
      Masahiro Yamada 提交于
      struct nand_ecc_caps was designed as flexible as possible to support
      multiple stepsizes (like sunxi_nand.c).
      
      So, we need to write multiple arrays even for the simplest case.
      I guess many controllers support a single stepsize, so here is a
      shorthand macro for the case.
      
      It allows to describe like ...
      
      NAND_ECC_CAPS_SINGLE(denali_pci_ecc_caps, denali_calc_ecc_bytes, 512, 8, 15);
      
      ... instead of
      
      static const int denali_pci_ecc_strengths[] = {8, 15};
      static const struct nand_ecc_step_info denali_pci_ecc_stepinfo = {
              .stepsize = 512,
              .strengths = denali_pci_ecc_strengths,
              .nstrengths = ARRAY_SIZE(denali_pci_ecc_strengths),
      };
      static const struct nand_ecc_caps denali_pci_ecc_caps = {
              .stepinfos = &denali_pci_ecc_stepinfo,
              .nstepinfos = 1,
              .calc_ecc_bytes = denali_calc_ecc_bytes,
      };
      Signed-off-by: NMasahiro Yamada <yamada.masahiro@socionext.com>
      Signed-off-by: NBoris Brezillon <boris.brezillon@free-electrons.com>
      a03c6017
    • M
      mtd: nand: add generic helpers to check, match, maximize ECC settings · 2c8f8afa
      Masahiro Yamada 提交于
      Driver are responsible for setting up ECC parameters correctly.
      Those include:
        - Check if ECC parameters specified (usually by DT) are valid
        - Meet the chip's ECC requirement
        - Maximize ECC strength if NAND_ECC_MAXIMIZE flag is set
      
      The logic can be generalized by factoring out common code.
      
      This commit adds 3 helpers to the NAND framework:
      nand_check_ecc_caps - Check if preset step_size and strength are valid
      nand_match_ecc_req - Match the chip's requirement
      nand_maximize_ecc - Maximize the ECC strength
      
      To use the helpers above, a driver needs to provide:
        - Data array of supported ECC step size and strength
        - A hook that calculates ECC bytes from the combination of
          step_size and strength.
      
      By using those helpers, code duplication among drivers will be
      reduced.
      Signed-off-by: NMasahiro Yamada <yamada.masahiro@socionext.com>
      Signed-off-by: NBoris Brezillon <boris.brezillon@free-electrons.com>
      2c8f8afa
  18. 01 6月, 2017 1 次提交