OpenWRT (RT5350) 使能兩個串列埠

2022-08-05 18:36:15 字數 1114 閱讀 4110

openwrt(rt5350) 預設使能一個串列埠(uartlite) ,當做console口了,另外一個串列埠(uartf)與gpio複用。

在查詢資料的過程中,發現在新的核心中使用到了裝置樹(device tree)的概念,使用dts檔案描述soc的所有資源。

1、~/openwrt/build_dir/target-mispel_24kec+dsp_musl-1.1.10/linux-ramips_rt305x/linux-3.10.49/arch/mips/ralink/rt305x.c

2、~/openwrt/build_dir/target-mispel_24kec+dsp_musl-1.1.10/linux-ramips_rt305x/linux-3.10.49/drivers/pinctrl/pinctrl-rt2880.c

3、~/openwrt/target/linux/ramips/dts/rt5350.dtsi

4、~/openwrt/target/linux/ramips/dts/mpra2.dts

兩個c檔案主要是針對硬體平臺相關介面暫存器定義,與dts檔案密切相關,新增除錯資訊做了跟蹤,並不需要修改。

兩個dts檔案主要是對介面的配置,如系統啟動輸出串列埠設定,gpio口,spi,i2c介面設定等;

下面開始配置串列埠,使能兩個串列埠:(關鍵的修改在兩個dts檔案)

1、mpra2.dts中將state_default從以下內容:

gpio ;

修改成:

gpio ;

uartf ;

2、mpra2.dts中註釋掉該檔案最後gpio_export的所有內容。

3、rt5350.dtsi需要修改bootargs以使uartlite仍然作為console:

(開啟uartf之前,uartlite為ttys0作為console的,開啟uartf之後,uartf成為ttys0,uartlite變為ttys1)

chosen ;

4、rt5350.dtsi中釋掉[email protected]中的status = “disabled”;

// status = "disabled";

至此,兩個串列埠使能完畢!