GPIO hog (CONFIG_GPIO_HOG) -------- All the GPIO hog are initialized in gpio_hog_probe_all() function called in board_r.c just before board_late_init() but you can also acces directly to the gpio with gpio_hog_lookup_name(). Example, for the device tree: tca6416@20 { compatible = "ti,tca6416"; reg = <0x20>; #gpio-cells = <2>; gpio-controller; env_reset { gpio-hog; input; gpios = <6 GPIO_ACTIVE_LOW>; }; boot_rescue { gpio-hog; input; line-name = "foo-bar-gpio"; gpios = <7 GPIO_ACTIVE_LOW>; }; }; You can than access the gpio in your board code with: struct gpio_desc *desc; int ret; ret = gpio_hog_lookup_name("boot_rescue", &desc); if (ret) return; if (dm_gpio_get_value(desc) == 1) printf("\nBooting into Rescue System\n"); else if (dm_gpio_get_value(desc) == 0) printf("\nBoot normal\n");