Message ID | 20240806114118.17198-1-ansuelsmth@gmail.com |
---|---|
Headers | show |
Series | mtd: improve block2mtd + airoha parser | expand |
On Tue, Aug 06, 2024 at 01:41:11PM +0200, Christian Marangi wrote: > Document new nvme-card compatible to permit defining fixed-partition in > DT by the use of the block2mtd module to use block devices as MTD. What does nvme card mean? Is this about nvmem or nvme? If this is nvme, are you talking about nvme-pci? Why would that needs a device binding when it is a PCI device?
On Tue, Aug 06, 2024 at 02:42:24PM +0200, Christoph Hellwig wrote: > On Tue, Aug 06, 2024 at 01:41:11PM +0200, Christian Marangi wrote: > > Document new nvme-card compatible to permit defining fixed-partition in > > DT by the use of the block2mtd module to use block devices as MTD. > > What does nvme card mean? Is this about nvmem or nvme? If this is nvme, > are you talking about nvme-pci? Why would that needs a device binding > when it is a PCI device? > It's similar to how it's done with mmc and it's to keep the property consistent with block devices. emmc have something like mmc { mmc-card { specific-property; partitions... }; }; The same will be with nvme with nvme { compatible = "pci_id" nvme-card { quirks maybe in the future? partitions... }; }; The following implementation permits in block2mtd to not complicate the implementation with all the add_disk functions works with parenting struct and how they are initialized. (alternative is to have in block2mtd all kind of extra logic with switch case to check for major block ID that deviates from a common schema)
On Tue, Aug 06, 2024 at 03:00:03PM +0200, Christoph Hellwig wrote: > I don't see how this works. There is absolutely nothing nvme specific > in there, and we really should not bring OF into NVMe. > Thing is that OF for PCIe devices is already a thing so NVMe already have OF support. And that is totally OK if the PCIe is not removable. So it's really a simple subnode to keep things organized in DT and permit common code. Why this would be problematic, the implications of adding support for this are really none, only additional support for the new devices that are taking this path. (you would be surprised by the amount of hacks they use downstream so about times to stabilize this the correct way) > > (alternative is to have in block2mtd all kind of extra logic with switch > > case to check for major block ID that deviates from a common schema) > > What common scheme? > The emmc one and also nand attached to spi. They all follow this. controller { card { }; };