diff options
Diffstat (limited to 'arch/arm/boot/compressed')
| -rw-r--r-- | arch/arm/boot/compressed/Makefile | 8 | ||||
| -rw-r--r-- | arch/arm/boot/compressed/mmcif-sh7372.c | 2 | ||||
| -rw-r--r-- | arch/arm/boot/compressed/sdhi-sh7372.c | 2 | 
3 files changed, 10 insertions, 2 deletions
diff --git a/arch/arm/boot/compressed/Makefile b/arch/arm/boot/compressed/Makefile index 0c74a6fab95..a6b30b35ca6 100644 --- a/arch/arm/boot/compressed/Makefile +++ b/arch/arm/boot/compressed/Makefile @@ -139,8 +139,16 @@ bad_syms=$$($(CROSS_COMPILE)nm $@ | sed -n 's/^.\{8\} [bc] \(.*\)/\1/p') && \    ( echo "following symbols must have non local/private scope:" >&2; \      echo "$$bad_syms" >&2; rm -f $@; false ) +check_for_multiple_zreladdr = \ +if [ $(words $(ZRELADDR)) -gt 1 -a "$(CONFIG_AUTO_ZRELADDR)" = "" ]; then \ +	echo 'multiple zreladdrs: $(ZRELADDR)'; \ +	echo 'This needs CONFIG_AUTO_ZRELADDR to be set'; \ +	false; \ +fi +  $(obj)/vmlinux: $(obj)/vmlinux.lds $(obj)/$(HEAD) $(obj)/piggy.$(suffix_y).o \  	 	$(addprefix $(obj)/, $(OBJS)) $(lib1funcs) FORCE +	@$(check_for_multiple_zreladdr)  	$(call if_changed,ld)  	@$(check_for_bad_syms) diff --git a/arch/arm/boot/compressed/mmcif-sh7372.c b/arch/arm/boot/compressed/mmcif-sh7372.c index b6f61d9a5a1..672ae95db5c 100644 --- a/arch/arm/boot/compressed/mmcif-sh7372.c +++ b/arch/arm/boot/compressed/mmcif-sh7372.c @@ -82,7 +82,7 @@ asmlinkage void mmc_loader(unsigned char *buf, unsigned long len)  	/* Disable clock to MMC hardware block */ -	__raw_writel(__raw_readl(SMSTPCR3) & (1 << 12), SMSTPCR3); +	__raw_writel(__raw_readl(SMSTPCR3) | (1 << 12), SMSTPCR3);  	mmc_update_progress(MMC_PROGRESS_DONE);  } diff --git a/arch/arm/boot/compressed/sdhi-sh7372.c b/arch/arm/boot/compressed/sdhi-sh7372.c index d403a8b24d7..d279294f238 100644 --- a/arch/arm/boot/compressed/sdhi-sh7372.c +++ b/arch/arm/boot/compressed/sdhi-sh7372.c @@ -85,7 +85,7 @@ asmlinkage void mmc_loader(unsigned short *buf, unsigned long len)  		goto err;          /* Disable clock to SDHI1 hardware block */ -        __raw_writel(__raw_readl(SMSTPCR3) & (1 << 13), SMSTPCR3); +        __raw_writel(__raw_readl(SMSTPCR3) | (1 << 13), SMSTPCR3);  	mmc_update_progress(MMC_PROGRESS_DONE);  |