Thread (6 messages) 6 messages, 3 authors, 2013-12-04

[PATCH v2] ARM: davinci: aemif: get rid of davinci-nand driver dependency on aemif

From: ivan.khoronzhuk <hidden>
Date: 2013-11-29 09:39:33
Also in: linux-devicetree, lkml

On 11/29/2013 06:38 AM, Sekhar Nori wrote:
On Wednesday 27 November 2013 08:01 PM, Ivan Khoronzhuk wrote:
quoted
The problem that the set timings code contains the call of Davinci
platform function davinci_aemif_setup_timing() which is not
accessible if kernel is built for another platform like Keystone.

The Keysone platform is going to use TI AEMIF driver.
If TI AEMIF is used we don't need to set timings and bus width.
It is done by AEMIF driver.

To get rid of davinci-nand driver dependency on aemif platform code
we moved aemif code to davinci platform.

The platform AEMIF code (aemif.c) has to be removed once Davinci
will be converted to DT and use ti-aemif.c driver.

The long device name "davinci_ntosd2_nandflash_device" was renamed
to "ntosd2_nandflash" as requested by Sekhar Nori, because after
adding changes the line is so broken that its almost unreadable.

Signed-off-by: Ivan Khoronzhuk <redacted>
This patch can be simplified in some places.
quoted
---
v2..v1:
- enabled AEMIF clock
- removed EXPORT_SYMBOL(davinci_aemif_setup)
- renamed ugly name davinci_ntosd2_nandflash_device

CC:
Sekhar Nori [off-list ref]

  arch/arm/mach-davinci/aemif.c                   |   89 ++++++++++++++++++++++-
  arch/arm/mach-davinci/board-da830-evm.c         |    3 +
  arch/arm/mach-davinci/board-da850-evm.c         |    3 +
  arch/arm/mach-davinci/board-dm355-evm.c         |    5 ++
  arch/arm/mach-davinci/board-dm355-leopard.c     |    5 ++
  arch/arm/mach-davinci/board-dm365-evm.c         |    4 +
  arch/arm/mach-davinci/board-dm644x-evm.c        |    5 ++
  arch/arm/mach-davinci/board-dm646x-evm.c        |    3 +
  arch/arm/mach-davinci/board-mityomapl138.c      |    3 +
  arch/arm/mach-davinci/board-neuros-osd2.c       |   13 +++-
  arch/arm/mach-davinci/devices-tnetv107x.c       |    3 +
  drivers/mtd/nand/davinci_nand.c                 |   23 ------
  include/linux/platform_data/mtd-davinci-aemif.h |    5 +-
Most of these boards dont really have a timing structure defined.
Instead of blindly calling AEMIF setup on all boards, it can be
done only on boards that actually need it.
Yes, but in such case we should add AEMIF setup to
arch/arm/mach-davinci/board-mityomapl138.c also,
because it has: .options = NAND_BUSWIDTH_16

-- 
Regards,
Ivan Khoronzhuk
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help