summaryrefslogtreecommitdiffstats
path: root/magic/Magdir/rpi
diff options
context:
space:
mode:
Diffstat (limited to 'magic/Magdir/rpi')
-rw-r--r--magic/Magdir/rpi52
1 files changed, 52 insertions, 0 deletions
diff --git a/magic/Magdir/rpi b/magic/Magdir/rpi
new file mode 100644
index 0000000..0d213b5
--- /dev/null
+++ b/magic/Magdir/rpi
@@ -0,0 +1,52 @@
+
+#------------------------------------------------------------------------------
+# $File: rpi,v 1.3 2022/04/02 14:39:34 christos Exp $
+# rpi: file(1) magic for Raspberry Pi images
+-44 lelong 0
+>4 lelong 0
+>>8 lelong 1
+>>12 lelong 4
+>>>16 string 283x
+>>>>20 lelong 1
+>>>>>24 lelong 4
+>>>>>>28 string DTOK
+>>>>>>>32 lelong 44
+>>>>>>>>36 lelong 4
+>>>>>>>>>40 string RPTL Raspberry PI kernel image
+
+-56 lelong 0
+>4 lelong 0
+>>8 lelong 1
+>>12 lelong 4
+>>>16 string 283x
+>>>>20 lelong 1
+>>>>>24 lelong 4
+>>>>>>28 string DTOK
+>>>>>>>32 lelong 1
+>>>>>>>>36 lelong 4
+>>>>>>>>>40 string DDTK8
+>>>>>>>>>>48 lelong 4
+>>>>>>>>>>>52 string RPTL Raspberry PI kernel image
+
+# From: Joerg Jenderek
+# URL: https://www.raspberrypi.com/documentation/computers/raspberry-pi.html
+# #raspberry-pi-4-boot-eeprom
+# Reference: https://github.com/raspberrypi/rpi-eeprom/blob/master/rpi-eeprom-config
+# Note: start with same magic as for BIOS (ia32) ROM Extension handled by ./intel
+# masked with MAGIC_MASK and then compared with MAGIC
+0 belong&0xFFffF00F 0x55aaF00F Raspberry PI EEPROM
+#!:mime application/octet-stream
+!:mime application/x-raspberry-eeprom
+# like: pieeprom-2020-09-03.bin
+!:ext bin
+# a 32 bit offset to the next section like: 000184d4 000184c8 00018534 ... 0000bb84 0000bbd4 0000bbd4
+>4 ubelong x \b, offset %8.8x
+#>(4.L) ubelong x NEXT=%8.8x
+# self.length
+>8 ubelong !0 \b, length %x
+# self.filename
+>12 string >0 \b, "%s"
+# length is zero
+>8 ubelong =0
+# if length is zero then 2nd section magic here can be zero; this means sections parsing done
+>>8 ubelong !0 \b, 2nd MAGIC=%8.8x