diff options
Diffstat (limited to 'target')
-rw-r--r-- | target/linux/ar71xx/image/lzma-loader/Makefile | 6 | ||||
-rw-r--r-- | target/linux/ar71xx/image/lzma-loader/src/loader.lds | 1 |
2 files changed, 5 insertions, 2 deletions
diff --git a/target/linux/ar71xx/image/lzma-loader/Makefile b/target/linux/ar71xx/image/lzma-loader/Makefile index 9b81e87306..738093a958 100644 --- a/target/linux/ar71xx/image/lzma-loader/Makefile +++ b/target/linux/ar71xx/image/lzma-loader/Makefile @@ -47,7 +47,11 @@ loader-compile: $(PKG_BUILD_DIR)/.prepared clean all loader.gz: $(PKG_BUILD_DIR)/loader.bin - gzip -nc9 $< > $(LOADER_GZ) + # Workaround for buggy bootloaders: Some devices + # (TP-Link TL-WR1043ND v1) don't work correctly when + # the uncompressed loader is too small (probably a cache + # invalidation issue) + dd if=$< bs=512K conv=sync | gzip -nc9 > $(LOADER_GZ) loader.elf: $(PKG_BUILD_DIR)/loader.elf $(CP) $< $(LOADER_ELF) diff --git a/target/linux/ar71xx/image/lzma-loader/src/loader.lds b/target/linux/ar71xx/image/lzma-loader/src/loader.lds index 80cc7ca3ec..01ff852361 100644 --- a/target/linux/ar71xx/image/lzma-loader/src/loader.lds +++ b/target/linux/ar71xx/image/lzma-loader/src/loader.lds @@ -13,7 +13,6 @@ SECTIONS { .data : { *(.data) *(.data.*) - . = . + 524288; /* workaround for buggy bootloaders */ } . = ALIGN(32); |