Lines Matching +full:self +full:- +full:power

2 # SPDX-License-Identifier: GPL-2.0
19 def system_is_secured() -> bool:
28 def __init__(self, data) -> None: argument
29 self.d = None
30 self.signature = "FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF"
31 self.uid = "1111111111111111"
34 def setUp(self) -> None: argument
35 self.d = open(DEVICE_NODE)
38 def tearDown(self) -> None: argument
39 if self.d:
40 self.d.close()
45 def setUp(self) -> None: argument
47 self.skipTest("system is supported")
48 with self.assertRaises(FileNotFoundError) as error:
50 self.assertEqual(error.exception.errno, 2)
52 def test_unauthenticated_nonce(self) -> None: argument
54 with self.assertRaises(ValueError) as error:
55 get_nonce(self.d, None)
59 def __init__(self, data) -> None: argument
60 self.data = invalid_param()
61 self.data.data = 1
64 def setUp(self) -> None: argument
66 self.skipTest("system is unsupported")
69 def test_invalid_nonce_ioctl(self) -> None: argument
74 with self.assertRaises(OSError) as error:
75 fcntl.ioctl(self.d, INVALID1, self.data, True)
76 self.assertEqual(error.exception.errno, 22)
78 def test_invalid_setuid_ioctl(self) -> None: argument
83 with self.assertRaises(OSError) as error:
84 fcntl.ioctl(self.d, INVALID2, self.data, True)
85 self.assertEqual(error.exception.errno, 22)
87 def test_invalid_setuid_rw_ioctl(self) -> None: argument
92 with self.assertRaises(OSError) as error:
93 fcntl.ioctl(self.d, INVALID3, self.data, True)
94 self.assertEqual(error.exception.errno, 22)
96 def test_invalid_param_ioctl(self) -> None: argument
100 with self.assertRaises(OSError) as error:
101 fcntl.ioctl(self.d, INVALID4, self.data, True)
102 self.assertEqual(error.exception.errno, 22)
104 def test_invalid_call_ioctl(self) -> None: argument
108 with self.assertRaises(OSError) as error:
109 fcntl.ioctl(self.d, INVALID5, self.data, True)
110 self.assertEqual(error.exception.errno, 22)
114 def setUp(self) -> None: argument
116 self.skipTest("system is unsupported")
118 self.skipTest("system is unfused")
121 def test_unauthenticated_nonce(self) -> None: argument
123 get_nonce(self.d, None)
125 def test_multiple_unauthenticated_nonce(self) -> None: argument
128 get_nonce(self.d, None)
130 def test_authenticated_nonce(self) -> None: argument
132 with self.assertRaises(OSError) as error:
133 get_nonce(self.d, self.signature)
134 self.assertEqual(error.exception.errno, 1)
136 def test_set_uid(self) -> None: argument
138 with self.assertRaises(OSError) as error:
139 set_uid(self.d, self.uid, self.signature)
140 self.assertEqual(error.exception.errno, 1)
142 def test_get_param(self) -> None: argument
144 with self.assertRaises(OSError) as error:
145 process_param(self.d, PARAM_GET_SOC_PWR_CUR, self.signature)
146 self.assertEqual(error.exception.errno, 1)
148 def test_set_param(self) -> None: argument
150 with self.assertRaises(OSError) as error:
151 process_param(self.d, PARAM_SET_PWR_CAP, self.signature, 1000)
152 self.assertEqual(error.exception.errno, 1)
156 def setup_identity(self) -> None: argument
160 get_nonce(self.d, None)
164 set_uid(self.d, self.uid, self.signature)
168 get_nonce(self.d, self.signature)
172 def setUp(self) -> None: argument
174 self.skipTest("system is unsupported")
176 self.skipTest("system is fused")
178 self.setup_identity()
181 def test_get_valid_param(self) -> None: argument
183 # SOC power
184 soc_power_max = process_param(self.d, PARAM_GET_SOC_PWR_MAX, self.signature)
185 soc_power_min = process_param(self.d, PARAM_GET_SOC_PWR_MIN, self.signature)
186 self.assertGreater(soc_power_max.parameter, soc_power_min.parameter)
189 fmax_max = process_param(self.d, PARAM_GET_FMAX_MAX, self.signature)
190 fmax_min = process_param(self.d, PARAM_GET_FMAX_MIN, self.signature)
191 self.assertGreater(fmax_max.parameter, fmax_min.parameter)
195 "fmax-cap": PARAM_GET_FMAX_CAP,
196 "power-cap": PARAM_GET_PWR_CAP,
197 "current-temp": PARAM_GET_CURR_TEMP,
198 "soc-power-cur": PARAM_GET_SOC_PWR_CUR,
201 result = process_param(self.d, keys[k], self.signature)
202 self.assertGreater(result.parameter, 0)
204 def test_get_invalid_param(self) -> None: argument
207 set_uid(self.d, self.uid, self.signature)
210 with self.assertRaises(OSError) as error:
211 process_param(self.d, (0xF,), self.signature)
212 self.assertEqual(error.exception.errno, 22)
214 def test_set_fmax(self) -> None: argument
217 original = process_param(self.d, PARAM_GET_FMAX_CAP, self.signature)
220 target = original.parameter - 100
221 process_param(self.d, PARAM_SET_FMAX_CAP, self.signature, target)
223 new = process_param(self.d, PARAM_GET_FMAX_CAP, self.signature)
224 self.assertEqual(new.parameter, target)
227 process_param(self.d, PARAM_SET_FMAX_CAP, self.signature, original.parameter)
229 cur = process_param(self.d, PARAM_GET_FMAX_CAP, self.signature)
230 self.assertEqual(cur.parameter, original.parameter)
232 def test_set_power_cap(self) -> None: argument
233 """get/set power cap limit"""
235 original = process_param(self.d, PARAM_GET_PWR_CAP, self.signature)
238 target = original.parameter - 10
239 process_param(self.d, PARAM_SET_PWR_CAP, self.signature, target)
241 new = process_param(self.d, PARAM_GET_PWR_CAP, self.signature)
242 self.assertEqual(new.parameter, target)
245 process_param(self.d, PARAM_SET_PWR_CAP, self.signature, original.parameter)
247 cur = process_param(self.d, PARAM_GET_PWR_CAP, self.signature)
248 self.assertEqual(cur.parameter, original.parameter)
250 def test_set_3d_graphics_mode(self) -> None: argument
254 with self.assertRaises(OSError) as error:
255 process_param(self.d, PARAM_GET_GFX_MODE, self.signature)
256 self.assertEqual(error.exception.errno, 2)
260 with self.assertRaises(OSError) as error:
261 process_param(self.d, PARAM_SET_GFX_MODE, self.signature, 1)
262 self.assertEqual(error.exception.errno, 2)