xref: /openbmc/linux/arch/mips/include/uapi/asm/statfs.h (revision e2be04c7)
1e2be04c7SGreg Kroah-Hartman /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
261730c53SDavid Howells /*
361730c53SDavid Howells  * This file is subject to the terms and conditions of the GNU General Public
461730c53SDavid Howells  * License.  See the file "COPYING" in the main directory of this archive
561730c53SDavid Howells  * for more details.
661730c53SDavid Howells  *
761730c53SDavid Howells  * Copyright (C) 1995, 1999 by Ralf Baechle
861730c53SDavid Howells  */
961730c53SDavid Howells #ifndef _ASM_STATFS_H
1061730c53SDavid Howells #define _ASM_STATFS_H
1161730c53SDavid Howells 
1261730c53SDavid Howells #include <linux/posix_types.h>
1361730c53SDavid Howells #include <asm/sgidefs.h>
1461730c53SDavid Howells 
1561730c53SDavid Howells #ifndef __KERNEL_STRICT_NAMES
1661730c53SDavid Howells 
1761730c53SDavid Howells #include <linux/types.h>
1861730c53SDavid Howells 
1961730c53SDavid Howells typedef __kernel_fsid_t	       fsid_t;
2061730c53SDavid Howells 
2161730c53SDavid Howells #endif
2261730c53SDavid Howells 
2361730c53SDavid Howells struct statfs {
2461730c53SDavid Howells 	long		f_type;
2561730c53SDavid Howells #define f_fstyp f_type
2661730c53SDavid Howells 	long		f_bsize;
2761730c53SDavid Howells 	long		f_frsize;	/* Fragment size - unsupported */
2861730c53SDavid Howells 	long		f_blocks;
2961730c53SDavid Howells 	long		f_bfree;
3061730c53SDavid Howells 	long		f_files;
3161730c53SDavid Howells 	long		f_ffree;
3261730c53SDavid Howells 	long		f_bavail;
3361730c53SDavid Howells 
3461730c53SDavid Howells 	/* Linux specials */
3561730c53SDavid Howells 	__kernel_fsid_t f_fsid;
3661730c53SDavid Howells 	long		f_namelen;
3761730c53SDavid Howells 	long		f_flags;
3861730c53SDavid Howells 	long		f_spare[5];
3961730c53SDavid Howells };
4061730c53SDavid Howells 
4161730c53SDavid Howells #if (_MIPS_SIM == _MIPS_SIM_ABI32) || (_MIPS_SIM == _MIPS_SIM_NABI32)
4261730c53SDavid Howells 
4361730c53SDavid Howells /*
4461730c53SDavid Howells  * Unlike the traditional version the LFAPI version has none of the ABI junk
4561730c53SDavid Howells  */
4661730c53SDavid Howells struct statfs64 {
4761730c53SDavid Howells 	__u32	f_type;
4861730c53SDavid Howells 	__u32	f_bsize;
4961730c53SDavid Howells 	__u32	f_frsize;	/* Fragment size - unsupported */
5061730c53SDavid Howells 	__u32	__pad;
5161730c53SDavid Howells 	__u64	f_blocks;
5261730c53SDavid Howells 	__u64	f_bfree;
5361730c53SDavid Howells 	__u64	f_files;
5461730c53SDavid Howells 	__u64	f_ffree;
5561730c53SDavid Howells 	__u64	f_bavail;
5661730c53SDavid Howells 	__kernel_fsid_t f_fsid;
5761730c53SDavid Howells 	__u32	f_namelen;
5861730c53SDavid Howells 	__u32	f_flags;
5961730c53SDavid Howells 	__u32	f_spare[5];
6061730c53SDavid Howells };
6161730c53SDavid Howells 
6261730c53SDavid Howells #endif /* _MIPS_SIM == _MIPS_SIM_ABI32 */
6361730c53SDavid Howells 
6461730c53SDavid Howells #if _MIPS_SIM == _MIPS_SIM_ABI64
6561730c53SDavid Howells 
6661730c53SDavid Howells struct statfs64 {			/* Same as struct statfs */
6761730c53SDavid Howells 	long		f_type;
6861730c53SDavid Howells 	long		f_bsize;
6961730c53SDavid Howells 	long		f_frsize;	/* Fragment size - unsupported */
7061730c53SDavid Howells 	long		f_blocks;
7161730c53SDavid Howells 	long		f_bfree;
7261730c53SDavid Howells 	long		f_files;
7361730c53SDavid Howells 	long		f_ffree;
7461730c53SDavid Howells 	long		f_bavail;
7561730c53SDavid Howells 
7661730c53SDavid Howells 	/* Linux specials */
7761730c53SDavid Howells 	__kernel_fsid_t f_fsid;
7861730c53SDavid Howells 	long		f_namelen;
7961730c53SDavid Howells 	long		f_flags;
8061730c53SDavid Howells 	long		f_spare[5];
8161730c53SDavid Howells };
8261730c53SDavid Howells 
8361730c53SDavid Howells struct compat_statfs64 {
8461730c53SDavid Howells 	__u32	f_type;
8561730c53SDavid Howells 	__u32	f_bsize;
8661730c53SDavid Howells 	__u32	f_frsize;	/* Fragment size - unsupported */
8761730c53SDavid Howells 	__u32	__pad;
8861730c53SDavid Howells 	__u64	f_blocks;
8961730c53SDavid Howells 	__u64	f_bfree;
9061730c53SDavid Howells 	__u64	f_files;
9161730c53SDavid Howells 	__u64	f_ffree;
9261730c53SDavid Howells 	__u64	f_bavail;
9361730c53SDavid Howells 	__kernel_fsid_t f_fsid;
9461730c53SDavid Howells 	__u32	f_namelen;
9561730c53SDavid Howells 	__u32	f_flags;
9661730c53SDavid Howells 	__u32	f_spare[5];
9761730c53SDavid Howells };
9861730c53SDavid Howells 
9961730c53SDavid Howells #endif /* _MIPS_SIM == _MIPS_SIM_ABI64 */
10061730c53SDavid Howells 
10161730c53SDavid Howells #endif /* _ASM_STATFS_H */
102