The Design and Implementation of the FreeBSD Operating System, Second Edition
Now available: The Design and Implementation of the FreeBSD Operating System (Second Edition)


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]

FreeBSD/Linux Kernel Cross Reference
sys/fs/ntfs/endian.h

Version: -  FREEBSD  -  FREEBSD-13-STABLE  -  FREEBSD-13-0  -  FREEBSD-12-STABLE  -  FREEBSD-12-0  -  FREEBSD-11-STABLE  -  FREEBSD-11-0  -  FREEBSD-10-STABLE  -  FREEBSD-10-0  -  FREEBSD-9-STABLE  -  FREEBSD-9-0  -  FREEBSD-8-STABLE  -  FREEBSD-8-0  -  FREEBSD-7-STABLE  -  FREEBSD-7-0  -  FREEBSD-6-STABLE  -  FREEBSD-6-0  -  FREEBSD-5-STABLE  -  FREEBSD-5-0  -  FREEBSD-4-STABLE  -  FREEBSD-3-STABLE  -  FREEBSD22  -  l41  -  OPENBSD  -  linux-2.6  -  MK84  -  PLAN9  -  xnu-8792 
SearchContext: -  none  -  3  -  10 

    1 /*
    2  * endian.h - Defines for endianness handling in NTFS Linux kernel driver.
    3  *            Part of the Linux-NTFS project.
    4  *
    5  * Copyright (c) 2001-2004 Anton Altaparmakov
    6  *
    7  * This program/include file is free software; you can redistribute it and/or
    8  * modify it under the terms of the GNU General Public License as published
    9  * by the Free Software Foundation; either version 2 of the License, or
   10  * (at your option) any later version.
   11  *
   12  * This program/include file is distributed in the hope that it will be
   13  * useful, but WITHOUT ANY WARRANTY; without even the implied warranty
   14  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   15  * GNU General Public License for more details.
   16  *
   17  * You should have received a copy of the GNU General Public License
   18  * along with this program (in the main directory of the Linux-NTFS
   19  * distribution in the file COPYING); if not, write to the Free Software
   20  * Foundation,Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
   21  */
   22 
   23 #ifndef _LINUX_NTFS_ENDIAN_H
   24 #define _LINUX_NTFS_ENDIAN_H
   25 
   26 #include <asm/byteorder.h>
   27 #include "types.h"
   28 
   29 /*
   30  * Signed endianness conversion functions.
   31  */
   32 
   33 static inline s16 sle16_to_cpu(sle16 x)
   34 {
   35         return le16_to_cpu((__force le16)x);
   36 }
   37 
   38 static inline s32 sle32_to_cpu(sle32 x)
   39 {
   40         return le32_to_cpu((__force le32)x);
   41 }
   42 
   43 static inline s64 sle64_to_cpu(sle64 x)
   44 {
   45         return le64_to_cpu((__force le64)x);
   46 }
   47 
   48 static inline s16 sle16_to_cpup(sle16 *x)
   49 {
   50         return le16_to_cpu(*(__force le16*)x);
   51 }
   52 
   53 static inline s32 sle32_to_cpup(sle32 *x)
   54 {
   55         return le32_to_cpu(*(__force le32*)x);
   56 }
   57 
   58 static inline s64 sle64_to_cpup(sle64 *x)
   59 {
   60         return le64_to_cpu(*(__force le64*)x);
   61 }
   62 
   63 static inline sle16 cpu_to_sle16(s16 x)
   64 {
   65         return (__force sle16)cpu_to_le16(x);
   66 }
   67 
   68 static inline sle32 cpu_to_sle32(s32 x)
   69 {
   70         return (__force sle32)cpu_to_le32(x);
   71 }
   72 
   73 static inline sle64 cpu_to_sle64(s64 x)
   74 {
   75         return (__force sle64)cpu_to_le64(x);
   76 }
   77 
   78 static inline sle16 cpu_to_sle16p(s16 *x)
   79 {
   80         return (__force sle16)cpu_to_le16(*x);
   81 }
   82 
   83 static inline sle32 cpu_to_sle32p(s32 *x)
   84 {
   85         return (__force sle32)cpu_to_le32(*x);
   86 }
   87 
   88 static inline sle64 cpu_to_sle64p(s64 *x)
   89 {
   90         return (__force sle64)cpu_to_le64(*x);
   91 }
   92 
   93 #endif /* _LINUX_NTFS_ENDIAN_H */

Cache object: f6b3aeb46f82ab77b4cb42eadb3818c3


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]


This page is part of the FreeBSD/Linux Linux Kernel Cross-Reference, and was automatically generated using a modified version of the LXR engine.