Re: [[LINUX PATCH v10] 2/4] memory: pl353: Add driver for arm pl353 static memory controller

From: Linus Walleij
Date: Thu Jun 28 2018 - 02:49:40 EST


On Thu, Jun 21, 2018 at 8:43 AM Naga Sureshkumar Relli
<naga.sureshkumar.relli@xxxxxxxxxx> wrote:

> Add driver for arm pl353 static memory controller. This controller is used in
> Xilinx Zynq SoC for interfacing the NAND and NOR/SRAM memory devices.
>
> Signed-off-by: Naga Sureshkumar Relli <naga.sureshkumar.relli@xxxxxxxxxx>

(...)

> +config PL353_SMC
> + tristate "ARM PL35X Static Memory Controller(SMC) driver"
> + default y
> + depends on ARM
> + depends on ARCH_ZYNQ

depends on ARM_AMBA

> +#include <linux/platform_device.h>

This is a PrimeCell with the ARM primecell ID registers
specified, so it should not use platform device.

Use <linux/amba/bus.h>

It further needs to match on these magic values (found in
0xfe0 etc) and use the name "apb_pclk" for the peripheral
(silicon) clock.

See examples such as:
drivers/mmc/host/mmci.c
drivers/tty/serial/amba-pl011.c
drivers/video/fbdev/amba-clcd.c
drivers/hwtracing/coresight/*
etc for examples.

Also see and reference the special PrimeCell DT bindings:
Documentation/devicetree/bindings/arm/primecell.txt

Yours,
Linus Walleij