xref: /openbmc/linux/fs/adfs/dir_fplus.h (revision ae5df413)
1d2912cb1SThomas Gleixner /* SPDX-License-Identifier: GPL-2.0-only */
21da177e4SLinus Torvalds /*
31da177e4SLinus Torvalds  *  linux/fs/adfs/dir_fplus.h
41da177e4SLinus Torvalds  *
51da177e4SLinus Torvalds  *  Copyright (C) 1999 Russell King
61da177e4SLinus Torvalds  *
71da177e4SLinus Torvalds  *  Structures of directories on the F+ format disk
81da177e4SLinus Torvalds  */
91da177e4SLinus Torvalds 
101da177e4SLinus Torvalds #define ADFS_FPLUS_NAME_LEN	255
111da177e4SLinus Torvalds 
121da177e4SLinus Torvalds #define BIGDIRSTARTNAME ('S' | 'B' << 8 | 'P' << 16 | 'r' << 24)
131da177e4SLinus Torvalds #define BIGDIRENDNAME	('o' | 'v' << 8 | 'e' << 16 | 'n' << 24)
141da177e4SLinus Torvalds 
151da177e4SLinus Torvalds struct adfs_bigdirheader {
161da177e4SLinus Torvalds 	__u8	startmasseq;
171da177e4SLinus Torvalds 	__u8	bigdirversion[3];
181da177e4SLinus Torvalds 	__le32	bigdirstartname;
191da177e4SLinus Torvalds 	__le32	bigdirnamelen;
201da177e4SLinus Torvalds 	__le32	bigdirsize;
211da177e4SLinus Torvalds 	__le32	bigdirentries;
221da177e4SLinus Torvalds 	__le32	bigdirnamesize;
231da177e4SLinus Torvalds 	__le32	bigdirparent;
241da177e4SLinus Torvalds 	char	bigdirname[1];
25ae5df413SRussell King } __attribute__((packed, aligned(4)));
261da177e4SLinus Torvalds 
271da177e4SLinus Torvalds struct adfs_bigdirentry {
281da177e4SLinus Torvalds 	__le32	bigdirload;
291da177e4SLinus Torvalds 	__le32	bigdirexec;
301da177e4SLinus Torvalds 	__le32	bigdirlen;
311da177e4SLinus Torvalds 	__le32	bigdirindaddr;
321da177e4SLinus Torvalds 	__le32	bigdirattr;
331da177e4SLinus Torvalds 	__le32	bigdirobnamelen;
341da177e4SLinus Torvalds 	__le32	bigdirobnameptr;
35ae5df413SRussell King } __attribute__((packed, aligned(4)));
361da177e4SLinus Torvalds 
371da177e4SLinus Torvalds struct adfs_bigdirtail {
381da177e4SLinus Torvalds 	__le32	bigdirendname;
391da177e4SLinus Torvalds 	__u8	bigdirendmasseq;
401da177e4SLinus Torvalds 	__u8	reserved[2];
411da177e4SLinus Torvalds 	__u8	bigdircheckbyte;
42ae5df413SRussell King } __attribute__((packed, aligned(4)));
43