工具与软件:
尊敬的专家:
我的 SDK 使用: Linux-AM62X — 适用于的 PROCESSOR-SDK-LINUX
我的目的:在器件加电时尽快控制特定的 GPIO。
AM62x 引导文件序列为 tiboo3.bin (R 内核 SPL) --> tispl.bin (A 内核 SPL)--> u-boot.img。
我可以 在 u-boot.img 下控制 MCU_GPIO0、GPIO0或 GPIO1、但在 tispl.bin 下无法进行控制。
[方法]我在器件树 k3-am625-sk.dts 中针对 u-boot.img 的 GPIO 控件下面添加了
&MCU_pmx0{
mcugpio0_pins_default:mcugpio0-default-pins{
PINCTL-SINGLE、PINS =<
AM62X_MCU_IOPAD (0x0048、PIN_OUTPUT、7)/*(D10) MCU_I2C0_SDA.MCU_GPIO0_18 */
>;
};
};
&MCU_GPIO0{
pinctrl-names ="默认值";
pinctrl-0 =<&mcugpio0_pins_default>;
状态="正常";
};
并在 board/ti/am62x/evm.c 函数 int board_init (void)中控制 GPIO。 它的工作原理是这样。
对于修改后的 tispl.bin、我将函数 spl_board_init ()中的相同控制代码放入相同的文件 evm.c
还修改器件树 k3-am625-r5-sk.dts。
我可以看到函数日志、它表示编译成功、但在芯片范围监控下 GPIO 控制不起作用。
似乎 GPIO 控制器在加载 u-boot.img 后上电了吗?
你能给我任何实现 目的的建议吗? 非常感谢!
此致、
Louis Chuang