summaryrefslogtreecommitdiff
path: root/hal
diff options
context:
space:
mode:
authorkx <kx@radix.pro>2023-04-15 20:09:24 +0300
committerkx <kx@radix.pro>2023-04-15 20:09:24 +0300
commitffc59822e31a32040a00c60c08e80f78f5d127ac (patch)
tree884271e5c4123b1440b94ec2386041c444602eb1 /hal
parent0c7772dd8e8ef925394cd33935663b67ddc244ec (diff)
downloadsources-ffc59822e31a32040a00c60c08e80f78f5d127ac.tar.xz
hal: drivers, firmware
Diffstat (limited to 'hal')
-rw-r--r--hal/Makefile25
-rw-r--r--hal/drivers/Makefile24
-rw-r--r--hal/drivers/wireless/Makefile25
-rw-r--r--hal/drivers/wireless/broadcom-wl-x86/Makefile32
-rw-r--r--hal/drivers/wireless/broadcom-wl/Makefile63
-rw-r--r--hal/firmware/Makefile26
-rw-r--r--hal/firmware/armbian-firmware/Makefile63
-rw-r--r--hal/firmware/broadcom-bt-firmware/Makefile63
-rw-r--r--hal/firmware/kernel-firmware/Makefile64
9 files changed, 385 insertions, 0 deletions
diff --git a/hal/Makefile b/hal/Makefile
new file mode 100644
index 0000000..421ab7b
--- /dev/null
+++ b/hal/Makefile
@@ -0,0 +1,25 @@
+
+#
+# Following command helps to cheate SUBDIRS list:
+# $ tree -fid .
+#
+
+SUBDIRS := drivers \
+ firmware
+
+
+all-recursive downloads_clean-recursive:
+ @set fnord $(MAKEFLAGS); amf=$$2; \
+ target=`echo $@ | sed s/-recursive//`; \
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ echo "Making $$target in $$subdir"; \
+ local_target="$$target"; \
+ (cd $$subdir && $(MAKE) $$fnord $$local_target) \
+ || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \
+ done; test -z "$$fail"
+
+all: all-recursive
+
+downloads_clean: downloads_clean-recursive
+
+.PHONY: all-recursive downloads_clean-recursive all downloads_clean
diff --git a/hal/drivers/Makefile b/hal/drivers/Makefile
new file mode 100644
index 0000000..a9b8265
--- /dev/null
+++ b/hal/drivers/Makefile
@@ -0,0 +1,24 @@
+
+#
+# Following command helps to cheate SUBDIRS list:
+# $ tree -fid .
+#
+
+SUBDIRS := wireless
+
+
+all-recursive downloads_clean-recursive:
+ @set fnord $(MAKEFLAGS); amf=$$2; \
+ target=`echo $@ | sed s/-recursive//`; \
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ echo "Making $$target in $$subdir"; \
+ local_target="$$target"; \
+ (cd $$subdir && $(MAKE) $$fnord $$local_target) \
+ || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \
+ done; test -z "$$fail"
+
+all: all-recursive
+
+downloads_clean: downloads_clean-recursive
+
+.PHONY: all-recursive downloads_clean-recursive all downloads_clean
diff --git a/hal/drivers/wireless/Makefile b/hal/drivers/wireless/Makefile
new file mode 100644
index 0000000..1af4bab
--- /dev/null
+++ b/hal/drivers/wireless/Makefile
@@ -0,0 +1,25 @@
+
+#
+# Following command helps to cheate SUBDIRS list:
+# $ tree -fid .
+#
+
+SUBDIRS := broadcom-wl \
+ broadcom-wl-x86
+
+
+all-recursive downloads_clean-recursive:
+ @set fnord $(MAKEFLAGS); amf=$$2; \
+ target=`echo $@ | sed s/-recursive//`; \
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ echo "Making $$target in $$subdir"; \
+ local_target="$$target"; \
+ (cd $$subdir && $(MAKE) $$fnord $$local_target) \
+ || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \
+ done; test -z "$$fail"
+
+all: all-recursive
+
+downloads_clean: downloads_clean-recursive
+
+.PHONY: all-recursive downloads_clean-recursive all downloads_clean
diff --git a/hal/drivers/wireless/broadcom-wl-x86/Makefile b/hal/drivers/wireless/broadcom-wl-x86/Makefile
new file mode 100644
index 0000000..bc59612
--- /dev/null
+++ b/hal/drivers/wireless/broadcom-wl-x86/Makefile
@@ -0,0 +1,32 @@
+#
+# Broadcom hybrid-v35 wireless driver:
+#
+
+url = https://ftp.radix.pro/3pp/Broadcom/hybrid-v35-x86
+
+versions = 6.30.223.271
+
+pkgname = broadcom-wl-x86
+suffix = tar.xz
+
+tarballs = $(addsuffix .$(suffix), $(addprefix $(pkgname)-, $(versions)))
+sha1s = $(addsuffix .sha1sum, $(tarballs))
+
+all: $(tarballs) $(sha1s)
+
+.PHONY: downloads_clean
+
+$(tarballs):
+ @echo -e "\n======= Downloading source tarballs =======\n"
+ @for tarball in $(tarballs) ; do \
+ wget -N $(url)/$$tarball ; \
+ done
+
+$(sha1s): %.$(suffix).sha1sum : %.$(suffix)
+ @for tarball in $< ; do \
+ echo -e "\n======= Calculation the '$$tarball' sha1sum =======\n" ; \
+ sha1sum --binary $$tarball > $$tarball.sha1sum ; \
+ done
+
+downloads_clean:
+ @rm -rf $(tarballs) $(sha1s)
diff --git a/hal/drivers/wireless/broadcom-wl/Makefile b/hal/drivers/wireless/broadcom-wl/Makefile
new file mode 100644
index 0000000..f9fa24e
--- /dev/null
+++ b/hal/drivers/wireless/broadcom-wl/Makefile
@@ -0,0 +1,63 @@
+
+#
+# Broadcom wl: https://github.com/antoineco/broadcom-wl.git
+#
+
+url = https://github.com/antoineco
+
+repo_name = broadcom-wl
+
+#
+# List of tags to be extracted:
+# ============================
+#
+# hash | date
+# ----------------------------------------+--------
+revisions = 3990bbb28cded2c8b92ddef70313b98a0e2cb34e:6.30.223.271
+
+git_repo = .git_clone
+
+pkgname = broadcom-wl
+suffix = tar.xz
+
+versions = $(foreach tag, $(revisions), $(shell echo $(tag) | cut -f 2 -d ':'))
+tarballs = $(addsuffix .$(suffix), $(addprefix $(pkgname)-, $(versions)))
+sha1s = $(addsuffix .sha1sum, $(tarballs))
+
+TARGETS = repository_clean
+
+all: $(TARGETS)
+
+.PHONY: downloads_clean repository_clean
+
+$(git_repo):
+ @echo -e "\n======= Clone $(repo_name).git repository =======\n"
+ @rm -rf $(repo_name)
+ @git clone $(url)/$(repo_name).git $(repo_name)
+ @touch $@
+
+$(tarballs): $(git_repo)
+ @for revision in $(revisions) ; do \
+ hash=`echo $$revision | cut -f 1 -d ':'` ; \
+ date=`echo $$revision | cut -f 2 -d ':'` ; \
+ if [ ! -f $(pkgname)-$$date.$(suffix) ]; then \
+ echo -e "\n======= Creating '$(pkgname)-$$date.$(suffix)' snapshot =======" ; \
+ ( cd $(repo_name) && \
+ git archive --format=tar --prefix=$(pkgname)-$$date/ $$hash | \
+ xz >../$(pkgname)-$$date.$(suffix) ) ; \
+ fi ; \
+ done
+
+$(sha1s): %.$(suffix).sha1sum : %.$(suffix)
+ @for tarball in $< ; do \
+ echo -e "\n======= Calculation the '$$tarball' sha1sum =======" ; \
+ sha1sum --binary $$tarball > $$tarball.sha1sum ; \
+ done
+
+repository_clean: $(sha1s)
+ @echo -e "\n======= Remove cloned $(repo_name).git repository =======\n"
+ @rm -rf $(git_repo) $(repo_name)
+
+downloads_clean:
+ @rm -rf $(tarballs) $(sha1s)
+ @rm -rf $(git_repo) $(repo_name)
diff --git a/hal/firmware/Makefile b/hal/firmware/Makefile
new file mode 100644
index 0000000..55f000c
--- /dev/null
+++ b/hal/firmware/Makefile
@@ -0,0 +1,26 @@
+
+#
+# Following command helps to cheate SUBDIRS list:
+# $ tree -fid .
+#
+
+SUBDIRS := armbian-firmware \
+ broadcom-bt-firmware \
+ kernel-firmware
+
+
+all-recursive downloads_clean-recursive:
+ @set fnord $(MAKEFLAGS); amf=$$2; \
+ target=`echo $@ | sed s/-recursive//`; \
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ echo "Making $$target in $$subdir"; \
+ local_target="$$target"; \
+ (cd $$subdir && $(MAKE) $$fnord $$local_target) \
+ || case "$$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; \
+ done; test -z "$$fail"
+
+all: all-recursive
+
+downloads_clean: downloads_clean-recursive
+
+.PHONY: all-recursive downloads_clean-recursive all downloads_clean
diff --git a/hal/firmware/armbian-firmware/Makefile b/hal/firmware/armbian-firmware/Makefile
new file mode 100644
index 0000000..c3bd4ad
--- /dev/null
+++ b/hal/firmware/armbian-firmware/Makefile
@@ -0,0 +1,63 @@
+
+#
+# Armbian Firmware for the Linux Kernel: https://github.com/armbian/firmware.git
+#
+
+url = https://github.com/armbian
+
+repo_name = firmware
+
+#
+# List of tags to be extracted:
+# ============================
+#
+# hash | version
+# ----------------------------------------+--------------
+revisions = 761658e1701c77a0a84706754e6db1a25ee60b82:20210505
+
+git_repo = .git_clone
+
+pkgname = armbian-firmware
+suffix = tar.xz
+
+versions = $(foreach tag, $(revisions), $(shell echo $(tag) | cut -f 2 -d ':'))
+tarballs = $(addsuffix .$(suffix), $(addprefix $(pkgname)-, $(versions)))
+sha1s = $(addsuffix .sha1sum, $(tarballs))
+
+TARGETS = repository_clean
+
+all: $(TARGETS)
+
+.PHONY: downloads_clean repository_clean
+
+$(git_repo):
+ @echo -e "\n======= Clone $(repo_name).git repository =======\n"
+ @rm -rf $(repo_name)
+ @git clone $(url)/$(repo_name).git $(repo_name)
+ @touch $@
+
+$(tarballs): $(git_repo)
+ @for revision in $(revisions) ; do \
+ hash=`echo $$revision | cut -f 1 -d ':'` ; \
+ date=`echo $$revision | cut -f 2 -d ':'` ; \
+ if [ ! -f $(pkgname)-$$date.$(suffix) ]; then \
+ echo -e "\n======= Creating '$(pkgname)-$$date.$(suffix)' snapshot =======" ; \
+ ( cd $(repo_name) && \
+ git archive --format=tar --prefix=$(pkgname)-$$date/ $$hash | \
+ xz >../$(pkgname)-$$date.$(suffix) ) ; \
+ fi ; \
+ done
+
+$(sha1s): %.$(suffix).sha1sum : %.$(suffix)
+ @for tarball in $< ; do \
+ echo -e "\n======= Calculation the '$$tarball' sha1sum =======" ; \
+ sha1sum --binary $$tarball > $$tarball.sha1sum ; \
+ done
+
+repository_clean: $(sha1s)
+ @echo -e "\n======= Remove cloned $(repo_name).git repository =======\n"
+ @rm -rf $(git_repo) $(repo_name)
+
+downloads_clean:
+ @rm -rf $(tarballs) $(sha1s)
+ @rm -rf $(git_repo) $(repo_name)
diff --git a/hal/firmware/broadcom-bt-firmware/Makefile b/hal/firmware/broadcom-bt-firmware/Makefile
new file mode 100644
index 0000000..4def5be
--- /dev/null
+++ b/hal/firmware/broadcom-bt-firmware/Makefile
@@ -0,0 +1,63 @@
+
+#
+# BROADCOM BT Firmware for the Linux Kernel: https://github.com/winterheart/broadcom-bt-firmware.git
+#
+
+url = https://github.com/winterheart
+
+repo_name = broadcom-bt-firmware
+
+#
+# List of tags to be extracted:
+# ============================
+#
+# hash | version
+# ----------------------------------------+--------------
+revisions = 68a7a8a4f2c4bdd3425c23653a3b9b6609e41d0b:12.0.1.1105.3
+
+git_repo = .git_clone
+
+pkgname = broadcom-bt-firmware
+suffix = tar.xz
+
+versions = $(foreach tag, $(revisions), $(shell echo $(tag) | cut -f 2 -d ':'))
+tarballs = $(addsuffix .$(suffix), $(addprefix $(pkgname)-, $(versions)))
+sha1s = $(addsuffix .sha1sum, $(tarballs))
+
+TARGETS = repository_clean
+
+all: $(TARGETS)
+
+.PHONY: downloads_clean repository_clean
+
+$(git_repo):
+ @echo -e "\n======= Clone $(repo_name).git repository =======\n"
+ @rm -rf $(repo_name)
+ @git clone $(url)/$(repo_name).git $(repo_name)
+ @touch $@
+
+$(tarballs): $(git_repo)
+ @for revision in $(revisions) ; do \
+ hash=`echo $$revision | cut -f 1 -d ':'` ; \
+ date=`echo $$revision | cut -f 2 -d ':'` ; \
+ if [ ! -f $(pkgname)-$$date.$(suffix) ]; then \
+ echo -e "\n======= Creating '$(pkgname)-$$date.$(suffix)' snapshot =======" ; \
+ ( cd $(repo_name) && \
+ git archive --format=tar --prefix=$(pkgname)-$$date/ $$hash | \
+ xz >../$(pkgname)-$$date.$(suffix) ) ; \
+ fi ; \
+ done
+
+$(sha1s): %.$(suffix).sha1sum : %.$(suffix)
+ @for tarball in $< ; do \
+ echo -e "\n======= Calculation the '$$tarball' sha1sum =======" ; \
+ sha1sum --binary $$tarball > $$tarball.sha1sum ; \
+ done
+
+repository_clean: $(sha1s)
+ @echo -e "\n======= Remove cloned $(repo_name).git repository =======\n"
+ @rm -rf $(git_repo) $(repo_name)
+
+downloads_clean:
+ @rm -rf $(tarballs) $(sha1s)
+ @rm -rf $(git_repo) $(repo_name)
diff --git a/hal/firmware/kernel-firmware/Makefile b/hal/firmware/kernel-firmware/Makefile
new file mode 100644
index 0000000..27ab09c
--- /dev/null
+++ b/hal/firmware/kernel-firmware/Makefile
@@ -0,0 +1,64 @@
+
+#
+# Firmware for the Linux Kernel: git://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git
+#
+
+url = git://git.kernel.org/pub/scm/linux/kernel/git/firmware
+
+repo_name = linux-firmware
+
+#
+# List of tags to be extracted:
+# ============================
+#
+# hash | date
+# ----------------------------------------+--------
+revisions = f8462923ed8fc874f770b8c6dfad49d39b381f14:20210518
+revisions += 8b07c1fb1d8de4259611a0cccaeda893d792cd91:20221012
+
+git_repo = .git_clone
+
+pkgname = kernel-firmware
+suffix = tar.xz
+
+versions = $(foreach tag, $(revisions), $(shell echo $(tag) | cut -f 2 -d ':'))
+tarballs = $(addsuffix .$(suffix), $(addprefix $(pkgname)-, $(versions)))
+sha1s = $(addsuffix .sha1sum, $(tarballs))
+
+TARGETS = repository_clean
+
+all: $(TARGETS)
+
+.PHONY: downloads_clean repository_clean
+
+$(git_repo):
+ @echo -e "\n======= Clone $(repo_name).git repository =======\n"
+ @rm -rf $(repo_name)
+ @git clone $(url)/$(repo_name).git $(repo_name)
+ @touch $@
+
+$(tarballs): $(git_repo)
+ @for revision in $(revisions) ; do \
+ hash=`echo $$revision | cut -f 1 -d ':'` ; \
+ date=`echo $$revision | cut -f 2 -d ':'` ; \
+ if [ ! -f $(pkgname)-$$date.$(suffix) ]; then \
+ echo -e "\n======= Creating '$(pkgname)-$$date.$(suffix)' snapshot =======" ; \
+ ( cd $(repo_name) && \
+ git archive --format=tar --prefix=$(pkgname)-$$date/ $$hash | \
+ xz >../$(pkgname)-$$date.$(suffix) ) ; \
+ fi ; \
+ done
+
+$(sha1s): %.$(suffix).sha1sum : %.$(suffix)
+ @for tarball in $< ; do \
+ echo -e "\n======= Calculation the '$$tarball' sha1sum =======" ; \
+ sha1sum --binary $$tarball > $$tarball.sha1sum ; \
+ done
+
+repository_clean: $(sha1s)
+ @echo -e "\n======= Remove cloned $(repo_name).git repository =======\n"
+ @rm -rf $(git_repo) $(repo_name)
+
+downloads_clean:
+ @rm -rf $(tarballs) $(sha1s)
+ @rm -rf $(git_repo) $(repo_name)