@@ -53,7 +53,7 @@ u32 spl_boot_device(void)
}
debug("Found device %s\n", dev->name);
switch (device_get_uclass_id(dev)) {
- case UCLASS_SPI_FLASH:
+ case UCLASS_MTD:
return BOOT_DEVICE_SPI;
case UCLASS_MMC:
return BOOT_DEVICE_MMC1;
@@ -109,6 +109,7 @@ static struct mrc_data_container *find_next_mrc_cache(struct mrc_region *entry,
int mrccache_update(struct udevice *sf, struct mrc_region *entry,
struct mrc_data_container *cur)
{
+ struct mtd_info *mtd = dev_get_uclass_priv(sf);
struct mrc_data_container *cache;
ulong offset;
ulong base_addr;
@@ -139,7 +140,7 @@ int mrccache_update(struct udevice *sf, struct mrc_region *entry,
debug("Erasing the MRC cache region of %x bytes at %x\n",
entry->length, entry->offset);
- ret = spi_flash_erase_dm(sf, entry->offset, entry->length);
+ ret = spi_flash_erase(mtd, entry->offset, entry->length);
if (ret) {
debug("Failed to erase flash region\n");
return ret;
@@ -150,8 +151,7 @@ int mrccache_update(struct udevice *sf, struct mrc_region *entry,
/* Write the data out */
offset = (ulong)cache - base_addr + entry->offset;
debug("Write MRC cache update to flash at %lx\n", offset);
- ret = spi_flash_write_dm(sf, offset, cur->data_size + sizeof(*cur),
- cur);
+ ret = spi_flash_write(mtd, offset, cur->data_size + sizeof(*cur), cur);
if (ret) {
debug("Failed to write to SPI flash\n");
return ret;
@@ -216,8 +216,7 @@ int mrccache_get_region(struct udevice **devp, struct mrc_region *entry)
entry->length = reg[1];
if (devp) {
- ret = uclass_get_device_by_of_offset(UCLASS_SPI_FLASH, node,
- devp);
+ ret = uclass_get_device_by_of_offset(UCLASS_MTD, node, devp);
debug("ret = %d\n", ret);
if (ret)
return ret;
Since spi-nor flash is part of MTD uclass, so replaced UCLASS_SPI_FLASH with UCLASS_MTD and use respective spi_flash operations as well. Cc: Simon Glass <sjg@chromium.org> Cc: Bin Meng <bmeng.cn@gmail.com> Cc: Mugunthan V N <mugunthanvnm@ti.com> Cc: Michal Simek <michal.simek@xilinx.com> Cc: Siva Durga Prasad Paladugu <sivadur@xilinx.com> Signed-off-by: Jagan Teki <jteki@openedev.com> --- Changes for v7: - fix to use dm_spi_flash_ops. arch/arm/mach-rockchip/rk3288-board-spl.c | 2 +- arch/x86/lib/mrccache.c | 9 ++++----- 2 files changed, 5 insertions(+), 6 deletions(-)