Skip to content

Commit

Permalink
mmc: Add MMC_PROGRESS_*
Browse files Browse the repository at this point in the history
This is my second attempt to make this enum generally available.
The first attempt added MMCIF_PROGRESS_* to include/linux/mmc/sh_mmcif.h.
However this is not sufficiently generic as the enum will be
used by SDHI boot code.

Signed-off-by: Simon Horman <[email protected]>
Signed-off-by: Paul Mundt <[email protected]>
  • Loading branch information
horms authored and pmundt committed Mar 24, 2011
1 parent a6558c2 commit 9d9659b
Show file tree
Hide file tree
Showing 4 changed files with 17 additions and 11 deletions.
9 changes: 5 additions & 4 deletions arch/arm/boot/compressed/mmcif-sh7372.c
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@
*/

#include <linux/mmc/sh_mmcif.h>
#include <linux/mmc/boot.h>
#include <mach/mmc.h>

#define MMCIF_BASE (void __iomem *)0xe6bd0000
Expand Down Expand Up @@ -42,7 +43,7 @@
asmlinkage void mmcif_loader(unsigned char *buf, unsigned long len)
{
mmc_init_progress();
mmc_update_progress(MMCIF_PROGRESS_ENTER);
mmc_update_progress(MMC_PROGRESS_ENTER);

/* Initialise MMC
* registers: PORT84CR-PORT92CR
Expand All @@ -68,12 +69,12 @@ asmlinkage void mmcif_loader(unsigned char *buf, unsigned long len)
/* Enable clock to MMC hardware block */
__raw_writel(__raw_readl(SMSTPCR3) & ~(1 << 12), SMSTPCR3);

mmc_update_progress(MMCIF_PROGRESS_INIT);
mmc_update_progress(MMC_PROGRESS_INIT);

/* setup MMCIF hardware */
sh_mmcif_boot_init(MMCIF_BASE);

mmc_update_progress(MMCIF_PROGRESS_LOAD);
mmc_update_progress(MMC_PROGRESS_LOAD);

/* load kernel via MMCIF interface */
sh_mmcif_boot_do_read(MMCIF_BASE, 2, /* Kernel is at block 2 */
Expand All @@ -83,5 +84,5 @@ asmlinkage void mmcif_loader(unsigned char *buf, unsigned long len)
/* Disable clock to MMC hardware block */
__raw_writel(__raw_readl(SMSTPCR3) & (1 << 12), SMSTPCR3);

mmc_update_progress(MMCIF_PROGRESS_DONE);
mmc_update_progress(MMC_PROGRESS_DONE);
}
9 changes: 5 additions & 4 deletions arch/sh/boot/romimage/mmcif-sh7724.c
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@
*/

#include <linux/mmc/sh_mmcif.h>
#include <linux/mmc/boot.h>
#include <mach/romimage.h>

#define MMCIF_BASE (void __iomem *)0xa4ca0000
Expand All @@ -29,7 +30,7 @@
*/
asmlinkage void mmcif_loader(unsigned char *buf, unsigned long no_bytes)
{
mmcif_update_progress(MMCIF_PROGRESS_ENTER);
mmcif_update_progress(MMC_PROGRESS_ENTER);

/* enable clock to the MMCIF hardware block */
__raw_writel(__raw_readl(MSTPCR2) & ~0x20000000, MSTPCR2);
Expand All @@ -52,12 +53,12 @@ asmlinkage void mmcif_loader(unsigned char *buf, unsigned long no_bytes)
/* high drive capability for MMC pins */
__raw_writew(__raw_readw(DRVCRA) | 0x3000, DRVCRA);

mmcif_update_progress(MMCIF_PROGRESS_INIT);
mmcif_update_progress(MMC_PROGRESS_INIT);

/* setup MMCIF hardware */
sh_mmcif_boot_init(MMCIF_BASE);

mmcif_update_progress(MMCIF_PROGRESS_LOAD);
mmcif_update_progress(MMC_PROGRESS_LOAD);

/* load kernel via MMCIF interface */
sh_mmcif_boot_do_read(MMCIF_BASE, 512,
Expand All @@ -67,5 +68,5 @@ asmlinkage void mmcif_loader(unsigned char *buf, unsigned long no_bytes)
/* disable clock to the MMCIF hardware block */
__raw_writel(__raw_readl(MSTPCR2) | 0x20000000, MSTPCR2);

mmcif_update_progress(MMCIF_PROGRESS_DONE);
mmcif_update_progress(MMC_PROGRESS_DONE);
}
7 changes: 7 additions & 0 deletions include/linux/mmc/boot.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
#ifndef MMC_BOOT_H
#define MMC_BOOT_H

enum { MMC_PROGRESS_ENTER, MMC_PROGRESS_INIT,
MMC_PROGRESS_LOAD, MMC_PROGRESS_DONE };

#endif
3 changes: 0 additions & 3 deletions include/linux/mmc/sh_mmcif.h
Original file line number Diff line number Diff line change
Expand Up @@ -104,9 +104,6 @@ static inline void sh_mmcif_writel(void __iomem *addr, int reg, u32 val)

#define SH_MMCIF_BBS 512 /* boot block size */

enum { MMCIF_PROGRESS_ENTER, MMCIF_PROGRESS_INIT,
MMCIF_PROGRESS_LOAD, MMCIF_PROGRESS_DONE };

static inline void sh_mmcif_boot_cmd_send(void __iomem *base,
unsigned long cmd, unsigned long arg)
{
Expand Down

0 comments on commit 9d9659b

Please sign in to comment.