Makefile 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. # SPDX-License-Identifier: GPL-2.0-or-later
  2. #
  3. # Copyright (C) 2020 Álvaro Fernández Rojas <[email protected]>
  4. # Copyright (C) 2014 Jonas Gorski <[email protected]>
  5. # Copyright (C) 2011 OpenWrt.org
  6. # Copyright (C) 2011 Gabor Juhos <[email protected]>
  7. #
  8. include $(TOPDIR)/rules.mk
  9. LZMA_TEXT_START := 0x80a00000
  10. LOADER := loader.bin
  11. LOADER_NAME := $(basename $(notdir $(LOADER)))
  12. LOADER_DATA :=
  13. TARGET_DIR :=
  14. UART_BASE_3329 := 0xb0000100
  15. UART_BASE_3368 := 0xfff8c100
  16. UART_BASE_3380 := 0xb4e00200
  17. UART_BASE_3383 := 0xb4e00500
  18. UART_BASE_3384 := 0xb4e00500
  19. UART_BASE_6318 := 0xb0000100
  20. UART_BASE_6328 := 0xb0000100
  21. UART_BASE_6338 := 0xfffe0300
  22. UART_BASE_6345 := 0xfffe0300
  23. UART_BASE_6348 := 0xfffe0300
  24. UART_BASE_6358 := 0xfffe0100
  25. UART_BASE_6362 := 0xb0000100
  26. UART_BASE_6368 := 0xb0000100
  27. UART_BASE_63268 := 0xb0000180
  28. UART_BASE_6816 := 0xb0000100
  29. UART_BASE_6818 := 0xb0000100
  30. UART_BASE_6828 := 0xb0000180
  31. UART_BASE := $(if $(UART_BASE_$(CHIP_ID)),$(UART_BASE_$(CHIP_ID)),0)
  32. ifeq ($(TARGET_DIR),)
  33. TARGET_DIR := $(KDIR)
  34. endif
  35. LOADER_BIN := $(TARGET_DIR)/$(LOADER_NAME).bin
  36. LOADER_ELF := $(TARGET_DIR)/$(LOADER_NAME).elf
  37. PKG_NAME := lzma-loader
  38. PKG_BUILD_DIR := $(KDIR)/$(PKG_NAME)
  39. .PHONY : loader-compile loader.bin loader.elf
  40. $(PKG_BUILD_DIR)/.prepared:
  41. mkdir $(PKG_BUILD_DIR)
  42. $(CP) ./src/* $(PKG_BUILD_DIR)/
  43. touch $@
  44. loader-compile: $(PKG_BUILD_DIR)/.prepared
  45. $(MAKE) -C $(PKG_BUILD_DIR) CROSS_COMPILE="$(TARGET_CROSS)" \
  46. LZMA_TEXT_START=$(LZMA_TEXT_START) \
  47. LOADER_DATA=$(LOADER_DATA) \
  48. UART_BASE=$(UART_BASE) \
  49. clean all
  50. loader.elf: $(PKG_BUILD_DIR)/loader.elf
  51. $(CP) $< $(LOADER_ELF)
  52. loader.bin: $(PKG_BUILD_DIR)/loader.bin
  53. $(CP) $< $(LOADER_BIN)
  54. download:
  55. prepare: $(PKG_BUILD_DIR)/.prepared
  56. compile: loader-compile
  57. install:
  58. clean:
  59. rm -rf $(PKG_BUILD_DIR)