Skip to content
Snippets Groups Projects
Select Git revision
  • master default protected
  • early-display
  • variant-emmc-nvme-boot
  • 2023-01-25
  • v3
  • variant-emmc-nvme-boot
  • 2020-06-01
7 results

cmd_mmc_spi.c

Blame
  • Forked from Reform / reform-boundary-uboot
    Source project has a limited visibility.
    • Pantelis Antoniou's avatar
      93bfd616
      mmc: Split mmc struct, rework mmc initialization (v2) · 93bfd616
      Pantelis Antoniou authored
      
      The way that struct mmc was implemented was a bit of a mess;
      configuration and internal state all jumbled up in a single structure.
      
      On top of that the way initialization is done with mmc_register leads
      to a lot of duplicated code in drivers.
      
      Typically the initialization got something like this in every driver.
      
      	struct mmc *mmc = malloc(sizeof(struct mmc));
      	memset(mmc, 0, sizeof(struct mmc);
      	/* fill in fields of mmc struct */
      	/* store private data pointer */
      	mmc_register(mmc);
      
      By using the new mmc_create call one just passes an mmc config struct
      and an optional private data pointer like this:
      
      	struct mmc = mmc_create(&cfg, priv);
      
      All in tree drivers have been updated to the new form, and expect
      mmc_register to go away before long.
      
      Changes since v1:
      
      * Use calloc instead of manually calling memset.
      * Mark mmc_register as deprecated.
      
      Signed-off-by: default avatarPantelis Antoniou <panto@antoniou-consulting.com>
      93bfd616
      History
      mmc: Split mmc struct, rework mmc initialization (v2)
      Pantelis Antoniou authored
      
      The way that struct mmc was implemented was a bit of a mess;
      configuration and internal state all jumbled up in a single structure.
      
      On top of that the way initialization is done with mmc_register leads
      to a lot of duplicated code in drivers.
      
      Typically the initialization got something like this in every driver.
      
      	struct mmc *mmc = malloc(sizeof(struct mmc));
      	memset(mmc, 0, sizeof(struct mmc);
      	/* fill in fields of mmc struct */
      	/* store private data pointer */
      	mmc_register(mmc);
      
      By using the new mmc_create call one just passes an mmc config struct
      and an optional private data pointer like this:
      
      	struct mmc = mmc_create(&cfg, priv);
      
      All in tree drivers have been updated to the new form, and expect
      mmc_register to go away before long.
      
      Changes since v1:
      
      * Use calloc instead of manually calling memset.
      * Mark mmc_register as deprecated.
      
      Signed-off-by: default avatarPantelis Antoniou <panto@antoniou-consulting.com>