ROCKCHIP U-BOOT下操作GPIO

背景:

	在进入 loader 模式的时候需要将一个 GPIO 拉高

代码修改

--- a/arch/arm/mach-rockchip/boot_rkimg.c
+++ b/arch/arm/mach-rockchip/boot_rkimg.c
@@ -33,6 +33,7 @@
 #include <u-boot/sha1.h>
 #include <u-boot/sha256.h>
 #include <linux/usb/phy-rockchip-usb2.h>
+#include <asm-generic/gpio.h>

 DECLARE_GLOBAL_DATA_PTR;

@@ -294,10 +295,21 @@ __weak int rockchip_dnl_key_pressed(void)
     return 0;
 }

+#define TYPEC_PWRIN_EN      110//GPIO3_B6 (32*3)+(1*8+6)
+
+static void prepare_download_mode(void)
+{
+    gpio_request(TYPEC_PWRIN_EN,"TypeC_pwrin_en");
+    gpio_direction_output(TYPEC_PWRIN_EN, 1);
+    printf("TYPEC_PWRIN_EN:%d\n", gpio_get_value(TYPEC_PWRIN_EN));
+    return;
+}
+
 void setup_download_mode(void)
 {
     int vbus = 1; /* Assumed 1 in case of no rockusb */

+    prepare_download_mode();
     boot_devtype_init();

版权声明:本文为YuZhuQue原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。