linux/include/linux/qnx6_fs.h

/* SPDX-License-Identifier: GPL-2.0 */
/*
 *  Name                 : qnx6_fs.h
 *  Author               : Kai Bankett
 *  Function             : qnx6 global filesystem definitions
 *  History              : 17-01-2012 created
 */
#ifndef _LINUX_QNX6_FS_H
#define _LINUX_QNX6_FS_H

#include <linux/types.h>
#include <linux/magic.h>

#define QNX6_ROOT_INO

/* for di_status */
#define QNX6_FILE_DIRECTORY
#define QNX6_FILE_DELETED
#define QNX6_FILE_NORMAL

#define QNX6_SUPERBLOCK_SIZE
#define QNX6_SUPERBLOCK_AREA
#define QNX6_BOOTBLOCK_SIZE
#define QNX6_DIR_ENTRY_SIZE
#define QNX6_INODE_SIZE
#define QNX6_INODE_SIZE_BITS

#define QNX6_NO_DIRECT_POINTERS
#define QNX6_PTR_MAX_LEVELS

/* for filenames */
#define QNX6_SHORT_NAME_MAX
#define QNX6_LONG_NAME_MAX

/* list of mount options */
#define QNX6_MOUNT_MMI_FS

/*
 * This is the original qnx6 inode layout on disk.
 * Each inode is 128 byte long.
 */
struct qnx6_inode_entry {};

/*
 * Each directory entry is maximum 32 bytes long.
 * If more characters or special characters required it is stored
 * in the longfilenames structure.
 */
struct qnx6_dir_entry {};

/*
 * Longfilename direntries have a different structure
 */
struct qnx6_long_dir_entry {};

struct qnx6_long_filename {};

struct qnx6_root_node {};

struct qnx6_super_block {};

/* Audi MMI 3G superblock layout is different to plain qnx6 */
struct qnx6_mmi_super_block {};

#endif