mmc: Add MMC_PROGRESS_*

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 <horms@verge.net.au>
Signed-off-by: Paul Mundt <lethal@linux-sh.org>

authored by Simon Horman and committed by Paul Mundt 9d9659b6 a6558c2d

+17 -11
+5 -4
arch/arm/boot/compressed/mmcif-sh7372.c
··· 10 */ 11 12 #include <linux/mmc/sh_mmcif.h> 13 #include <mach/mmc.h> 14 15 #define MMCIF_BASE (void __iomem *)0xe6bd0000 ··· 43 asmlinkage void mmcif_loader(unsigned char *buf, unsigned long len) 44 { 45 mmc_init_progress(); 46 - mmc_update_progress(MMCIF_PROGRESS_ENTER); 47 48 /* Initialise MMC 49 * registers: PORT84CR-PORT92CR ··· 69 /* Enable clock to MMC hardware block */ 70 __raw_writel(__raw_readl(SMSTPCR3) & ~(1 << 12), SMSTPCR3); 71 72 - mmc_update_progress(MMCIF_PROGRESS_INIT); 73 74 /* setup MMCIF hardware */ 75 sh_mmcif_boot_init(MMCIF_BASE); 76 77 - mmc_update_progress(MMCIF_PROGRESS_LOAD); 78 79 /* load kernel via MMCIF interface */ 80 sh_mmcif_boot_do_read(MMCIF_BASE, 2, /* Kernel is at block 2 */ ··· 84 /* Disable clock to MMC hardware block */ 85 __raw_writel(__raw_readl(SMSTPCR3) & (1 << 12), SMSTPCR3); 86 87 - mmc_update_progress(MMCIF_PROGRESS_DONE); 88 }
··· 10 */ 11 12 #include <linux/mmc/sh_mmcif.h> 13 + #include <linux/mmc/boot.h> 14 #include <mach/mmc.h> 15 16 #define MMCIF_BASE (void __iomem *)0xe6bd0000 ··· 42 asmlinkage void mmcif_loader(unsigned char *buf, unsigned long len) 43 { 44 mmc_init_progress(); 45 + mmc_update_progress(MMC_PROGRESS_ENTER); 46 47 /* Initialise MMC 48 * registers: PORT84CR-PORT92CR ··· 68 /* Enable clock to MMC hardware block */ 69 __raw_writel(__raw_readl(SMSTPCR3) & ~(1 << 12), SMSTPCR3); 70 71 + mmc_update_progress(MMC_PROGRESS_INIT); 72 73 /* setup MMCIF hardware */ 74 sh_mmcif_boot_init(MMCIF_BASE); 75 76 + mmc_update_progress(MMC_PROGRESS_LOAD); 77 78 /* load kernel via MMCIF interface */ 79 sh_mmcif_boot_do_read(MMCIF_BASE, 2, /* Kernel is at block 2 */ ··· 83 /* Disable clock to MMC hardware block */ 84 __raw_writel(__raw_readl(SMSTPCR3) & (1 << 12), SMSTPCR3); 85 86 + mmc_update_progress(MMC_PROGRESS_DONE); 87 }
+5 -4
arch/sh/boot/romimage/mmcif-sh7724.c
··· 9 */ 10 11 #include <linux/mmc/sh_mmcif.h> 12 #include <mach/romimage.h> 13 14 #define MMCIF_BASE (void __iomem *)0xa4ca0000 ··· 30 */ 31 asmlinkage void mmcif_loader(unsigned char *buf, unsigned long no_bytes) 32 { 33 - mmcif_update_progress(MMCIF_PROGRESS_ENTER); 34 35 /* enable clock to the MMCIF hardware block */ 36 __raw_writel(__raw_readl(MSTPCR2) & ~0x20000000, MSTPCR2); ··· 53 /* high drive capability for MMC pins */ 54 __raw_writew(__raw_readw(DRVCRA) | 0x3000, DRVCRA); 55 56 - mmcif_update_progress(MMCIF_PROGRESS_INIT); 57 58 /* setup MMCIF hardware */ 59 sh_mmcif_boot_init(MMCIF_BASE); 60 61 - mmcif_update_progress(MMCIF_PROGRESS_LOAD); 62 63 /* load kernel via MMCIF interface */ 64 sh_mmcif_boot_do_read(MMCIF_BASE, 512, ··· 68 /* disable clock to the MMCIF hardware block */ 69 __raw_writel(__raw_readl(MSTPCR2) | 0x20000000, MSTPCR2); 70 71 - mmcif_update_progress(MMCIF_PROGRESS_DONE); 72 }
··· 9 */ 10 11 #include <linux/mmc/sh_mmcif.h> 12 + #include <linux/mmc/boot.h> 13 #include <mach/romimage.h> 14 15 #define MMCIF_BASE (void __iomem *)0xa4ca0000 ··· 29 */ 30 asmlinkage void mmcif_loader(unsigned char *buf, unsigned long no_bytes) 31 { 32 + mmcif_update_progress(MMC_PROGRESS_ENTER); 33 34 /* enable clock to the MMCIF hardware block */ 35 __raw_writel(__raw_readl(MSTPCR2) & ~0x20000000, MSTPCR2); ··· 52 /* high drive capability for MMC pins */ 53 __raw_writew(__raw_readw(DRVCRA) | 0x3000, DRVCRA); 54 55 + mmcif_update_progress(MMC_PROGRESS_INIT); 56 57 /* setup MMCIF hardware */ 58 sh_mmcif_boot_init(MMCIF_BASE); 59 60 + mmcif_update_progress(MMC_PROGRESS_LOAD); 61 62 /* load kernel via MMCIF interface */ 63 sh_mmcif_boot_do_read(MMCIF_BASE, 512, ··· 67 /* disable clock to the MMCIF hardware block */ 68 __raw_writel(__raw_readl(MSTPCR2) | 0x20000000, MSTPCR2); 69 70 + mmcif_update_progress(MMC_PROGRESS_DONE); 71 }
+7
include/linux/mmc/boot.h
···
··· 1 + #ifndef MMC_BOOT_H 2 + #define MMC_BOOT_H 3 + 4 + enum { MMC_PROGRESS_ENTER, MMC_PROGRESS_INIT, 5 + MMC_PROGRESS_LOAD, MMC_PROGRESS_DONE }; 6 + 7 + #endif
-3
include/linux/mmc/sh_mmcif.h
··· 104 105 #define SH_MMCIF_BBS 512 /* boot block size */ 106 107 - enum { MMCIF_PROGRESS_ENTER, MMCIF_PROGRESS_INIT, 108 - MMCIF_PROGRESS_LOAD, MMCIF_PROGRESS_DONE }; 109 - 110 static inline void sh_mmcif_boot_cmd_send(void __iomem *base, 111 unsigned long cmd, unsigned long arg) 112 {
··· 104 105 #define SH_MMCIF_BBS 512 /* boot block size */ 106 107 static inline void sh_mmcif_boot_cmd_send(void __iomem *base, 108 unsigned long cmd, unsigned long arg) 109 {