diff options
author | Lucas Stach <l.stach@pengutronix.de> | 2018-05-07 16:49:44 +0200 |
---|---|---|
committer | Sascha Hauer <s.hauer@pengutronix.de> | 2018-05-14 09:09:09 +0200 |
commit | 023547c81215961ab5f2be39e25ddcdd7e1c2de8 (patch) | |
tree | 100563935dd389a30f9aa2cf2240d383c617b238 /arch | |
parent | a90a0bbf41e2fc251d31de604e06895ef1db05fa (diff) | |
download | barebox-023547c81215961ab5f2be39e25ddcdd7e1c2de8.tar.gz barebox-023547c81215961ab5f2be39e25ddcdd7e1c2de8.tar.xz |
bbu: imx-bbu-internal: add i.MX51 SPI/I2C flash handler
Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/arm/mach-imx/imx-bbu-internal.c | 14 | ||||
-rw-r--r-- | arch/arm/mach-imx/include/mach/bbu.h | 9 |
2 files changed, 23 insertions, 0 deletions
diff --git a/arch/arm/mach-imx/imx-bbu-internal.c b/arch/arm/mach-imx/imx-bbu-internal.c index d03be72487..c7375ff52a 100644 --- a/arch/arm/mach-imx/imx-bbu-internal.c +++ b/arch/arm/mach-imx/imx-bbu-internal.c @@ -490,6 +490,20 @@ int imx51_bbu_internal_mmc_register_handler(const char *name, char *devicefile, return __register_handler(imx_handler); } +int imx51_bbu_internal_spi_i2c_register_handler(const char *name, + char *devicefile, unsigned long flags) +{ + struct imx_internal_bbu_handler *imx_handler; + + imx_handler = __init_handler(name, devicefile, flags); + imx_handler->flash_header_offset = FLASH_HEADER_OFFSET_MMC; + + imx_handler->flags = IMX_INTERNAL_FLAG_ERASE; + imx_handler->handler.handler = imx_bbu_internal_v1_update; + + return __register_handler(imx_handler); +} + /* * Register an i.MX53 internal boot update handler for MMC/SD */ diff --git a/arch/arm/mach-imx/include/mach/bbu.h b/arch/arm/mach-imx/include/mach/bbu.h index 15bdbe1bec..bde3e02d27 100644 --- a/arch/arm/mach-imx/include/mach/bbu.h +++ b/arch/arm/mach-imx/include/mach/bbu.h @@ -12,6 +12,9 @@ struct imx_dcd_v2_entry; int imx51_bbu_internal_mmc_register_handler(const char *name, char *devicefile, unsigned long flags); +int imx51_bbu_internal_spi_i2c_register_handler(const char *name, + char *devicefile, unsigned long flags); + int imx53_bbu_internal_mmc_register_handler(const char *name, char *devicefile, unsigned long flags); @@ -41,6 +44,12 @@ static inline int imx51_bbu_internal_mmc_register_handler(const char *name, char return -ENOSYS; } +static inline int imx51_bbu_internal_spi_i2c_register_handler(const char *name, + char *devicefile, unsigned long flags) +{ + return -ENOSYS; +} + static inline int imx53_bbu_internal_mmc_register_handler(const char *name, char *devicefile, unsigned long flags) { |