On Thu, 2016-06-02 at 07:02 +0200, Heiko Schocher wrote: > Hello Scott, > > Am 02.06.2016 um 02:09 schrieb Scott Wood: > > On Tue, 2016-05-31 at 14:08 +0200, Heiko Schocher wrote: > > > @@ -59,6 +64,9 @@ int nand_register(int devnum, struct mtd_info *mtd) > > > * via the mtdcore infrastructure (e.g. ubi). > > > */ > > > add_mtd_device(mtd); > > > +#ifdef CONFIG_MTD_CONCAT > > > + nand_devices_found++; > > > +#endif > > > #endif > > [snip] > > > + sprintf(c_mtd_name, "nand%d", nand_devices_found); > > > + mtd = mtd_concat_create(nand_info, nand_devices_found, > > > + c_mtd_name); > > > > This assumes that there are no gaps in the NAND numbering (e.g. because > > some > > device was optional or failed to init). It would be better to build an > > array > > by scanning nand_info[] for non-NULL devices. > > Yes, you are right ... Hmm... thinking about it ... this did exactly > my v1 ... I created such an array "mtd_nand_list" ... Ok, this > "mtd_nand_list" was a variable in file scope ... but as it is an array > of pointers, the mem footprint is not so big ...
My concern was code organization, not (just) footprint. > but if you find it > better to scan nand_info and create a new array on stack, I can do > this ... what way do you preffer? On the stack. -Scott _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot