接下来还有一个比较重要的地方需要修改,因为DM6467的串口是支持多种模式的,但16550的驱动是默认设备是工作在UART模式的,它没有去配置设备串口的工作模式,所以我们需要去配置一下串口的工作模式。配置DM6467的需要修改寄存器去MDR1。只部分的代码在UBOOT的driver目录下的ns16550.c文件中。 修改如下: 1voidNS16550_in...
1>首先调用eserial2_init();函数 2>调用_serial_putc(0x01,0x03); //第一个参数是要发送的数据,第二个参数是串口号 现在的情况是发送两个字节以后在ns16550.c中会死在下面的函数中 void NS16550_putc (NS16550_t com_port, char c) { while ((serial_in(&com_port->lsr) & UART_LSR_THRE) ==...
initr_malloc_bootparams,#endifINIT_FUNC_WATCHDOG_RESETinitr_secondary_cpu,#ifdefined(CONFIG_ID_EEPROM) || defined(CONFIG_SYS_I2C_MAC_OFFSET)mac_read_from_eeprom,#endifINIT_FUNC_WATCHDOG_RESET#ifdefined(CONFIG_PCI) && !defined(CONFIG_SYS_EARLY_PCI_INIT)/** Do pci configuration*/initr_pci...
1. UBL 代码(这部分代码在刚上电的时候,初始化CPU和拷贝UBOOT到DDR,打印信息只有很少,所以不做修改)。2. UBOOT代码。3. linux内核驱动。 2.1 修改UBOOT代码 因为DM6467的串口是符合TL16C550标准的,所以驱动也是使用16550的驱动,默认情况下,我们只需要提供需要配置的串口的基地址和中断...
(1)通过U_BOOT_DRVINFO宏来进行定义或者直接定义struct driver_info结构体(2)U_BOOT_DRVINFO宏以ns16550_serial为例 1.U_BOOT_DRVINFO(devkit8000_uart) = { 2. "ns16550_serial", 3. &devkit8000_serial 4.}; 1. 2. 3. 4.U_BOOT_DRVINFO实现如下: 和上述的U_BOOT_DRIVER类似, ...
); ns16550_serial_initialize(); pl01x_serial_initialize(); pxa_serial_initialize(); sh_serial_initialize(); serial_assign(default_serial_console()->name); } 第12~19行,这些函数并没有初始化实际的硬件,他们单纯的向u-boot注册一下struct serialdevice类型的串口设备。 第...
NS16550 Configuration (定义串口的时钟等等) / #define CONFIG_SERIAL_MULTI 1 #define CONFIG_SYS_NS16550 #define CONFIG_SYS_NS16550_SERIAL #define CONFIG_SYS_NS16550_REG_SIZE (-4) #define CONFIG_SYS_NS16550_CLK (48000000) #define CONFIG_SYS_NS16550_COM1 0x48020000 /Base EVM has UART0 */...
NS16550 Configuration (定义串口的时钟等等) / #define CONFIG_SERIAL_MULTI 1 #define CONFIG_SYS_NS16550 #define CONFIG_SYS_NS16550_SERIAL #define CONFIG_SYS_NS16550_REG_SIZE (-4) #define CONFIG_SYS_NS16550_CLK (48000000) #define CONFIG_SYS_NS16550_COM1 0x48020000 /Base EVM has UART0 */...
我属于嵌入式方面的小白,现在使用nanopi-m4 2GB 开发板,通过uboot引导启动linux,并使用NFS加载busybox构建的根文件系统。搭建的NFS服务使用其它PC平台或uboot中的nfs命令都可正常访问,uboot、linux、busybox...
ns16550 (ns16550串行驱动程序) mainbus (通用根 Nexus 驱动程序) 探测和连接设备 --- AFI_DEBUG_20200908 vxbLibInit()启动 探头主总线 连接主总线:0 探测器 fdtBus 连接fdtBus:0 探头SoC 连接simpleBus:0 探头参考系统 连接KeyStone-fix-clock: