您尚未登录。

楼主 #1 2018-09-10 17:23:32

john78
会员
注册时间: 2018-07-19
已发帖子: 222
积分: 160

荔枝派zero V3S u-boot调试信息从UART1(PE21/PE22)输出没有成功,还遗留什么没有修改? (修改成功,方案在8楼)

sun8i-v3s.dtsi 

uart0_pins_a: uart0@0 {
                pins = "PB8", "PB9";
                function = "uart0";
            };

            uart1_pins_a: uart1@0 {
                pins = "PE21", "PE22";
                function = "uart1";
                bias-pull-up; 
            };

            uart2_pins_a: uart2@0 {
                pins = "PB0", "PB1";
                function = "uart2";
                bias-pull-up; 
            };

sun8i-v3s-licheepi-zero.dts

aliases {
		serial0 = &uart0;
		serial1 = &uart1;
		serial2 = &uart2;
		spi0 = &spi0;
	};

	chosen {
		stdout-path = "serial1:115200n8";
	};

&uart0 {
    pinctrl-0 = <&uart0_pins_a>;
    pinctrl-names = "default";
    status = "okay";
};

&uart1 {
    pinctrl-0 = <&uart1_pins_a>;
    pinctrl-names = "default";
    status = "okay";
};

&uart2 {
    pinctrl-0 = <&uart2_pins_a>;
    pinctrl-names = "default";
    status = "okay";
};

#define CONFIG_BOOTARGS      "console=ttyS1,115200 earlyprintk panic=5 rootwait " \
                             "mtdparts=spi32766.0:1M(uboot)ro,64k(dtb)ro,4M(kernel)ro,-(rootfs) root=31:03 rw rootfstype=jffs2"






以下由 @哇酷小二 2021-02-10 添加
------------------------------------
相关链接:
请问 荔枝派zero V3s主线u-boot 如何修改默认的串口为uart2(PB0/PB1) ?
http://whycan.com/t_1417.html

最近编辑记录 john78 (2018-09-10 17:23:52)

离线

#2 2018-09-10 17:38:06

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,342
积分: 9202

Re: 荔枝派zero V3S u-boot调试信息从UART1(PE21/PE22)输出没有成功,还遗留什么没有修改? (修改成功,方案在8楼)

sun8i-v3s.dtsi
sun8i-v3s-licheepi-zero.dts

这两个文件是在 u-boot 的吗?





离线

#3 2018-09-10 17:43:11

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,342
积分: 9202

Re: 荔枝派zero V3S u-boot调试信息从UART1(PE21/PE22)输出没有成功,还遗留什么没有修改? (修改成功,方案在8楼)

include/configs/sunxi-common.h

#define CONFIG_CONS_INDEX              1       /* UART0 */

改成:

#define CONFIG_CONS_INDEX              2       /* UART1 */





离线

楼主 #4 2018-09-10 18:04:34

john78
会员
注册时间: 2018-07-19
已发帖子: 222
积分: 160

Re: 荔枝派zero V3S u-boot调试信息从UART1(PE21/PE22)输出没有成功,还遗留什么没有修改? (修改成功,方案在8楼)

2L是的,3L没改

离线

#5 2018-09-10 18:08:44

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,342
积分: 9202

Re: 荔枝派zero V3S u-boot调试信息从UART1(PE21/PE22)输出没有成功,还遗留什么没有修改? (修改成功,方案在8楼)

john78 说:

2L是的,3L没改

那先试一试





离线

楼主 #6 2018-09-12 08:55:41

john78
会员
注册时间: 2018-07-19
已发帖子: 222
积分: 160

Re: 荔枝派zero V3S u-boot调试信息从UART1(PE21/PE22)输出没有成功,还遗留什么没有修改? (修改成功,方案在8楼)

include/configs/sunxi-common.h

#define CONFIG_CONS_INDEX              1       /* UART0 */

改成:

#define CONFIG_CONS_INDEX              2       /* UART1 */

晕哥,坑还不小。不过改了这,编译就与提示了,gpio_init(void)中没有这个初始化。修改下,就可以了

离线

#7 2018-09-12 09:05:38

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,342
积分: 9202

Re: 荔枝派zero V3S u-boot调试信息从UART1(PE21/PE22)输出没有成功,还遗留什么没有修改? (修改成功,方案在8楼)

john78 说:

include/configs/sunxi-common.h

#define CONFIG_CONS_INDEX              1       /* UART0 */

改成:

#define CONFIG_CONS_INDEX              2       /* UART1 */

晕哥,坑还不小。不过改了这,编译就与提示了,gpio_init(void)中没有这个初始化。修改下,就可以了

如何修改呢?可以分享一下吗?
现在可以输出到 UART1 了吗?





离线

楼主 #8 2018-09-12 09:22:05

john78
会员
注册时间: 2018-07-19
已发帖子: 222
积分: 160

Re: 荔枝派zero V3S u-boot调试信息从UART1(PE21/PE22)输出没有成功,还遗留什么没有修改? (修改成功,方案在8楼)

include/configs/sunxi-common.h

#define CONFIG_CONS_INDEX              2       /* UART1 */

下面增加

#elif CONFIG_CONS_INDEX == 2 && defined(CONFIG_MACH_SUN8I)
#define OF_STDOUT_PATH		"/soc@01c00000/serial@01c28400:115200"

//还有增加这个引脚的初始化驱动
u-boot/arch/arm/include/asm/arch-sunxi/gpio.h

    增加

#define SUN8I_V3S_GPE_UART1	4
u-boot/arch/arm/arch-sunxi/board.c
static int gpio_init(void)
{

    增加

	#elif CONFIG_CONS_INDEX == 2 && defined(CONFIG_MACH_SUN8I_V3S)
		sunxi_gpio_set_cfgpin(SUNXI_GPE(21), SUN8I_V3S_GPE_UART1);
		sunxi_gpio_set_cfgpin(SUNXI_GPE(22), SUN8I_V3S_GPE_UART1);
		sunxi_gpio_set_pull(SUNXI_GPE(22), SUNXI_GPIO_PULL_UP);
}

离线

#9 2018-09-12 09:23:27

晕哥
管理员
注册时间: 2017-09-06
已发帖子: 9,342
积分: 9202

Re: 荔枝派zero V3S u-boot调试信息从UART1(PE21/PE22)输出没有成功,还遗留什么没有修改? (修改成功,方案在8楼)

john78 说:

include/configs/sunxi-common.h
#define CONFIG_CONS_INDEX              2       /* UART1 */
下面增加
#elif CONFIG_CONS_INDEX == 2 && defined(CONFIG_MACH_SUN8I)
#define OF_STDOUT_PATH        "/soc@01c00000/serial@01c28400:115200"
//还有增加这个引脚的初始化驱动
u-boot/arch/arm/include/asm/arch-sunxi/gpio.h

    增加#define SUN8I_V3S_GPE_UART1    4
u-boot/arch/arm/arch-sunxi/board.c
static int gpio_init(void)
{
    增加
    #elif CONFIG_CONS_INDEX == 2 && defined(CONFIG_MACH_SUN8I_V3S)
        sunxi_gpio_set_cfgpin(SUNXI_GPE(21), SUN8I_V3S_GPE_UART1);
        sunxi_gpio_set_cfgpin(SUNXI_GPE(22), SUN8I_V3S_GPE_UART1);
        sunxi_gpio_set_pull(SUNXI_GPE(22), SUNXI_GPIO_PULL_UP);
}

感谢分享





离线

#10 2019-08-31 20:09:50

yuliang_8
会员
所在地: 番禺 广州 中国
注册时间: 2019-08-28
已发帖子: 20
积分: 20

Re: 荔枝派zero V3S u-boot调试信息从UART1(PE21/PE22)输出没有成功,还遗留什么没有修改? (修改成功,方案在8楼)

卧槽,难怪啊。我今天进了Lichee的BSP系统,想用一下UART1, 才发现有ttyS1,  但是初始化失败, -19错误, 无法使用。
原来也是一个坑啊。

离线

#11 2020-10-13 13:34:56

阿黄
会员
注册时间: 2018-10-03
已发帖子: 299
积分: 134

Re: 荔枝派zero V3S u-boot调试信息从UART1(PE21/PE22)输出没有成功,还遗留什么没有修改? (修改成功,方案在8楼)

john78 说:

include/configs/sunxi-common.h
#define CONFIG_CONS_INDEX              2       /* UART1 */
下面增加
#elif CONFIG_CONS_INDEX == 2 && defined(CONFIG_MACH_SUN8I)
#define OF_STDOUT_PATH        "/soc@01c00000/serial@01c28400:115200"
//还有增加这个引脚的初始化驱动
u-boot/arch/arm/include/asm/arch-sunxi/gpio.h

    增加#define SUN8I_V3S_GPE_UART1    4
u-boot/arch/arm/arch-sunxi/board.c
static int gpio_init(void)
{
    增加
    #elif CONFIG_CONS_INDEX == 2 && defined(CONFIG_MACH_SUN8I_V3S)
        sunxi_gpio_set_cfgpin(SUNXI_GPE(21), SUN8I_V3S_GPE_UART1);
        sunxi_gpio_set_cfgpin(SUNXI_GPE(22), SUN8I_V3S_GPE_UART1);
        sunxi_gpio_set_pull(SUNXI_GPE(22), SUNXI_GPIO_PULL_UP);
}


关注 V3S uboot 使用uart1需要修改的地方.
目前官方uboot 2020.7 还没有修正。
另外 u-boot/arch/arm/arch-sunxi/board.c 正确路径应该是u-boot/arch/arm/march-sunxi/board.c

离线

页脚

工信部备案:粤ICP备20025096号 Powered by FluxBB

感谢为中文互联网持续输出优质内容的各位老铁们。 QQ: 516333132, 微信(wechat): whycan_cn (哇酷网/挖坑网/填坑网) service@whycan.cn