Re: [PATCH v3 2/2] mtd: rawnand: Add NAND controller support on Intel LGM SoC

From: Boris Brezillon
Date: Tue Apr 28 2020 - 02:28:12 EST


On Tue, 28 Apr 2020 14:17:30 +0800
"Ramuthevar, Vadivel MuruganX"
<vadivel.muruganx.ramuthevar@xxxxxxxxxxxxxxx> wrote:

> Hi Miquel,
>
> Thank you very much for the review comments and your time...
>
> On 27/4/2020 11:51 pm, Miquel Raynal wrote:
> > Hi Ramuthevar,
> >
> >>> +static int ebu_nand_probe(struct platform_device *pdev)
> >>> +{
> >>> + struct device *dev = &pdev->dev;
> >>> + struct ebu_nand_controller *ebu_host;
> >>> + struct nand_chip *nand;
> >>> + phys_addr_t nandaddr_pa;
> >>> + struct mtd_info *mtd;
> >>> + struct resource *res;
> >>> + int ret;
> >>> + u32 cs;
> >>> +
> >>> + ebu_host = devm_kzalloc(dev, sizeof(*ebu_host), GFP_KERNEL);
> >>> + if (!ebu_host)
> >>> + return -ENOMEM;
> >>> +
> >>> + ebu_host->dev = dev;
> >>> + nand_controller_init(&ebu_host->controller);
> >>> +
> >>> + res = platform_get_resource_byname(pdev, IORESOURCE_MEM, "ebunand");
> >>> + ebu_host->ebu_addr = devm_ioremap_resource(&pdev->dev, res);
> >>> + if (IS_ERR(ebu_host->ebu_addr))
> >>> + return PTR_ERR(ebu_host->ebu_addr);
> >>> +
> >>> + res = platform_get_resource_byname(pdev, IORESOURCE_MEM, "hsnand");
> >>> + ebu_host->nand_addr = devm_ioremap_resource(&pdev->dev, res);
> >>> + if (IS_ERR(ebu_host->nand_addr))
> >>> + return PTR_ERR(ebu_host->nand_addr);
> >>> +
> >>> + ret = device_property_read_u32(dev, "nand,cs", &cs);
> >>
> >> CS ids should be encoded in the reg property (see [1]).
> >
> > Is it your choice to only support a single CS or is it actually a
> > controller limitation?
>
> Yes , its controller limitation to support only one CS

I'm pretty sure that's not true, otherwise you wouldn't have to select
the CS you want to use :P.