2 * @ingroup adf_os_public
4 * This file abstracts I/O operations.
10 #include <adf_os_io_pvt.h>
14 * @brief Read an 8-bit register value
16 * @param[in] osdev platform device object
17 * @param[in] addr register addr
19 * @return An 8-bit register value.
21 #define adf_os_reg_read8(osdev, addr) __adf_os_reg_read8(osdev, addr)
24 * @brief Read a 16-bit register value
26 * @param[in] osdev platform device object
27 * @param[in] addr register addr
29 * @return A 16-bit register value.
31 #define adf_os_reg_read16(osdev, addr) __adf_os_reg_read16(osdev, addr)
34 * @brief Read a 32-bit register value
36 * @param[in] osdev platform device object
37 * @param[in] addr register addr
39 * @return A 32-bit register value.
41 #define adf_os_reg_read32(osdev, addr) __adf_os_reg_read32(osdev, addr)
44 * @brief Read a 64-bit register value
46 * @param[in] osdev platform device object
47 * @param[in] addr register addr
49 * @return A 64-bit register value.
51 #define adf_os_reg_read64(osdev, addr) __adf_os_reg_read64(osdev, addr)
54 * @brief Write an 8-bit value into register
56 * @param[in] osdev platform device object
57 * @param[in] addr register addr
58 * @param[in] b the 8-bit value to be written
60 #define adf_os_reg_write8(osdev, addr, b) __adf_os_reg_write8(osdev, addr, b)
63 * @brief Write a 16-bit value into register
65 * @param[in] osdev platform device object
66 * @param[in] addr register addr
67 * @param[in] w the 16-bit value to be written
69 #define adf_os_reg_write16(osdev, addr, w) __adf_os_reg_write16(osdev, addr, w)
72 * @brief Write a 32-bit value into register
74 * @param[in] osdev platform device object
75 * @param[in] addr register addr
76 * @param[in] l the 32-bit value to be written
78 #define adf_os_reg_write32(osdev, addr, l) __adf_os_reg_write32(osdev, addr, l)
81 * @brief Write a 64-bit value into register
83 * @param[in] osdev platform device object
84 * @param[in] addr register addr
85 * @param[in] q the 64-bit value to be written
87 #define adf_os_reg_write64(osdev, addr, q) __adf_os_reg_write64(osdev, addr, q)
90 * @brief Convert a 16-bit value from network byte order to host byte order
92 #define adf_os_ntohs(x) __adf_os_ntohs(x)
95 * @brief Convert a 32-bit value from network byte order to host byte order
97 #define adf_os_ntohl(x) __adf_os_ntohl(x)
100 * @brief Convert a 16-bit value from host byte order to network byte order
102 #define adf_os_htons(x) __adf_os_htons(x)
105 * @brief Convert a 32-bit value from host byte order to network byte order
107 #define adf_os_htonl(x) __adf_os_htonl(x)
110 * @brief Convert a 16-bit value from CPU byte order to big-endian byte order
112 #define adf_os_cpu_to_be16(x) __adf_os_cpu_to_be16(x)
115 * @brief Convert a 32-bit value from CPU byte order to big-endian byte order
117 #define adf_os_cpu_to_be32(x) __adf_os_cpu_to_be32(x)
120 * @brief Convert a 64-bit value from CPU byte order to big-endian byte order
122 #define adf_os_cpu_to_be64(x) __adf_os_cpu_to_be64(x)
125 * @brief Convert a 16-bit value from CPU byte order to little-endian byte order
127 #define adf_os_cpu_to_le16(x) __adf_os_cpu_to_le16(x)
130 * @brief Convert a 32-bit value from CPU byte order to little-endian byte order
132 #define adf_os_cpu_to_le32(x) __adf_os_cpu_to_le32(x)
135 * @brief Convert a 64-bit value from CPU byte order to little-endian byte order
137 #define adf_os_cpu_to_le64(x) __adf_os_cpu_to_le64(x)
140 * @brief Convert a 16-bit value from big-endian byte order to CPU byte order
142 #define adf_os_be16_to_cpu(x) __adf_os_be16_to_cpu(x)
145 * @brief Convert a 32-bit value from big-endian byte order to CPU byte order
147 #define adf_os_be32_to_cpu(x) __adf_os_be32_to_cpu(x)
150 * @brief Convert a 64-bit value from big-endian byte order to CPU byte order
152 #define adf_os_be64_to_cpu(x) __adf_os_be64_to_cpu(x)
155 * @brief Convert a 16-bit value from little-endian byte order to CPU byte order
157 #define adf_os_le16_to_cpu(x) __adf_os_le16_to_cpu(x)
160 * @brief Convert a 32-bit value from little-endian byte order to CPU byte order
162 #define adf_os_le32_to_cpu(x) __adf_os_le32_to_cpu(x)
165 * @brief Convert a 64-bit value from little-endian byte order to CPU byte order
167 #define adf_os_le64_to_cpu(x) __adf_os_le64_to_cpu(x)