xref: /dflybsd-src/contrib/file/magic/Magdir/rpi (revision 739f0ef867128a933e021db3d831e906fcafd825)
16fca56fbSSascha Wildner
26fca56fbSSascha Wildner#------------------------------------------------------------------------------
3*3b9cdfa3SAntonio Huete Jimenez# $File: rpi,v 1.3 2022/04/02 14:39:34 christos Exp $
46fca56fbSSascha Wildner# rpi:  file(1) magic for Raspberry Pi images
56fca56fbSSascha Wildner-44		lelong	0
66fca56fbSSascha Wildner>4		lelong	0
76fca56fbSSascha Wildner>>8		lelong	1
86fca56fbSSascha Wildner>>12		lelong	4
96fca56fbSSascha Wildner>>>16		string	283x
106fca56fbSSascha Wildner>>>>20		lelong	1
116fca56fbSSascha Wildner>>>>>24		lelong	4
126fca56fbSSascha Wildner>>>>>>28	string	DTOK
136fca56fbSSascha Wildner>>>>>>>32	lelong	44
146fca56fbSSascha Wildner>>>>>>>>36	lelong	4
156fca56fbSSascha Wildner>>>>>>>>>40	string	RPTL		Raspberry PI kernel image
166fca56fbSSascha Wildner
176fca56fbSSascha Wildner-56		lelong	0
186fca56fbSSascha Wildner>4		lelong	0
196fca56fbSSascha Wildner>>8		lelong	1
206fca56fbSSascha Wildner>>12		lelong	4
216fca56fbSSascha Wildner>>>16		string	283x
226fca56fbSSascha Wildner>>>>20		lelong	1
236fca56fbSSascha Wildner>>>>>24		lelong	4
246fca56fbSSascha Wildner>>>>>>28	string	DTOK
256fca56fbSSascha Wildner>>>>>>>32	lelong	1
266fca56fbSSascha Wildner>>>>>>>>36	lelong	4
276fca56fbSSascha Wildner>>>>>>>>>40	string	DDTK8
286fca56fbSSascha Wildner>>>>>>>>>>48	lelong	4
296fca56fbSSascha Wildner>>>>>>>>>>>52	string	RPTL		Raspberry PI kernel image
30*3b9cdfa3SAntonio Huete Jimenez
31*3b9cdfa3SAntonio Huete Jimenez# From: 	Joerg Jenderek
32*3b9cdfa3SAntonio Huete Jimenez# URL:		https://www.raspberrypi.com/documentation/computers/raspberry-pi.html
33*3b9cdfa3SAntonio Huete Jimenez#		#raspberry-pi-4-boot-eeprom
34*3b9cdfa3SAntonio Huete Jimenez# Reference:	https://github.com/raspberrypi/rpi-eeprom/blob/master/rpi-eeprom-config
35*3b9cdfa3SAntonio Huete Jimenez# Note:		start with same magic as for BIOS (ia32) ROM Extension handled by ./intel
36*3b9cdfa3SAntonio Huete Jimenez# masked with MAGIC_MASK and then compared with MAGIC
37*3b9cdfa3SAntonio Huete Jimenez0	belong&0xFFffF00F	0x55aaF00F	Raspberry PI EEPROM
38*3b9cdfa3SAntonio Huete Jimenez#!:mime	application/octet-stream
39*3b9cdfa3SAntonio Huete Jimenez!:mime	application/x-raspberry-eeprom
40*3b9cdfa3SAntonio Huete Jimenez# like: pieeprom-2020-09-03.bin
41*3b9cdfa3SAntonio Huete Jimenez!:ext	bin
42*3b9cdfa3SAntonio Huete Jimenez# a 32 bit offset to the next section like: 000184d4 000184c8 00018534 ... 0000bb84 0000bbd4 0000bbd4
43*3b9cdfa3SAntonio Huete Jimenez>4	ubelong			x		\b, offset %8.8x
44*3b9cdfa3SAntonio Huete Jimenez#>(4.L)	ubelong			x		NEXT=%8.8x
45*3b9cdfa3SAntonio Huete Jimenez# self.length
46*3b9cdfa3SAntonio Huete Jimenez>8	ubelong			!0		\b, length %x
47*3b9cdfa3SAntonio Huete Jimenez# self.filename
48*3b9cdfa3SAntonio Huete Jimenez>12	string			>0		\b, "%s"
49*3b9cdfa3SAntonio Huete Jimenez# length is zero
50*3b9cdfa3SAntonio Huete Jimenez>8	ubelong			=0
51*3b9cdfa3SAntonio Huete Jimenez# if length is zero then 2nd section magic here can be zero; this means sections parsing done
52*3b9cdfa3SAntonio Huete Jimenez>>8	ubelong			!0		\b, 2nd MAGIC=%8.8x
53