turn target runtime check of mtd into a compile-time check

SVN-Revision: 5285
v19.07.3_mercusys_ac12_duma
Felix Fietkau 18 years ago
parent 28a3cb3ca3
commit 426ecdecef

@ -7,11 +7,12 @@
# $Id$
include $(TOPDIR)/rules.mk
include $(INCLUDE_DIR)/kernel.mk
PKG_NAME:=mtd
PKG_RELEASE:=4
PKG_BUILD_DIR := $(BUILD_DIR)/$(PKG_NAME)
PKG_BUILD_DIR := $(KERNEL_BUILD_DIR)/$(PKG_NAME)
include $(INCLUDE_DIR)/package.mk
@ -30,6 +31,12 @@ define Build/Prepare
$(CP) ./src/* $(PKG_BUILD_DIR)/
endef
define Build/Compile
$(MAKE) -C $(PKG_BUILD_DIR) \
$(TARGET_CONFIGURE_OPTS) \
CFLAGS="$(TARGET_CFLAGS) -Dtarget_$(BOARD)=1"
endef
define Package/mtd/install
install -d -m0755 $(1)/sbin
install -m0755 $(PKG_BUILD_DIR)/mtd $(1)/sbin/

@ -64,8 +64,9 @@ char buf[BUFSIZE];
int buflen;
int quiet;
#ifdef target_brcm
int
image_check_bcom(int imagefd, const char *mtd)
image_check_brcm(int imagefd, const char *mtd)
{
struct trx_header *trx = (struct trx_header *) buf;
struct mtd_info_user mtdInfo;
@ -121,6 +122,7 @@ image_check_bcom(int imagefd, const char *mtd)
close(fd);
return 1;
}
#endif /* target_brcm */
int
image_check(int imagefd, const char *mtd)
@ -130,23 +132,9 @@ image_check(int imagefd, const char *mtd)
char *c;
FILE *f;
systype = SYSTYPE_UNKNOWN;
f = fopen("/proc/cpuinfo", "r");
while (!feof(f) && (fgets(buf, BUFSIZE - 1, f) != NULL)) {
if ((strncmp(buf, "system type", 11) == 0) && (c = strchr(buf, ':'))) {
c += 2;
if (strncmp(c, "Broadcom BCM947XX", 17) == 0)
systype = SYSTYPE_BROADCOM;
}
}
fclose(f);
switch(systype) {
case SYSTYPE_BROADCOM:
return image_check_bcom(imagefd, mtd);
default:
return 1;
}
#ifdef target_brcm
return image_check_brcm(imagefd, mtd);
#endif
}
int mtd_check(char *mtd)

Loading…
Cancel
Save