summaryrefslogtreecommitdiff
path: root/libre
diff options
context:
space:
mode:
Diffstat (limited to 'libre')
-rw-r--r--libre/linux-libre-hardened/PKGBUILD4
-rw-r--r--libre/linux-libre/0002-ARM-atags-fdt-retrieve-MAC-addresses-from-Marvell-bo.patch.orig47
-rw-r--r--libre/linux-libre/0002-ARM-atags-fdt-retrieve-MAC-addresses-from-Marvell-bo.patch.rej33
3 files changed, 82 insertions, 2 deletions
diff --git a/libre/linux-libre-hardened/PKGBUILD b/libre/linux-libre-hardened/PKGBUILD
index 188ecf430..b1db2a750 100644
--- a/libre/linux-libre-hardened/PKGBUILD
+++ b/libre/linux-libre-hardened/PKGBUILD
@@ -45,7 +45,7 @@ source=("https://linux-libre.fsfla.org/pub/linux-libre/releases/${_pkgbasever}/l
'0001-usb-serial-gadget-no-TTY-hangup-on-USB-disconnect-WI.patch'
'0002-fix-Atmel-maXTouch-touchscreen-support.patch'
# armv7h patches
- "https://repo.parabola.nu/other/rcn-libre/patches/${_pkgver%-*}/rcn-libre-${_pkgver%-*}-${rcnrel}.patch"{,.sig}
+ "https://repo.parabola.nu/other/rcn-libre-hardened/patches/${_pkgver%-*}/rcn-libre-${_pkgver%-*}-${rcnrel}.patch"{,.sig}
'0001-ARM-atags-add-support-for-Marvell-s-u-boot.patch'
'0002-ARM-atags-fdt-retrieve-MAC-addresses-from-Marvell-bo.patch'
'0003-SMILE-Plug-device-tree-file.patch'
@@ -74,7 +74,7 @@ sha512sums=('9ad6866c68f29f7e4f8b53d0b857f9b3c7f6abd0054460675c76f3100db34a77c27
'2dc6b0ba8f7dbf19d2446c5c5f1823587de89f4e28e9595937dd51a87755099656f2acec50e3e2546ea633ad1bfd1c722e0c2b91eef1d609103d8abdc0a7cbaf'
'02af4dd2a007e41db0c63822c8ab3b80b5d25646af1906dc85d0ad9bb8bbf5236f8e381d7f91cf99ed4b0978c50aee37cb9567cdeef65b7ec3d91b882852b1af'
'b8fe56e14006ab866970ddbd501c054ae37186ddc065bb869cf7d18db8c0d455118d5bda3255fb66a0dde38b544655cfe9040ffe46e41d19830b47959b2fb168'
- '1507b924cfc415398ee8972d61d669e501481e95a41d4851aae467f2e8894760842b0b89e1dad4f0791abe85d0e67fa995eefbfcf716ace8acbe8626a1d57314'
+ 'c75381eb2e9171af04b970a6355a4a19b29f19df952c9023f69432f488fd1f933fb6c3cca97d6a713e7ef4b251192346d85a1f51ed6ab7c7579da9ab7cb1c32b'
'SKIP'
'8da49af5cce12f0bf21f5985cf85d13624404bab76cc0fd7a04b3ee6c046b5dceb4ae0bb821e060405366310473042892e716f530f04d1dab9a21ca1f778dd6c'
'06f40e0f197b15dffc7c724aba9a41f2343c8528576700202f069d5cd00013e7e5e8d62153cf358d02c21e28d7cf2a66e3f5190677cb590ac07f36be58b43cab'
diff --git a/libre/linux-libre/0002-ARM-atags-fdt-retrieve-MAC-addresses-from-Marvell-bo.patch.orig b/libre/linux-libre/0002-ARM-atags-fdt-retrieve-MAC-addresses-from-Marvell-bo.patch.orig
new file mode 100644
index 000000000..ccc42d67e
--- /dev/null
+++ b/libre/linux-libre/0002-ARM-atags-fdt-retrieve-MAC-addresses-from-Marvell-bo.patch.orig
@@ -0,0 +1,47 @@
+From e62b74b84f4b146e0b82d6acf1c043dc599ea884 Mon Sep 17 00:00:00 2001
+From: Willy Tarreau <w@xxxxxx>
+Date: Sun, 2 Dec 2012 19:56:58 +0100
+Subject: [PATCH 2/9] ARM: atags/fdt: retrieve MAC addresses from Marvell boot
+ loader
+
+The atags are parsed and if a Marvell atag is found, up to 4 MAC
+addresses are extracted there and assigned to node aliases eth0..3
+with the name "mac-address".
+
+This was tested on my Mirabox and the two NICs had their correct
+address set.
+
+Signed-off-by: Willy Tarreau <w@xxxxxx>
+---
+ arch/arm/boot/compressed/atags_to_fdt.c | 8 +++++++-
+ 1 file changed, 7 insertions(+), 1 deletion(-)
+
+diff --git a/arch/arm/boot/compressed/atags_to_fdt.c b/arch/arm/boot/compressed/atags_to_fdt.c
+index 9448aa0c6686..ac7b6ae6c00f 100644
+--- a/arch/arm/boot/compressed/atags_to_fdt.c
++++ b/arch/arm/boot/compressed/atags_to_fdt.c
+@@ -18,7 +18,7 @@ static int node_offset(void *fdt, const char *node_path)
+ }
+
+ static int setprop(void *fdt, const char *node_path, const char *property,
+- uint32_t *val_array, int size)
++ void *val_array, int size)
+ {
+ int offset = node_offset(fdt, node_path);
+ if (offset < 0)
+@@ -179,6 +179,12 @@ int atags_to_fdt(void *atag_list, void *fdt, int total_space)
+ initrd_start);
+ setprop_cell(fdt, "/chosen", "linux,initrd-end",
+ initrd_start + initrd_size);
++ } else if (atag->hdr.tag == ATAG_MV_UBOOT) {
++ /* This ATAG provides up to 4 MAC addresses */
++ setprop(fdt, "eth0", "mac-address", atag->u.mv_uboot.macAddr[0], 6);
++ setprop(fdt, "eth1", "mac-address", atag->u.mv_uboot.macAddr[1], 6);
++ setprop(fdt, "eth2", "mac-address", atag->u.mv_uboot.macAddr[2], 6);
++ setprop(fdt, "eth3", "mac-address", atag->u.mv_uboot.macAddr[3], 6);
+ }
+ }
+
+--
+2.13.0
+
diff --git a/libre/linux-libre/0002-ARM-atags-fdt-retrieve-MAC-addresses-from-Marvell-bo.patch.rej b/libre/linux-libre/0002-ARM-atags-fdt-retrieve-MAC-addresses-from-Marvell-bo.patch.rej
new file mode 100644
index 000000000..6f29d90b5
--- /dev/null
+++ b/libre/linux-libre/0002-ARM-atags-fdt-retrieve-MAC-addresses-from-Marvell-bo.patch.rej
@@ -0,0 +1,33 @@
+--- arch/arm/include/uapi/asm/setup.h
++++ arch/arm/include/uapi/asm/setup.h
+@@ -143,18 +143,6 @@ struct tag_memclk {
+ __u32 fmemclk;
+ };
+
+-/* Marvell uboot parameters */
+-#define ATAG_MV_UBOOT 0x41000403
+-struct tag_mv_uboot {
+- __u32 uboot_version;
+- __u32 tclk;
+- __u32 sysclk;
+- __u32 isUsbHost;
+- __u8 macAddr[4][6];
+- __u16 mtu[4];
+- __u32 nand_ecc;
+-};
+-
+ struct tag {
+ struct tag_header hdr;
+ union {
+@@ -177,11 +165,6 @@ struct tag {
+ * DC21285 specific
+ */
+ struct tag_memclk memclk;
+-
+- /*
+- * Marvell specific
+- */
+- struct tag_mv_uboot mv_uboot;
+ } u;
+ };
+