hc
2023-02-17 557c24d082b6ecb9bfe5407b77ae43fa7650a5dc
kernel/drivers/misc/nkio/nk_io_core.c
....@@ -61,11 +61,8 @@
6161 {
6262 struct device_node *node = pdev->dev.of_node;
6363 struct nk_io_pdata *pdata;
64
- int gpio0, gpio1, gpio2, gpio3, reset_pin, ch342_reset;
6564 int ret;
66
- int lvds_index;
67
- int i=0;
68
- static int lvds_gpio[4] ;
65
+
6966
7067 enum of_gpio_flags flags;
7168
....@@ -97,7 +94,7 @@
9794 goto err;
9895 }
9996 }
100
-
97
+#if 0
10198 //vcc3_io_en_gpio
10299 ret = of_get_named_gpio_flags(node, "vcc3_io_en_gpio", 0, &flags);
103100 if (ret < 0) {
....@@ -117,7 +114,7 @@
117114 goto err;
118115 }
119116 }
120
-
117
+#endif
121118 //vcc_12v_io
122119 ret = of_get_named_gpio_flags(node, "vcc_12v_io", 0, &flags);
123120 if (ret < 0) {
....@@ -287,7 +284,24 @@
287284 printk("%s() gpio_direction_output hp_en_gpio set ERROR\n", __FUNCTION__);
288285 }
289286 }
290
-
287
+#if 0
288
+ //pcie_power_en_gpio
289
+ ret = of_get_named_gpio_flags(node, "pcie_power_en_gpio", 0, &flags);
290
+ if (ret < 0) {
291
+ printk("%s() Can not read property pcie_power_en_gpio\n", __FUNCTION__);
292
+ } else {
293
+ pdata->pcie_power_en_gpio = ret;
294
+
295
+ ret = devm_gpio_request(&pdev->dev, pdata->pcie_power_en_gpio, "pcie_power_en_gpio");
296
+ if(ret < 0){
297
+ printk("%s() devm_gpio_request pcie_power_en_gpio request ERROR\n", __FUNCTION__);
298
+ }
299
+ ret = gpio_direction_output(pdata->pcie_power_en_gpio,1);
300
+ if(ret < 0){
301
+ printk("%s() gpio_direction_output pcie_power_en_gpio set ERROR\n", __FUNCTION__);
302
+ }
303
+ }
304
+#endif
291305 //wifi_power_en_gpio
292306 ret = of_get_named_gpio_flags(node, "wifi_power_en_gpio", 0, &flags);
293307 if (ret < 0) {
....@@ -377,24 +391,42 @@
377391 }
378392 }
379393
380
- //ch342_enable-gpio;
381
- ret = of_get_named_gpio_flags(node, "ch342_power", 0, &flags);
394
+ //lcd_bk_en_gpio;
395
+ ret = of_get_named_gpio_flags(node, "lcd_bk_en_gpio", 0, &flags);
382396 if (ret < 0) {
383
- printk("%s() Can not read property ch342_gpio\n", __FUNCTION__);
397
+ printk("%s() Can not read property lcd_bk_en_gpio\n", __FUNCTION__);
384398 } else {
385
- pdata->ch342_power = ret;
399
+ pdata->lcd_bk_en_gpio = ret;
386400
387
- ret = devm_gpio_request(&pdev->dev, pdata->ch342_power, "ch342_power");
401
+ ret = devm_gpio_request(&pdev->dev, pdata->lcd_bk_en_gpio, "lcd_bk_en_gpio");
388402 if(ret < 0){
389
- printk("%s() devm_gpio_request ch342_power request ERROR\n", __FUNCTION__);
403
+ printk("%s() devm_gpio_request lcd_bk_en_gpio request ERROR\n", __FUNCTION__);
390404 }
391405
392
- ret = gpio_direction_output(pdata->ch342_power,1);
406
+ ret = gpio_direction_output(pdata->lcd_bk_en_gpio,1);
393407 if(ret < 0){
394
- printk("%s() gpio_direction_input ch342_power set ERROR\n", __FUNCTION__);
408
+ printk("%s() gpio_direction_output lcd_bk_en_gpio set ERROR\n", __FUNCTION__);
395409 }
396410 }
397
-*/
411
+
412
+ //lcd_pwblk_gpio;
413
+ ret = of_get_named_gpio_flags(node, "lcd_pwblk_gpio", 0, &flags);
414
+ if (ret < 0) {
415
+ printk("%s() Can not read property lcd_pwblk_gpio\n", __FUNCTION__);
416
+ } else {
417
+ pdata->lcd_pwblk_gpio = ret;
418
+
419
+ ret = devm_gpio_request(&pdev->dev, pdata->lcd_pwblk_gpio, "lcd_pwblk_gpio");
420
+ if(ret < 0){
421
+ printk("%s() devm_gpio_request lcd_pwblk_gpio request ERROR\n", __FUNCTION__);
422
+ }
423
+
424
+ ret = gpio_direction_output(pdata->lcd_pwblk_gpio,1);
425
+ if(ret < 0){
426
+ printk("%s() gpio_direction_output lcd_pwblk_gpio set ERROR\n", __FUNCTION__);
427
+ }
428
+ }
429
+
398430
399431 //edp_set_pixel-s
400432 ret = of_get_named_gpio_flags(node, "edp_reset", 0, &flags);
....@@ -498,6 +530,12 @@
498530 gpio_direction_output(gpio2, lvds_gpio[2]);
499531 gpio_direction_output(gpio3, lvds_gpio[3]);
500532
533
+
534
+ gpio_direction_output(reset_pin, 0);
535
+ usleep_range(80000, 100000);
536
+ gpio_direction_output(reset_pin, 1);
537
+ usleep_range(80000, 100000);
538
+*/
501539 printk(" #######nk_io_control_probe end####### \n");
502540 return 0;
503541
....@@ -542,38 +580,6 @@
542580
543581 static int nk_io_control_resume(struct platform_device *pdev)
544582 {
545
- int ret,reset_pin;
546
- printk("nk_io resume !!!!\n");
547
- ret = gpio_get_value(120);
548
-
549
-#if 0
550
- gpio_set_value(8,1);
551
- ret = gpio_get_value(8);
552
- printk("vcc12v gpio value : %d\n",ret);
553
-#endif
554
-#if 0
555
- gpio_set_value(15,1);
556
- ret = gpio_get_value(15);
557
- printk("edp_en gpio value : %d\n",ret);
558
- gpio_set_value(21,1);
559
- ret = gpio_get_value(21);
560
- printk("hub_host3_5v_gpio value : %d\n",ret);
561
-#endif
562
-#if 0
563
- usleep_range(80000, 100000);
564
- gpio_set_value(120,0);
565
-// gpio_direction_output(120, 0);
566
- usleep_range(80000, 100000);
567
- ret = gpio_get_value(120);
568
- printk("edp_reset gpio value : %d\n",ret);
569
-// gpio_direction_output(120, 1);
570
- gpio_set_value(120,1);
571
- usleep_range(80000, 100000);
572
- ret = gpio_get_value(120);
573
- printk("edp_reset gpio value : %d\n",ret);
574
-#endif
575
- //enable = 1;
576
- //LED_SET(11);
577583 return 0;
578584 }
579585