Hello Sergei, On Tue, Dec 10, 2019, Sergei Shtylyov wrote: > Here's a set of 2 patches against Linus' repo. Renesas Reduced Pin Count > Interface (RPC-IF) allows a SPI flash or HyperFlash connected to the SoC to > be accessed via the external address space read mode or the manual mode. Looking at this driver, all it is are APIs. Meaning another driver is needed to sit in between the MTD layer and this HW driver layer. In the driver that I did, if the "RPC" HW is going to be used to control a SPI Flash device, it registered a spi controller and then the MTD layer could access the device just like any other SPI controller driver. No additional drivers are needed. Looking at the hyperbus driver that is in drivers/mtd/hyperbus/, it seems that if the "RPC" HW is going to be used to control HyperFlash, then all you would need to do is register a hyperbus controller using hyperbus_register_device(). Then the MTD layer could read/write the flash using normal MTD CFI interface. Why do you think you need another layer in between the HW driver and the MTD layer? Is your goal to make a multi-layered system where the HW jumps back and forth in between operating modes at runtime? I'm not sure of the use case for all of this. Chris