The ->setup_data_interface() hook needs to know the clock frequency. In fact, this IP needs three clocks, bus "which clock?" is really confusing. (It is not described in the DT-binding at all.) This series adds more clocks. In the new binding, three clocks are required: core clock, bus interface clock, ECC engine clock. This series also takes care of the backward compatibility by providing hardcoded values in case the new clocks are missing. So, existing DT should work. Changes in v2: - Split patches into sensible chunks Masahiro Yamada (3): mtd: rawnand: denali_dt: use dev as a shorthand of &pdev->dev mtd: rawnand: denali_dt: add more clocks based on IP datasheet mtd: rawnand: denali: optimize timing parameters for data interface .../devicetree/bindings/mtd/denali-nand.txt | 5 ++ drivers/mtd/nand/raw/denali.c | 49 ++++++++-------- drivers/mtd/nand/raw/denali.h | 1 + drivers/mtd/nand/raw/denali_dt.c | 66 ++++++++++++++++++---- drivers/mtd/nand/raw/denali_pci.c | 1 + 5 files changed, 86 insertions(+), 36 deletions(-) -- 2.7.4 -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html