1 #include <gtest/gtest.h>
2
3 #include <stdint.h>
4 #include <string.h>
5
6 #include <string>
7
8 #define CPUINFO_BUILD_PROP_VALUE_MAX 92
9 #define CPUINFO_ARM_CHIPSET_NAME_MAX 48
10
11 extern "C" void cpuinfo_arm_android_parse_ro_product_board(
12 const char board[CPUINFO_BUILD_PROP_VALUE_MAX],
13 uint32_t cores,
14 uint32_t max_cpu_freq_max,
15 char chipset_name[CPUINFO_ARM_CHIPSET_NAME_MAX]);
16
parse_ro_product_board(std::string board,uint32_t cores=1,uint32_t max_cpu_freq_max=0)17 inline std::string parse_ro_product_board(
18 std::string board, uint32_t cores=1, uint32_t max_cpu_freq_max=0)
19 {
20 char board_buffer[CPUINFO_BUILD_PROP_VALUE_MAX];
21 strncpy(board_buffer, board.c_str(), CPUINFO_BUILD_PROP_VALUE_MAX);
22 char chipset_name[CPUINFO_ARM_CHIPSET_NAME_MAX];
23 cpuinfo_arm_android_parse_ro_product_board(
24 board_buffer, cores, max_cpu_freq_max, chipset_name);
25 return std::string(chipset_name, strnlen(chipset_name, CPUINFO_ARM_CHIPSET_NAME_MAX));
26 }
27
TEST(RO_PRODUCT_BOARD,qualcomm_msm)28 TEST(RO_PRODUCT_BOARD, qualcomm_msm) {
29 EXPECT_EQ("Qualcomm APQ8064",
30 parse_ro_product_board("MSM8960", 4));
31 EXPECT_EQ("Qualcomm MSM7630",
32 parse_ro_product_board("MSM7630_SURF"));
33 EXPECT_EQ("Qualcomm MSM8209",
34 parse_ro_product_board("MSM8209"));
35 EXPECT_EQ("Qualcomm MSM8210",
36 parse_ro_product_board("MSM8210"));
37 EXPECT_EQ("Qualcomm MSM8212",
38 parse_ro_product_board("MSM8212"));
39 EXPECT_EQ("Qualcomm MSM8225",
40 parse_ro_product_board("MSM8225"));
41 EXPECT_EQ("Qualcomm MSM8226",
42 parse_ro_product_board("MSM8226"));
43 EXPECT_EQ("Qualcomm MSM8227",
44 parse_ro_product_board("MSM8227"));
45 EXPECT_EQ("Qualcomm MSM8228",
46 parse_ro_product_board("MSM8228"));
47 EXPECT_EQ("Qualcomm MSM8230",
48 parse_ro_product_board("MSM8230"));
49 EXPECT_EQ("Qualcomm MSM8260A",
50 parse_ro_product_board("MSM8260A"));
51 EXPECT_EQ("Qualcomm MSM8274",
52 parse_ro_product_board("MSM8274"));
53 #if CPUINFO_ARCH_ARM
54 EXPECT_EQ("Qualcomm MSM8610",
55 parse_ro_product_board("MSM8610", 2));
56 EXPECT_EQ("Qualcomm MSM8612",
57 parse_ro_product_board("MSM8610", 4));
58 #endif /* CPUINFO_ARCH_ARM */
59 EXPECT_EQ("Qualcomm MSM8612",
60 parse_ro_product_board("MSM8612"));
61 EXPECT_EQ("Qualcomm MSM8625",
62 parse_ro_product_board("MSM8625"));
63 EXPECT_EQ("Qualcomm MSM8626",
64 parse_ro_product_board("MSM8626"));
65 EXPECT_EQ("Qualcomm MSM8660",
66 parse_ro_product_board("MSM8660_SURF"));
67 EXPECT_EQ("Qualcomm MSM8674",
68 parse_ro_product_board("MSM8674"));
69 EXPECT_EQ("Qualcomm MSM8909",
70 parse_ro_product_board("MSM8909"));
71 EXPECT_EQ("Qualcomm MSM8909",
72 parse_ro_product_board("msm8909"));
73 EXPECT_EQ("Qualcomm MSM8916",
74 parse_ro_product_board("MSM8216"));
75 EXPECT_EQ("Qualcomm MSM8916",
76 parse_ro_product_board("MSM8916", 4));
77 EXPECT_EQ("Qualcomm MSM8916",
78 parse_ro_product_board("msm8916", 4));
79 EXPECT_EQ("Qualcomm MSM8917",
80 parse_ro_product_board("MSM8917"));
81 EXPECT_EQ("Qualcomm MSM8917",
82 parse_ro_product_board("msm8937", 4));
83 EXPECT_EQ("Qualcomm MSM8917",
84 parse_ro_product_board("msm8937_32", 4));
85 EXPECT_EQ("Qualcomm MSM8926",
86 parse_ro_product_board("MSM8926"));
87 EXPECT_EQ("Qualcomm MSM8928",
88 parse_ro_product_board("MSM8928"));
89 EXPECT_EQ("Qualcomm MSM8929",
90 parse_ro_product_board("MSM8929"));
91 EXPECT_EQ("Qualcomm MSM8929",
92 parse_ro_product_board("msm8929"));
93 EXPECT_EQ("Qualcomm MSM8937",
94 parse_ro_product_board("MSM8937", 8));
95 EXPECT_EQ("Qualcomm MSM8937",
96 parse_ro_product_board("msm8937", 8));
97 EXPECT_EQ("Qualcomm MSM8937",
98 parse_ro_product_board("msm8937_32", 8));
99 EXPECT_EQ("Qualcomm MSM8939",
100 parse_ro_product_board("MSM8916", 8));
101 EXPECT_EQ("Qualcomm MSM8939",
102 parse_ro_product_board("MSM8939"));
103 EXPECT_EQ("Qualcomm MSM8939",
104 parse_ro_product_board("msm8916", 8));
105 EXPECT_EQ("Qualcomm MSM8939",
106 parse_ro_product_board("msm8939"));
107 EXPECT_EQ("Qualcomm MSM8939",
108 parse_ro_product_board("msm8939_64"));
109 EXPECT_EQ("Qualcomm MSM8940",
110 parse_ro_product_board("MSM8940"));
111 EXPECT_EQ("Qualcomm MSM8952",
112 parse_ro_product_board("MSM8952"));
113 EXPECT_EQ("Qualcomm MSM8952",
114 parse_ro_product_board("msm8952"));
115 EXPECT_EQ("Qualcomm MSM8953",
116 parse_ro_product_board("msm8953"));
117 EXPECT_EQ("Qualcomm MSM8960",
118 parse_ro_product_board("MSM8960", 2));
119 EXPECT_EQ("Qualcomm MSM8974",
120 parse_ro_product_board("MSM8974"));
121 EXPECT_EQ("Qualcomm MSM8974",
122 parse_ro_product_board("msm8974"));
123 EXPECT_EQ("Qualcomm MSM8976",
124 parse_ro_product_board("MSM8976"));
125 EXPECT_EQ("Qualcomm MSM8992",
126 parse_ro_product_board("MSM8992"));
127 EXPECT_EQ("Qualcomm MSM8992",
128 parse_ro_product_board("msm8992"));
129 EXPECT_EQ("Qualcomm MSM8994",
130 parse_ro_product_board("MSM8994"));
131 EXPECT_EQ("Qualcomm MSM8994",
132 parse_ro_product_board("msm8994"));
133 EXPECT_EQ("Qualcomm MSM8996",
134 parse_ro_product_board("msm8996", 4));
135 EXPECT_EQ("Qualcomm MSM8998",
136 parse_ro_product_board("msm8998"));
137 }
138
TEST(RO_PRODUCT_BOARD,qualcomm_apq)139 TEST(RO_PRODUCT_BOARD, qualcomm_apq) {
140 EXPECT_EQ("Qualcomm APQ8064",
141 parse_ro_product_board("APQ8064"));
142 EXPECT_EQ("Qualcomm APQ8064A",
143 parse_ro_product_board("APQ8064A"));
144 EXPECT_EQ("Qualcomm APQ8064PRO",
145 parse_ro_product_board("APQ8064Pro"));
146 EXPECT_EQ("Qualcomm APQ8084",
147 parse_ro_product_board("APQ8084"));
148 }
149
TEST(RO_PRODUCT_BOARD,qualcomm_special)150 TEST(RO_PRODUCT_BOARD, qualcomm_special) {
151 EXPECT_EQ("Qualcomm MSM8996PRO-AB",
152 parse_ro_product_board("marlin"));
153 EXPECT_EQ("Qualcomm MSM8996PRO-AB",
154 parse_ro_product_board("sailfish"));
155 }
156
TEST(RO_PRODUCT_BOARD,mediatek_mt)157 TEST(RO_PRODUCT_BOARD, mediatek_mt) {
158 EXPECT_EQ("MediaTek MT5861",
159 parse_ro_product_board("mt5861"));
160 EXPECT_EQ("MediaTek MT5882",
161 parse_ro_product_board("mt5882"));
162 EXPECT_EQ("MediaTek MT6572",
163 parse_ro_product_board("mt6572"));
164 EXPECT_EQ("MediaTek MT6572M",
165 parse_ro_product_board("MT6572M"));
166 EXPECT_EQ("MediaTek MT6575",
167 parse_ro_product_board("MTK6575"));
168 EXPECT_EQ("MediaTek MT6575",
169 parse_ro_product_board("mt6575"));
170 EXPECT_EQ("MediaTek MT6577",
171 parse_ro_product_board("MTK6577"));
172 EXPECT_EQ("MediaTek MT6577",
173 parse_ro_product_board("mt6577"));
174 EXPECT_EQ("MediaTek MT6580",
175 parse_ro_product_board("MT6580"));
176 EXPECT_EQ("MediaTek MT6580",
177 parse_ro_product_board("mt6580"));
178 EXPECT_EQ("MediaTek MT6580A",
179 parse_ro_product_board("MT6580A"));
180 EXPECT_EQ("MediaTek MT6580M",
181 parse_ro_product_board("MT6580M"));
182 EXPECT_EQ("MediaTek MT6582",
183 parse_ro_product_board("MT6582"));
184 EXPECT_EQ("MediaTek MT6582",
185 parse_ro_product_board("mt6582"));
186 EXPECT_EQ("MediaTek MT6582M",
187 parse_ro_product_board("MTK6582M"));
188 EXPECT_EQ("MediaTek MT6582V",
189 parse_ro_product_board("MT6582V"));
190 EXPECT_EQ("MediaTek MT6582W",
191 parse_ro_product_board("MT6582W"));
192 EXPECT_EQ("MediaTek MT6589",
193 parse_ro_product_board("MT6589"));
194 EXPECT_EQ("MediaTek MT6589T",
195 parse_ro_product_board("MT6589T"));
196 EXPECT_EQ("MediaTek MT6592",
197 parse_ro_product_board("MT6592"));
198 EXPECT_EQ("MediaTek MT6592",
199 parse_ro_product_board("mt6592"));
200 EXPECT_EQ("MediaTek MT6592M",
201 parse_ro_product_board("MT6592M"));
202 EXPECT_EQ("MediaTek MT6595",
203 parse_ro_product_board("MT6595"));
204 EXPECT_EQ("MediaTek MT6732",
205 parse_ro_product_board("MT6732"));
206 EXPECT_EQ("MediaTek MT6735",
207 parse_ro_product_board("MT6735"));
208 EXPECT_EQ("MediaTek MT6735",
209 parse_ro_product_board("mt6735"));
210 EXPECT_EQ("MediaTek MT6735M",
211 parse_ro_product_board("MT6735M"));
212 EXPECT_EQ("MediaTek MT6735M",
213 parse_ro_product_board("mt6735m"));
214 EXPECT_EQ("MediaTek MT6735P",
215 parse_ro_product_board("MT6735P"));
216 EXPECT_EQ("MediaTek MT6735V",
217 parse_ro_product_board("MT6735V"));
218 EXPECT_EQ("MediaTek MT6737",
219 parse_ro_product_board("MT6737"));
220 EXPECT_EQ("MediaTek MT6737M",
221 parse_ro_product_board("mt6737m"));
222 EXPECT_EQ("MediaTek MT6737T",
223 parse_ro_product_board("MT6737T"));
224 EXPECT_EQ("MediaTek MT6750",
225 parse_ro_product_board("MT6750"));
226 EXPECT_EQ("MediaTek MT6750",
227 parse_ro_product_board("mt6750"));
228 EXPECT_EQ("MediaTek MT6752",
229 parse_ro_product_board("MT6752", 8));
230 EXPECT_EQ("MediaTek MT6753",
231 parse_ro_product_board("MT6753"));
232 EXPECT_EQ("MediaTek MT6753",
233 parse_ro_product_board("mt6753"));
234 EXPECT_EQ("MediaTek MT6755",
235 parse_ro_product_board("mt6755"));
236 EXPECT_EQ("MediaTek MT6755M",
237 parse_ro_product_board("MT6755M"));
238 EXPECT_EQ("MediaTek MT6757",
239 parse_ro_product_board("MT6757"));
240 EXPECT_EQ("MediaTek MT6795",
241 parse_ro_product_board("mt6795"));
242 EXPECT_EQ("MediaTek MT6797",
243 parse_ro_product_board("MT6797"));
244 EXPECT_EQ("MediaTek MT8127",
245 parse_ro_product_board("mt8127"));
246 EXPECT_EQ("MediaTek MT8151",
247 parse_ro_product_board("mt8151"));
248 EXPECT_EQ("MediaTek MT8163",
249 parse_ro_product_board("mt8163"));
250 EXPECT_EQ("MediaTek MT8312",
251 parse_ro_product_board("MT8312"));
252 EXPECT_EQ("MediaTek MT8321",
253 parse_ro_product_board("MT8321"));
254 EXPECT_EQ("MediaTek MT8382",
255 parse_ro_product_board("MT8382"));
256 EXPECT_EQ("MediaTek MT8382V",
257 parse_ro_product_board("MT8382V"));
258 EXPECT_EQ("MediaTek MT8389",
259 parse_ro_product_board("MT8389"));
260 EXPECT_EQ("MediaTek MT8735M",
261 parse_ro_product_board("MT8735m"));
262 EXPECT_EQ("MediaTek MT8735P",
263 parse_ro_product_board("MT8735P"));
264 EXPECT_EQ("MediaTek MT8783",
265 parse_ro_product_board("MT8783"));
266 }
267
TEST(RO_PRODUCT_BOARD,samsung_universal)268 TEST(RO_PRODUCT_BOARD, samsung_universal) {
269 EXPECT_EQ("Samsung Exynos 3470",
270 parse_ro_product_board("universal3470"));
271 EXPECT_EQ("Samsung Exynos 3475",
272 parse_ro_product_board("universal3475"));
273 EXPECT_EQ("Samsung Exynos 4415",
274 parse_ro_product_board("universal4415"));
275 EXPECT_EQ("Samsung Exynos 5260",
276 parse_ro_product_board("universal5260"));
277 EXPECT_EQ("Samsung Exynos 5410",
278 parse_ro_product_board("universal5410"));
279 EXPECT_EQ("Samsung Exynos 5420",
280 parse_ro_product_board("universal5420", 4));
281 EXPECT_EQ("Samsung Exynos 5422",
282 parse_ro_product_board("universal5422"));
283 EXPECT_EQ("Samsung Exynos 5430",
284 parse_ro_product_board("universal5430"));
285 EXPECT_EQ("Samsung Exynos 5433",
286 parse_ro_product_board("universal5433"));
287 EXPECT_EQ("Samsung Exynos 7420",
288 parse_ro_product_board("universal7420"));
289 EXPECT_EQ("Samsung Exynos 7570",
290 parse_ro_product_board("universal7570"));
291 EXPECT_EQ("Samsung Exynos 7578",
292 parse_ro_product_board("universal7580", 4));
293 EXPECT_EQ("Samsung Exynos 7580",
294 parse_ro_product_board("universal7580", 8));
295 EXPECT_EQ("Samsung Exynos 7870",
296 parse_ro_product_board("universal7870"));
297 EXPECT_EQ("Samsung Exynos 7880",
298 parse_ro_product_board("universal7880"));
299 EXPECT_EQ("Samsung Exynos 8890",
300 parse_ro_product_board("universal8890"));
301 EXPECT_EQ("Samsung Exynos 8895",
302 parse_ro_product_board("universal8895"));
303 }
304
305 #if CPUINFO_ARCH_ARM
TEST(RO_PRODUCT_BOARD,samsung_smdk)306 TEST(RO_PRODUCT_BOARD, samsung_smdk) {
307 EXPECT_EQ("Samsung Exynos 4212",
308 parse_ro_product_board("smdk4x12", 2));
309 EXPECT_EQ("Samsung Exynos 4412",
310 parse_ro_product_board("smdk4x12", 4));
311 }
312 #endif
313
TEST(RO_PRODUCT_BOARD,hisilicon_huawei)314 TEST(RO_PRODUCT_BOARD, hisilicon_huawei) {
315 EXPECT_EQ("HiSilicon Kirin 659",
316 parse_ro_product_board("BAC"));
317 EXPECT_EQ("HiSilicon Kirin 950",
318 parse_ro_product_board("FRD"));
319 EXPECT_EQ("HiSilicon Kirin 950",
320 parse_ro_product_board("FRD-L09"));
321 EXPECT_EQ("HiSilicon Kirin 950",
322 parse_ro_product_board("NXT"));
323 EXPECT_EQ("HiSilicon Kirin 950",
324 parse_ro_product_board("NXT-AL10"));
325 EXPECT_EQ("HiSilicon Kirin 950",
326 parse_ro_product_board("NXT-L09"));
327 EXPECT_EQ("HiSilicon Kirin 950",
328 parse_ro_product_board("NXT-L29"));
329 EXPECT_EQ("HiSilicon Kirin 955",
330 parse_ro_product_board("EVA"));
331 EXPECT_EQ("HiSilicon Kirin 955",
332 parse_ro_product_board("EVA-AL10"));
333 EXPECT_EQ("HiSilicon Kirin 955",
334 parse_ro_product_board("EVA-L09"));
335 EXPECT_EQ("HiSilicon Kirin 955",
336 parse_ro_product_board("EVA-L19"));
337 EXPECT_EQ("HiSilicon Kirin 955",
338 parse_ro_product_board("VIE-L09"));
339 EXPECT_EQ("HiSilicon Kirin 955",
340 parse_ro_product_board("VIE-L29"));
341 EXPECT_EQ("HiSilicon Kirin 960",
342 parse_ro_product_board("DUK"));
343 EXPECT_EQ("HiSilicon Kirin 960",
344 parse_ro_product_board("LON"));
345 EXPECT_EQ("HiSilicon Kirin 960",
346 parse_ro_product_board("MHA"));
347 EXPECT_EQ("HiSilicon Kirin 960",
348 parse_ro_product_board("STF"));
349 EXPECT_EQ("HiSilicon Kirin 960",
350 parse_ro_product_board("VKY"));
351 EXPECT_EQ("HiSilicon Kirin 960",
352 parse_ro_product_board("VTR"));
353 }
354
TEST(RO_PRODUCT_BOARD,hisilicon_special)355 TEST(RO_PRODUCT_BOARD, hisilicon_special) {
356 EXPECT_EQ("HiSilicon Kirin 620",
357 parse_ro_product_board("hi6210sft"));
358 EXPECT_EQ("HiSilicon Kirin 650",
359 parse_ro_product_board("hi6250"));
360 #if CPUINFO_ARCH_ARM
361 EXPECT_EQ("HiSilicon Kirin 920",
362 parse_ro_product_board("hi3630"));
363 #endif /* CPUINFO_ARCH_ARM */
364 EXPECT_EQ("HiSilicon Kirin 930",
365 parse_ro_product_board("hi3635"));
366 EXPECT_EQ("HiSilicon Kirin 950",
367 parse_ro_product_board("hi3650"));
368 EXPECT_EQ("HiSilicon Kirin 960",
369 parse_ro_product_board("hi3660"));
370 EXPECT_EQ("HiSilicon Kirin 950",
371 parse_ro_product_board("BEETHOVEN"));
372 }
373
374 #if CPUINFO_ARCH_ARM
TEST(RO_PRODUCT_BOARD,broadcom)375 TEST(RO_PRODUCT_BOARD, broadcom) {
376 EXPECT_EQ("Broadcom BCM28155",
377 parse_ro_product_board("capri", 2, 1200000));
378 EXPECT_EQ("Broadcom BCM28155",
379 parse_ro_product_board("capri", 2, 1300000));
380 EXPECT_EQ("Broadcom BCM28155",
381 parse_ro_product_board("capri", 2, 1399999));
382 EXPECT_EQ("Broadcom BCM28155",
383 parse_ro_product_board("capri", 2, 1399999));
384 EXPECT_EQ("Broadcom BCM23550",
385 parse_ro_product_board("java", 4, 1200000));
386 EXPECT_EQ("Broadcom BCM23550",
387 parse_ro_product_board("java", 4, 1300000));
388 EXPECT_EQ("Broadcom BCM21654",
389 parse_ro_product_board("rhea", 1, 849999));
390 EXPECT_EQ("Broadcom BCM21654G",
391 parse_ro_product_board("rhea", 1, 999999));
392 EXPECT_EQ("Broadcom BCM21663",
393 parse_ro_product_board("hawaii", 1, 999999));
394 EXPECT_EQ("Broadcom BCM21664",
395 parse_ro_product_board("hawaii", 2, 999999));
396 EXPECT_EQ("Broadcom BCM21664T",
397 parse_ro_product_board("hawaii", 2, 1200000));
398 }
399
TEST(RO_PRODUCT_BOARD,leadcore_lc)400 TEST(RO_PRODUCT_BOARD, leadcore_lc) {
401 EXPECT_EQ("Leadcore LC1810",
402 parse_ro_product_board("lc1810"));
403 }
404
TEST(RO_PRODUCT_BOARD,marvell_pxa)405 TEST(RO_PRODUCT_BOARD, marvell_pxa) {
406 EXPECT_EQ("Marvell PXA1088",
407 parse_ro_product_board("PXA1088"));
408 EXPECT_EQ("Marvell PXA986",
409 parse_ro_product_board("PXA986"));
410 EXPECT_EQ("Marvell PXA988",
411 parse_ro_product_board("PXA988"));
412 }
413
TEST(RO_PRODUCT_BOARD,nvidia)414 TEST(RO_PRODUCT_BOARD, nvidia) {
415 EXPECT_EQ("Nvidia Tegra SL460N",
416 parse_ro_product_board("g2mv"));
417 EXPECT_EQ("Nvidia Tegra T132",
418 parse_ro_product_board("flounder"));
419 EXPECT_EQ("Nvidia Tegra T210",
420 parse_ro_product_board("dragon"));
421 EXPECT_EQ("Nvidia Tegra T30L",
422 parse_ro_product_board("grouper"));
423 }
424
TEST(RO_PRODUCT_BOARD,renesas)425 TEST(RO_PRODUCT_BOARD, renesas) {
426 EXPECT_EQ("Renesas MP5232",
427 parse_ro_product_board("mp523x"));
428 }
429
TEST(RO_PRODUCT_BOARD,rockchip)430 TEST(RO_PRODUCT_BOARD, rockchip) {
431 EXPECT_EQ("Rockchip RK3066",
432 parse_ro_product_board("T7H"));
433 EXPECT_EQ("Rockchip RK3168",
434 parse_ro_product_board("hws7701u"));
435 EXPECT_EQ("Rockchip RK3188",
436 parse_ro_product_board("K00F"));
437 }
438 #endif
439
TEST(RO_PRODUCT_BOARD,spreadtrum)440 TEST(RO_PRODUCT_BOARD, spreadtrum) {
441 EXPECT_EQ("Spreadtrum SC6815AS",
442 parse_ro_product_board("SC6815AS"));
443 EXPECT_EQ("Spreadtrum SC7715",
444 parse_ro_product_board("SC7715"));
445 EXPECT_EQ("Spreadtrum SC7715A",
446 parse_ro_product_board("SC7715A"));
447 EXPECT_EQ("Spreadtrum SC7715T",
448 parse_ro_product_board("SC7715T"));
449 EXPECT_EQ("Spreadtrum SC7727S",
450 parse_ro_product_board("SC7727S"));
451 EXPECT_EQ("Spreadtrum SC7727S",
452 parse_ro_product_board("sc7727s"));
453 EXPECT_EQ("Spreadtrum SC7727SE",
454 parse_ro_product_board("SC7727SE"));
455 EXPECT_EQ("Spreadtrum SC7730S",
456 parse_ro_product_board("sc7730s"));
457 EXPECT_EQ("Spreadtrum SC7730SE",
458 parse_ro_product_board("SC7730SE"));
459 EXPECT_EQ("Spreadtrum SC7730SW",
460 parse_ro_product_board("SC7730SW"));
461 EXPECT_EQ("Spreadtrum SC7731",
462 parse_ro_product_board("SC7731"));
463 EXPECT_EQ("Spreadtrum SC7731C",
464 parse_ro_product_board("SC7731C"));
465 EXPECT_EQ("Spreadtrum SC7731G",
466 parse_ro_product_board("SC7731G"));
467 EXPECT_EQ("Spreadtrum SC7735S",
468 parse_ro_product_board("sc7735s"));
469 EXPECT_EQ("Spreadtrum SC9830A",
470 parse_ro_product_board("SC9830A"));
471 EXPECT_EQ("Spreadtrum SC9830I",
472 parse_ro_product_board("SC9830I"));
473 }
474
475 #if CPUINFO_ARCH_ARM
TEST(RO_PRODUCT_BOARD,texas_instruments)476 TEST(RO_PRODUCT_BOARD, texas_instruments) {
477 EXPECT_EQ("Texas Instruments OMAP4460",
478 parse_ro_product_board("tuna"));
479 }
480 #endif /* CPUINFO_ARCH_ARM */
481