mtd: nand: qcom: allocate BAM transaction
authorAbhishek Sahu <absahu@codeaurora.org>
Thu, 17 Aug 2017 12:07:40 +0000 (17:37 +0530)
committerBoris Brezillon <boris.brezillon@free-electrons.com>
Wed, 23 Aug 2017 14:49:26 +0000 (16:49 +0200)
commitcb80f1140db6ad2cb6841ad656cc6b779b4b58be
tree7d22820d0252c545ace18620bb182e8ffc8eceb1
parent6192ff7a44c1806f4db110f09168fb4e84d2770b
mtd: nand: qcom: allocate BAM transaction

- The BAM transaction is the core data structure which will be used
  for all the data transfers in QPIC NAND. Since the core framework
  in nand_base.c is serializing all the NAND requests so allocating
  BAM transaction before every transfer will be overhead. The memory
  for it be allocated during probe time and before every transfer,
  it will be cleared.

- The BAM transaction contains the array of
  command and data scatter gather list and indexes. For
  every transfer, all the resource will be taken from BAM
  transaction.

- The size of the buffer used for BAM transactions
  is calculated based on the NAND device with the maximum page size,
  among all the devices connected to the
  controller.

Reviewed-by: Archit Taneja <architt@codeaurora.org>
Signed-off-by: Abhishek Sahu <absahu@codeaurora.org>
Signed-off-by: Boris Brezillon <boris.brezillon@free-electrons.com>
drivers/mtd/nand/qcom_nandc.c