4 #include <asm/byteorder.h>
5 #include <linux/string.h>
7 static inline kernel_lb_addr
lelb_to_cpu(lb_addr in
)
10 out
.logicalBlockNum
= le32_to_cpu(in
.logicalBlockNum
);
11 out
.partitionReferenceNum
= le16_to_cpu(in
.partitionReferenceNum
);
15 static inline lb_addr
cpu_to_lelb(kernel_lb_addr in
)
18 out
.logicalBlockNum
= cpu_to_le32(in
.logicalBlockNum
);
19 out
.partitionReferenceNum
= cpu_to_le16(in
.partitionReferenceNum
);
23 static inline kernel_timestamp
lets_to_cpu(timestamp in
)
26 memcpy(&out
, &in
, sizeof(timestamp
));
27 out
.typeAndTimezone
= le16_to_cpu(in
.typeAndTimezone
);
28 out
.year
= le16_to_cpu(in
.year
);
32 static inline short_ad
lesa_to_cpu(short_ad in
)
35 out
.extLength
= le32_to_cpu(in
.extLength
);
36 out
.extPosition
= le32_to_cpu(in
.extPosition
);
40 static inline short_ad
cpu_to_lesa(short_ad in
)
43 out
.extLength
= cpu_to_le32(in
.extLength
);
44 out
.extPosition
= cpu_to_le32(in
.extPosition
);
48 static inline kernel_long_ad
lela_to_cpu(long_ad in
)
51 out
.extLength
= le32_to_cpu(in
.extLength
);
52 out
.extLocation
= lelb_to_cpu(in
.extLocation
);
56 static inline long_ad
cpu_to_lela(kernel_long_ad in
)
59 out
.extLength
= cpu_to_le32(in
.extLength
);
60 out
.extLocation
= cpu_to_lelb(in
.extLocation
);
64 static inline kernel_extent_ad
leea_to_cpu(extent_ad in
)
67 out
.extLength
= le32_to_cpu(in
.extLength
);
68 out
.extLocation
= le32_to_cpu(in
.extLocation
);
72 static inline timestamp
cpu_to_lets(kernel_timestamp in
)
75 memcpy(&out
, &in
, sizeof(timestamp
));
76 out
.typeAndTimezone
= cpu_to_le16(in
.typeAndTimezone
);
77 out
.year
= cpu_to_le16(in
.year
);
81 #endif /* __UDF_ENDIAN_H */