Я новичок в imx6 и yocto bsp, и при изучении я обнаружил, что ЖК-консоль отключается ровно через 12 минут. В исходниках в yocto вроде нет упоминания об этом, если нет функций, отключающих дисплей, то как он мог отключаться?
Я немного покопался и обнаружил, что yocto предоставляет режим ожидания, предназначенный для экономии энергии. I функция, которую я нашел в cpuidle-imx6sl.c, как показано ниже, но нет упоминания об отключении ЖК-дисплея
static int imx6sl_enter_wait (struct cpuidle_device *dev, struct cpuidle_driver *drv, int index) { int mode = get_bus_freq_mode();
imx6_set_lpm(WAIT_UNCLOCKED);
if ((mode == BUS_FREQ_AUDIO) || (mode == BUS_FREQ_ULTRA_LOW)) {
/*
* bit 2 used for low power mode;
* bit 1 used for the ldo2p5_dummmy enable
*/
if (psci_ops.cpu_suspend) {
psci_ops.cpu_suspend((MX6SL_POWERDWN_IDLE_PARAM | ((mode == BUS_FREQ_AUDIO ? 1 : 0) << 2) |
(ldo2p5_dummy_enable ? 1 : 0) << 1), __pa(cpu_resume));
} else {
pwr_ctrl_off();
imx6sl_wfi_in_iram_fn(wfi_iram_base, (mode == BUS_FREQ_AUDIO) ? 1 : 0,
ldo2p5_dummy_enable);
}
} else {
/*
* Software workaround for ERR005311, see function
* description for details.
*/
imx6sl_set_wait_clk(true);
cpu_do_idle();
imx6sl_set_wait_clk(false);
}
imx6_set_lpm(WAIT_CLOCKED);
return index;
}
Я ожидаю найти в исходном коде ядра функцию, которая отключает ЖК-дисплей, а также имеет таймер, который измеряет ровно 10 минут для отключения ЖК-дисплея. где я могу найти это?