[PATCH v12 3/3] mtd: Add driver for concatenating devices

Mahapatra, Amit Kumar amit.kumar-mahapatra at amd.com
Tue May 13 07:45:39 PDT 2025


[AMD Official Use Only - AMD Internal Distribution Only]

Hello Miquel,

> >> > +           mtd->dev.parent = concat->subdev[0]->dev.parent;
> >> > +           mtd->dev = concat->subdev[0]->dev;
> >> > +
> >> > +           /* Register the platform device */
> >> > +           ret = mtd_device_register(mtd, NULL, 0);
> >> > +           if (ret)
> >> > +                   goto destroy_concat;
> >> > +   }
> >> > +
> >> > +   return 0;
> >> > +
> >> > +destroy_concat:
> >> > +   mtd_concat_destroy(mtd);
> >> > +
> >> > +   return ret;
> >> > +}
> >> > +
> >> > +late_initcall(mtd_virt_concat_create_join);
> >>
> >> The current implementation does not support probe deferrals, I
> >> believe it should be handled.
> >
> > I see that the parse_mtd_partitions() API can return -EPROBE_DEFER
> > during MTD device registration, but this behavior is specific to the
> > parse_qcomsmem_part parser. None of the other parsers appear to
> > support probe deferral. As discussed in RFC [1], the virtual concat
> > feature is purely a fixed-partition capability, and based on my
> > understanding, the fixed-partition parser does not support probe deferral.
> > Please let me know if you can think of any other probe deferral
> > scenarios that might impact the virtual concat driver.
>
> That's true, but I kind of dislike the late_initcall, I fear it might break in creative ways.

I understand, but since we require the partition information to be
available, late_initcall seems to be the most suitable choice among the
initcall levels—if we decide to proceed with using an initcall.
Regarding potential failures, as far as I can tell, the operation would
fail if, at the time of concatenation, one or more of the MTD devices
involved in the concat are not yet available. In such a scenario, we can
issue a kernel warning and exit gracefully. But, However, if you prefer
to move away from using initcalls and have an alternative
implementation approach in mind, please let us know.

Regards,
Amit
>
> Thanks,
> Miquèl


More information about the linux-mtd mailing list