SPDX: Convert all of our multiple license tags to Linux Kernel styleWhen U-Boot started using SPDX tags we were among the early adopters andthere weren't a lot of other examples to borrow from. S
SPDX: Convert all of our multiple license tags to Linux Kernel styleWhen U-Boot started using SPDX tags we were among the early adopters andthere weren't a lot of other examples to borrow from. So we picked thearea of the file that usually had a full license text and replaced itwith an appropriate SPDX-License-Identifier: entry. Since then, theLinux Kernel has adopted SPDX tags and they place it as the very firstline in a file (except where shebangs are used, then it's second line)and with slightly different comment styles than us.In part due to community overlap, in part due to better tag visibilityand in part for other minor reasons, switch over to that style.This commit changes all instances where we have multiple licenses (inthese cases, dual license) declared in the SPDX-License-Identifier tag.In this case we change from listing "LICENSE-A LICENSE-B" or "LICENSE-Aor LICENSE-B" or "(LICENSE-A OR LICENSE-B)" to "LICENSE-A OR LICENSE-B"as per the Linux Kernel style document. Note that parenthesis areallowed so when they were used before we continue to use them.Reviewed-by: Fabio Estevam <fabio.estevam@nxp.com>Signed-off-by: Tom Rini <trini@konsulko.com>
show more ...
spl: Lightweight UBI and UBI fastmap supportBooting a payload out of NAND FLASH from the SPL is a crux today, asit requires hard partioned FLASH. Not a brilliant idea with thereliability of today
spl: Lightweight UBI and UBI fastmap supportBooting a payload out of NAND FLASH from the SPL is a crux today, asit requires hard partioned FLASH. Not a brilliant idea with thereliability of todays NAND FLASH chips.The upstream UBI + UBI fastmap implementation which is about tobrought to u-boot is too heavy weight for SPLs as it provides way morefunctionality than needed for a SPL and does not even fit into therestricted SPL areas which are loaded from the SoC boot ROM.So this provides a fast and lightweight implementation of UBI scanningand UBI fastmap attach. The scan and logical to physical block mappingcode is developed from scratch, while the fastmap implementation islifted from the linux kernel source and stripped down to fit the SPLneeds.The text foot print on the board which I used for development is:6854 0 0 6854 1abddrivers/mtd/ubispl/built-in.oAttaching a NAND chip with 4096 physical eraseblocks (4 blocks arereserved for the SPL) takes:In full scan mode: 1172msIn fastmap mode: 95msThe code requires quite some storage. The largest and unknown part ofit is the number of fastmap blocks to read. Therefor the datastructure is not put into the BSS. The code requires a pointer to freememory handed in which is initialized by the UBI attach code itself.See doc/README.ubispl for further information on how to use it.This shares the ubi-media.h and crc32 implementation of drivers/mtd/ubiThere is no way to share the fastmap code, as UBISPL only utilizes theslightly modified functions ubi_attach_fastmap() and ubi_scan_fastmap()from the original kernel ubi fastmap implementation.Signed-off-by: Thomas Gleixner <tglx@linutronix.de>Signed-off-by: Ladislav Michl <ladis@linux-mips.org>Acked-by: Heiko Schocher <hs@denx.de>Reviewed-by: Tom Rini <trini@konsulko.com>