1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16#ifndef __INPUT_SYSTEM_PRIVATE_H_INCLUDED__
17#define __INPUT_SYSTEM_PRIVATE_H_INCLUDED__
18
19#include "input_system_public.h"
20
21#include "device_access.h"
22
23#include "assert_support.h"
24
25STORAGE_CLASS_INPUT_SYSTEM_C void input_system_reg_store(
26 const input_system_ID_t ID,
27 const hrt_address reg,
28 const hrt_data value)
29{
30 assert(ID < N_INPUT_SYSTEM_ID);
31 assert(INPUT_SYSTEM_BASE[ID] != (hrt_address)-1);
32 ia_css_device_store_uint32(INPUT_SYSTEM_BASE[ID] + reg * sizeof(hrt_data),
33 value);
34 return;
35}
36
37STORAGE_CLASS_INPUT_SYSTEM_C hrt_data input_system_reg_load(
38 const input_system_ID_t ID,
39 const hrt_address reg)
40{
41 assert(ID < N_INPUT_SYSTEM_ID);
42 assert(INPUT_SYSTEM_BASE[ID] != (hrt_address)-1);
43 return ia_css_device_load_uint32(INPUT_SYSTEM_BASE[ID] + reg * sizeof(
44 hrt_data));
45}
46
47STORAGE_CLASS_INPUT_SYSTEM_C void receiver_reg_store(
48 const rx_ID_t ID,
49 const hrt_address reg,
50 const hrt_data value)
51{
52 assert(ID < N_RX_ID);
53 assert(RX_BASE[ID] != (hrt_address)-1);
54 ia_css_device_store_uint32(RX_BASE[ID] + reg * sizeof(hrt_data), value);
55 return;
56}
57
58STORAGE_CLASS_INPUT_SYSTEM_C hrt_data receiver_reg_load(
59 const rx_ID_t ID,
60 const hrt_address reg)
61{
62 assert(ID < N_RX_ID);
63 assert(RX_BASE[ID] != (hrt_address)-1);
64 return ia_css_device_load_uint32(RX_BASE[ID] + reg * sizeof(hrt_data));
65}
66
67STORAGE_CLASS_INPUT_SYSTEM_C void receiver_port_reg_store(
68 const rx_ID_t ID,
69 const enum mipi_port_id port_ID,
70 const hrt_address reg,
71 const hrt_data value)
72{
73 assert(ID < N_RX_ID);
74 assert(port_ID < N_MIPI_PORT_ID);
75 assert(RX_BASE[ID] != (hrt_address)-1);
76 assert(MIPI_PORT_OFFSET[port_ID] != (hrt_address)-1);
77 ia_css_device_store_uint32(RX_BASE[ID] + MIPI_PORT_OFFSET[port_ID] + reg *
78 sizeof(hrt_data), value);
79 return;
80}
81
82STORAGE_CLASS_INPUT_SYSTEM_C hrt_data receiver_port_reg_load(
83 const rx_ID_t ID,
84 const enum mipi_port_id port_ID,
85 const hrt_address reg)
86{
87 assert(ID < N_RX_ID);
88 assert(port_ID < N_MIPI_PORT_ID);
89 assert(RX_BASE[ID] != (hrt_address)-1);
90 assert(MIPI_PORT_OFFSET[port_ID] != (hrt_address)-1);
91 return ia_css_device_load_uint32(RX_BASE[ID] + MIPI_PORT_OFFSET[port_ID] + reg *
92 sizeof(hrt_data));
93}
94
95STORAGE_CLASS_INPUT_SYSTEM_C void input_system_sub_system_reg_store(
96 const input_system_ID_t ID,
97 const sub_system_ID_t sub_ID,
98 const hrt_address reg,
99 const hrt_data value)
100{
101 assert(ID < N_INPUT_SYSTEM_ID);
102 assert(sub_ID < N_SUB_SYSTEM_ID);
103 assert(INPUT_SYSTEM_BASE[ID] != (hrt_address)-1);
104 assert(SUB_SYSTEM_OFFSET[sub_ID] != (hrt_address)-1);
105 ia_css_device_store_uint32(INPUT_SYSTEM_BASE[ID] + SUB_SYSTEM_OFFSET[sub_ID] +
106 reg * sizeof(hrt_data), value);
107 return;
108}
109
110STORAGE_CLASS_INPUT_SYSTEM_C hrt_data input_system_sub_system_reg_load(
111 const input_system_ID_t ID,
112 const sub_system_ID_t sub_ID,
113 const hrt_address reg)
114{
115 assert(ID < N_INPUT_SYSTEM_ID);
116 assert(sub_ID < N_SUB_SYSTEM_ID);
117 assert(INPUT_SYSTEM_BASE[ID] != (hrt_address)-1);
118 assert(SUB_SYSTEM_OFFSET[sub_ID] != (hrt_address)-1);
119 return ia_css_device_load_uint32(INPUT_SYSTEM_BASE[ID] +
120 SUB_SYSTEM_OFFSET[sub_ID] + reg * sizeof(hrt_data));
121}
122
123#endif
124