[PATCH] mci: atmel_mci: Merge at91_mci_bio_set_highcapacity() with at91_mci_bio_init()
Alexander Shiyan
eagle.alexander923 at gmail.com
Wed Mar 26 22:38:00 PDT 2025
The high-capacity parameter is always set to one of the possible values
at initialization, so there is no need to have a separate function to
configure it.
Signed-off-by: Alexander Shiyan <eagle.alexander923 at gmail.com>
---
arch/arm/mach-at91/at91sam9_xload_mmc.c | 5 +----
arch/arm/mach-at91/xload.c | 2 +-
drivers/mci/atmel_mci_pbl.c | 10 +++-------
include/mach/at91/xload.h | 4 ++--
4 files changed, 7 insertions(+), 14 deletions(-)
diff --git a/arch/arm/mach-at91/at91sam9_xload_mmc.c b/arch/arm/mach-at91/at91sam9_xload_mmc.c
index 26f268ae91..e8cd72bd56 100644
--- a/arch/arm/mach-at91/at91sam9_xload_mmc.c
+++ b/arch/arm/mach-at91/at91sam9_xload_mmc.c
@@ -94,15 +94,12 @@ void __noreturn sam9263_atmci_start_image(u32 mmc_id, unsigned int clock,
at91_pmc_enable_periph_clock(IOMEM(AT91SAM926X_BASE_PMC), AT91SAM9263_ID_MCI1);
}
- ret = at91_mci_bio_init(&bio, base, clock, (int)slot_b);
+ ret = at91_mci_bio_init(&bio, base, clock, (int)slot_b, false);
if (ret) {
pr_err("atmci_start_image: bio init faild: %d\n", ret);
goto out_panic;
}
- /* at91sam9x do not support high capacity */
- at91_mci_bio_set_highcapacity(false);
-
ret = pbl_fat_load(&bio, "barebox.bin", buf, SZ_16M);
if (ret < 0) {
pr_err("pbl_fat_load: error %d\n", ret);
diff --git a/arch/arm/mach-at91/xload.c b/arch/arm/mach-at91/xload.c
index 5d8105f07f..effe8802ee 100644
--- a/arch/arm/mach-at91/xload.c
+++ b/arch/arm/mach-at91/xload.c
@@ -228,7 +228,7 @@ void __noreturn sama5d3_atmci_start_image(u32 r4, unsigned int clock,
sama5d3_pmc_enable_periph_clock(instance->id);
- ret = at91_mci_bio_init(&bio, instance->base, clock, slot);
+ ret = at91_mci_bio_init(&bio, instance->base, clock, slot, true);
if (ret)
goto out_panic;
diff --git a/drivers/mci/atmel_mci_pbl.c b/drivers/mci/atmel_mci_pbl.c
index bd4faa4de5..c94a4240db 100644
--- a/drivers/mci/atmel_mci_pbl.c
+++ b/drivers/mci/atmel_mci_pbl.c
@@ -83,7 +83,8 @@ static int at91_mci_bio_read(struct pbl_bio *bio, off_t start,
}
int at91_mci_bio_init(struct pbl_bio *bio, void __iomem *base,
- unsigned int clock, unsigned int slot)
+ unsigned int clock, unsigned int slot,
+ bool highcapacity_card)
{
struct atmel_mci_priv *priv = &atmci_sdcard;
struct atmel_mci *host = &priv->host;
@@ -111,12 +112,7 @@ int at91_mci_bio_init(struct pbl_bio *bio, void __iomem *base,
atmci_common_set_ios(host, &ios);
- priv->highcapacity_card = 1;
+ priv->highcapacity_card = highcapacity_card;
return 0;
}
-
-void at91_mci_bio_set_highcapacity(bool highcapacity_card)
-{
- atmci_sdcard.highcapacity_card = highcapacity_card;
-}
diff --git a/include/mach/at91/xload.h b/include/mach/at91/xload.h
index d5fc7596fd..329ccc98eb 100644
--- a/include/mach/at91/xload.h
+++ b/include/mach/at91/xload.h
@@ -12,8 +12,8 @@ void __noreturn sama5d3_atmci_start_image(u32 r4, unsigned int clock,
int at91_sdhci_bio_init(struct pbl_bio *bio, void __iomem *base);
int at91_mci_bio_init(struct pbl_bio *bio, void __iomem *base,
- unsigned int clock, unsigned int slot);
-void at91_mci_bio_set_highcapacity(bool highcapacity_card);
+ unsigned int clock, unsigned int slot,
+ bool highcapacity_card);
void __noreturn sam9263_atmci_start_image(u32 mmc_id, unsigned int clock,
bool slot_b);
--
2.39.1
More information about the barebox
mailing list