2 #include "camsys_soc_priv.h"
5 static camsys_soc_priv_t *camsys_soc_p;
7 extern int camsys_rk3288_cfg(
8 camsys_dev_t *camsys_dev, camsys_soc_cfg_t cfg_cmd, void *cfg_para);
9 extern int camsys_rk3368_cfg(
10 camsys_dev_t *camsys_dev, camsys_soc_cfg_t cfg_cmd, void *cfg_para);
11 extern int camsys_rk3366_cfg(
12 camsys_dev_t *camsys_dev, camsys_soc_cfg_t cfg_cmd, void *cfg_para);
13 extern int camsys_rk3399_cfg(
14 camsys_dev_t *camsys_dev, camsys_soc_cfg_t cfg_cmd, void *cfg_para);
15 camsys_soc_priv_t *camsys_soc_get(void)
17 if (camsys_soc_p != NULL) {
24 int camsys_soc_init(unsigned int chip_type)
26 camsys_soc_p = kzalloc(sizeof(camsys_soc_priv_t), GFP_KERNEL);
27 if (camsys_soc_p == NULL) {
28 camsys_err("malloc camsys_soc_priv_t failed!");
32 if (chip_type == 3368) {
33 strlcpy(camsys_soc_p->name, "camsys_rk3368", 31);
34 camsys_soc_p->soc_cfg = camsys_rk3368_cfg;
35 camsys_trace(2, "camsys_soc_init exit!");
36 } else if (chip_type == 3288) {
37 if (cpu_is_rk3288()) {
38 strlcpy(camsys_soc_p->name, "camsys_rk3288", 31);
39 camsys_soc_p->soc_cfg = camsys_rk3288_cfg;
41 camsys_err("camsys isn't support soc!");
44 } else if (chip_type == 3366) {
45 strlcpy(camsys_soc_p->name, "camsys_rk3366", 31);
46 camsys_soc_p->soc_cfg = camsys_rk3366_cfg;
47 camsys_trace(2, "camsys_soc_init exit!");
48 } else if (chip_type == 3399) {
49 strlcpy(camsys_soc_p->name, "camsys_rk3399", 31);
50 camsys_soc_p->soc_cfg = camsys_rk3399_cfg;
51 camsys_trace(2, "camsys_soc_init exit!");
56 if (camsys_soc_p != NULL) {
63 int camsys_soc_deinit(void)
65 if (camsys_soc_p != NULL) {