[PATCH 0/2] nvmem: brcm_nvram: use buffered nvram data for cell values

From: Willem-Jan de Hoog
Date: Mon Feb 06 2023 - 05:06:28 EST


Words from Willem-Jan de Hoog:

On OpenWrt 22.03.3, Asus RT-AC88U does not boot anymore:

UBI: auto-attach mtd4
ubi0: attaching mtd4
ubi0 error: 0xc04f0b3c: PEB 0 contains corrupted VID header, and the
data does not contain all 0xFF
ubi0 error: 0xc04f0b4c: this may be a non-UBI PEB or a severe VID
header corruption which requires manual inspection

The problem seems to be that brcm_nvram_read accesses its (mapped) io
memory. When doing so the correct data is read but after that the
mtd/ubi process fails to work.

The bcm47xx_nvram.c code has buffered the nvram data so the cells value
can be read from there.

Willem-Jan de Hoog (2):
firmware: bcm47xx_nvram: allow to read from buffered nvram data
nvmem: brcm_nvram: use bcm47xx buffered data

drivers/firmware/broadcom/bcm47xx_nvram.c | 14 ++++++++++++++
drivers/nvmem/brcm_nvram.c | 8 ++++++++
include/linux/bcm47xx_nvram.h | 6 ++++++
3 files changed, 28 insertions(+)