天嵌 ARM开发社区

 找回密码
 注册
查看: 12869|回复: 10

如何设置串口1作为linux调试信息输出端口呢

[复制链接]
it1988 发表于 2012-11-20 21:51:46 | 显示全部楼层 |阅读模式
本帖最后由 it1988 于 2012-11-21 17:23 编辑

原贴:
如何改用ttyUSB0输入调试信息?

TQ2440开发板上,只有一个串口,有点不够用。于是,用USB转串口插到TQ2440上,增加了一个ttyUSB0串口使用。
但是无论是uboot或linux,默认都是使用ttySAC0用于输出调试信息。

问题是:如何改用ttyUSB0,作为默认的调试或者启动信息输出呢?

下面是我的操作过程:
我进了uboot -> (0) Set the boot parameters -> (3) Set the parameters ->
然后,
(Name: )-> bootargs
(Value: )-> noinitrd root=/dev/mtdblock2 init=/linuxrc console=ttyUSB0
注:默认信息为:bootargs=noinitrd root=/dev/mtdblock2 init=/linuxrc console=ttySAC0

最后,按S进行保存,但是重启系统后,bootarg参数似乎没有保存到,调试信息还是从ttySAC0默认的串口输出。

请问,如何改用ttyUSB0,作为默认的调试或者启动信息输出呢?谢谢!

----
后续:
既然没法将usb转串口设置成linux调试信息输出端口,那么如何修改内核,才能更改串口1作为linux调试信息输出端口呢?


embedsky_lhh 发表于 2012-11-21 09:23:31 | 显示全部楼层
uboot 的调试信息改USB转串口很难,因为 你不可能吧那个USB转串口驱动移植到uboot中,你把console=改 为你的USB转串口设备名试试
 楼主| it1988 发表于 2012-11-21 09:41:51 | 显示全部楼层
embedsky_lhh 发表于 2012-11-21 09:23
uboot 的调试信息改USB转串口很难,因为 你不可能吧那个USB转串口驱动移植到uboot中,你把console=改 为你的 ...

UBOOT用USB转串口不行,那就算了。
但是LINUX呢,怎么设置将默认的ttySAC0输出调试信息,改为ttyUSB0输出调试信息呢?
版主看一下我的文章,我已经将console改为ttyUSB0,但为什么保存后重启,调试信息还是ttySAC0默认的串口输出LINUX的启动信息呢?
如何将linux调试信息输出改为ttyUSB0?谢谢。
embedsky_lhh 发表于 2012-11-21 10:30:17 | 显示全部楼层
你将你的内核启动信息贴出来看下
 楼主| it1988 发表于 2012-11-21 10:48:54 | 显示全部楼层
本帖最后由 it1988 于 2012-11-21 11:11 编辑
embedsky_lhh 发表于 2012-11-21 10:30
你将你的内核启动信息贴出来看下

...
Linux version 2.6.30.4-EmbedSky (root@Fedora17) (gcc version 4.3.3 (Sourcery G++ Lite 2009q1-176) )2
CPU: ARM920T [41129200] revision 0 (ARMv4T), cr=c0007177
CPU: VIVT data cache, VIVT instruction cache
Machine: TQ2440
ATAG_INITRD is deprecated; please update your bootloader.
Memory policy: ECC disabled, Data cache writeback
CPU S3C2440A (id 0x32440001)
S3C24XX Clocks, (c) 2004 Simtec Electronics
S3C244X: core 400.000 MHz, memory 100.000 MHz, peripheral 50.000 MHz
CLOCK: Slow mode (1.500 MHz), fast, MPLL on, UPLL on
Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 16256
Kernel command line: noinitrd root=/dev/mtdblock2 init=/linuxrc console=ttySAC0
NR_IRQS:85
irq: clearing pending ext status 00080000
irq: clearing subpending status 00000003
irq: clearing subpending status 00000002
PID hash table entries: 256 (order: 8, 1024 bytes)
Console: colour dummy device 80x30
console [ttySAC0] enabled
Dentry cache hash table entries: 8192 (order: 3, 32768 bytes)
Inode-cache hash table entries: 4096 (order: 2, 16384 bytes)
Memory: 64MB = 64MB total
Memory: 59896KB available (4340K code, 448K data, 188K init, 0K highmem)
SLUB: Genslabs=11, HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
Calibrating delay loop... 199.47 BogoMIPS (lpj=498688)
Mount-cache hash table entries: 512
CPU: Testing write buffer coherency: ok
net_namespace: 296 bytes
NET: Registered protocol family 16
S3C2440: Initialising architecture
S3C2440: IRQ Support
S3C24XX DMA Driver, (c) 2003-2004,2006 Simtec Electronics
DMA channel 0 at c4808000, irq 33
DMA channel 1 at c4808040, irq 34
DMA channel 2 at c4808080, irq 35
DMA channel 3 at c48080c0, irq 36
S3C244X: Clock Support, DVS off
bio: create slab <bio-0> at 0
SCSI subsystem initialized
usbcore: registered new interface driver usbfs
usbcore: registered new interface driver hub
usbcore: registered new device driver usb
s3c2440-i2c s3c2440-i2c: slave address 0x10
s3c2440-i2c s3c2440-i2c: bus frequency set to 97 KHz
s3c2440-i2c s3c2440-i2c: i2c-0: S3C I2C adapter
cfg80211: Calling CRDA to update world regulatory domain
NET: Registered protocol family 2
IP route cache hash table entries: 1024 (order: 0, 4096 bytes)
TCP established hash table entries: 2048 (order: 2, 16384 bytes)
TCP bind hash table entries: 2048 (order: 1, 8192 bytes)
TCP: Hash tables configured (established 2048 bind 2048)
TCP reno registered
NET: Registered protocol family 1
yaffs Nov  2 2012 09:26:58 Installing.
msgmni has been set to 117
alg: No test for stdrng (krng)
io scheduler noop registered (default)
Console: switching to colour frame buffer device 40x15
fb0: s3c2410fb frame buffer device
backlight initialized
GPIO-Control initialized
PWM-Test initialized
adc initialized
s3c2440-uart.0: tq2440_serial0 at MMIO 0x50000000 (irq = 70) is a S3C2440
s3c2440-uart.1: tq2440_serial1 at MMIO 0x50004000 (irq = 73) is a S3C2440
s3c2440-uart.2: tq2440_serial2 at MMIO 0x50008000 (irq = 76) is a S3C2440
loop: module loaded
Driver 'sd' needs updating - please use bus_type methods
dm9000 Ethernet Driver, V1.31
Now use the default MAC address: 10:23:45:67:89:ab
eth0 (dm9000): not using net_device_ops yet
eth0: dm9000e at c4814000,c4818004 IRQ 51 MAC: 10:23:45:67:89:ab (EmbedSky)
S3C24XX NAND Driver, (c) 2004 Simtec Electronics
s3c2440-nand s3c2440-nand: Tacls=2, 20ns Twrph0=3 30ns, Twrph1=2 20ns
NAND device: Manufacturer ID: 0xec, Chip ID: 0x76 (Samsung NAND 64MiB 3,3V 8-bit)
NAND_ECC_NONE selected by board driver. This is not recommended !!
Scanning device for bad blocks
Bad eraseblock 16 at 0x000000040000
Bad eraseblock 17 at 0x000000044000
Bad eraseblock 18 at 0x000000048000
Creating 3 MTD partitions on "NAND 64MiB 3,3V 8-bit":
0x000000000000-0x000000040000 : "EmbedSky_Board_uboot"
0x000000200000-0x000000500000 : "EmbedSky_Board_kernel"
0x000000500000-0x000004000000 : "EmbedSky_Board_yaffs2"
ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
s3c2410-ohci s3c2410-ohci: S3C24XX OHCI
s3c2410-ohci s3c2410-ohci: new USB bus registered, assigned bus number 1
s3c2410-ohci s3c2410-ohci: irq 42, io mem 0x49000000
usb usb1: New USB device found, idVendor=1d6b, idProduct=0001
usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
usb usb1: Product: S3C24XX OHCI
usb usb1: Manufacturer: Linux 2.6.30.4-EmbedSky ohci_hcd
usb usb1: SerialNumber: s3c24xx
usb usb1: configuration #1 chosen from 1 choice
hub 1-0:1.0: USB hub found
hub 1-0:1.0: 2 ports detected
Initializing USB Mass Storage driver...
usbcore: registered new interface driver usb-storage
USB Mass Storage support registered.
usbcore: registered new interface driver usbserial
usbserial: USB Serial Driver core
USB Serial support registered for pl2303
usbcore: registered new interface driver pl2303
pl2303: Prolific PL2303 USB to serial adaptor driver
s3c2410_udc: debugfs dir creation failed -19
s3c2440-usbgadget s3c2440-usbgadget: S3C2440: increasing FIFO to 128 bytes
mice: PS/2 mouse device common for all mice
TQ2440 TouchScreen successfully loaded
input: TQ2440 TouchScreen as /devices/virtual/input/input0
S3C24XX RTC, (c) 2004,2006 Simtec Electronics
s3c2410-rtc s3c2410-rtc: rtc disabled, re-enabling
s3c2410-rtc s3c2410-rtc: rtc core: registered s3c as rtc0
i2c /dev entries driver
Linux video capture interface: v2.00
cx231xx v4l2 driver loaded.
usbcore: registered new interface driver cx231xx
usbcore: registered new interface driver usbvision
USBVision USB Video Device Driver for Linux : 0.9.10
usbcore: registered new interface driver ov511
ov511: v1.64 for Linux 2.5: ov511 USB Camera Driver
SE401 usb camera driver version 0.24 registering
usbcore: registered new interface driver se401
usbcore: registered new interface driver stv680
stv680 [usb_stv680_init:1550]
STV(i): usb camera driver version v0.25 registering<6>stv680: v0.25:STV0680 USB Camera Driver
w9968cf: V4L driver for W996[87]CF JPEG USB Dual Mode Camera Chip 1:1.34-basic
usbcore: registered new interface driver w9968cf
usbcore: registered new interface driver zr364xx
zr364xx: Zoran 364xx
usbcore: registered new interface driver stkwebcam
sn9c102: V4L2 driver for SN9C1xx PC Camera Controllers v1:1.47pre49
usbcore: registered new interface driver sn9c102
et61x251: V4L2 driver for ET61X[12]51 PC Camera Controllers v1:1.09
usbcore: registered new interface driver et61x251
pwc: Philips webcam module version 10.0.13 loaded.
pwc: Supports Philips PCA645/646, PCVC675/680/690, PCVC720[40]/730/740/750 & PCVC830/840.
pwc: Also supports the Askey VC010, various Logitech Quickcams, Samsung MPC-C10 and MPC-C30,
pwc: the Creative WebCam 5 & Pro Ex, SOTEC Afina Eye and Visionite VCS-UC300 and VCS-UM100.
usbcore: registered new interface driver Philips webcam
zc0301: V4L2 driver for ZC0301[P] Image Processor and Control Chip v1:1.10
usbcore: registered new interface driver zc0301
gspca: main v2.5.0 registered
usbcore: registered new interface driver conex
conex: registered
usbcore: registered new interface driver etoms
etoms: registered
usbcore: registered new interface driver finepix
finepix: registered
usbcore: registered new interface driver mars
mars: registered
usbcore: registered new interface driver mr97310a
mr97310a: registered
usbcore: registered new interface driver ov519
ov519: registered
usbcore: registered new interface driver pac207
pac207: registered
usbcore: registered new interface driver pac7311
pac7311: registered
usbcore: registered new interface driver sonixb
sonixb: registered
usbcore: registered new interface driver sonixj
sonixj: registered
usbcore: registered new interface driver spca500
spca500: registered
usbcore: registered new interface driver spca501
spca501: registered
usbcore: registered new interface driver spca505
spca505: registered
usbcore: registered new interface driver spca506
spca506: registered
usbcore: registered new interface driver spca508
spca508: registered
usbcore: registered new interface driver spca561
spca561: registered
usbcore: registered new interface driver sq905
sq905: registered
usbcore: registered new interface driver sq905c
sq905c: registered
usbcore: registered new interface driver sunplus
sunplus: registered
usbcore: registered new interface driver stk014
stk014: registered
usb 1-1: new full speed USB device using s3c2410-ohci and address 2
usbcore: registered new interface driver t613
t613: registered
usbcore: registered new interface driver tv8532
tv8532: registered
usbcore: registered new interface driver vc032x
vc032x: registered
usbcore: registered new interface driver zc3xx
zc3xx: registered
usbcore: registered new interface driver ALi m5602
ALi m5602: registered
usbcore: registered new interface driver STV06xx
STV06xx: registered
usbcore: registered new interface driver ibmcam
usbcore: registered new interface driver ultracam
konicawc: v1.4:Konica Webcam driver
usbcore: registered new interface driver konicawc
usbcore: registered new interface driver vicam
quickcam_messenger: v0.01: Logitech Quickcam Messenger USB
usbcore: registered new interface driver QCM
usbcore: registered new interface driver s2255
usbcore: registered new interface driver uvcvideo
USB Video Class driver (v0.1.0)
S3C2410 Watchdog Timer, (c) 2004 Simtec Electronics
s3c2410-wdt s3c2410-wdt: starting watchdog timer
s3c2410-wdt s3c2410-wdt: watchdog active, reset abled, irq enabled
mapped channel 0 to 0
s3c2440-sdi s3c2440-sdi: powered down.
s3c2440-sdi s3c2440-sdi: initialisation done.
s3c2440-sdi s3c2440-sdi: powered down.
...
 楼主| it1988 发表于 2012-11-21 10:50:40 | 显示全部楼层
embedsky_lhh 发表于 2012-11-21 10:30
你将你的内核启动信息贴出来看下

...接上文调试信息
usb 1-1: New USB device found, idVendor=067b, idProduct=2303
usb 1-1: New USB device strings: Mfr=1, Product=2, SerialNumber=0
usb 1-1: Product: USB-Serial Controller
usb 1-1: Manufacturer: Prolific Technology Inc.
usbcore: registered new interface driver usbhid
usbhid: v2.6:USB HID core driver
usb 1-1: configuration #1 chosen from 1 choice
Advanced Linux Sound Architecture Driver Version 1.0.18a.
pl2303 1-1:1.0: pl2303 converter detected
No device for DAI UDA134X
No device for DAI s3c24xx-i2s
S3C24XX_UDA134X SoC Audio driver
UDA134X SoC Audio Codec
asoc: UDA134X <-> s3c24xx-i2s mapping ok
usb 1-1: pl2303 converter now attached to ttyUSB0
ALSA device list:
  #0: S3C24XX_UDA134X (UDA134X)
TCP cubic registered
RPC: Registered udp transport module.
RPC: Registered tcp transport module.
lib80211: common routines for IEEE802.11 drivers
s3c2410-rtc s3c2410-rtc: hctosys: invalid date/time
yaffs: dev is 32505858 name is "mtdblock2"
yaffs: passed flags ""
yaffs: Attempting MTD mount on 31.2, "mtdblock2"
yaffs_read_super: isCheckpointed 0
VFS: Mounted root (yaffs filesystem) on device 31:2.
Freeing init memory: 188K
hwclock: settimeofday: Invalid argument
Start Qtopia-2.2.0
usbcore: registered new interface driver rt73usb
usbcore: registered new interface driver zd1211rw
initializing s3c2440 camera interface......
s3c2440 camif init done
Loading OV9650 driver.........
OV9650 address 0x60, manufacture ID 0xFFFF, expect 0x7FA2
OV9650 address 0x60, manufacture ID 0xFFFF, expect 0x7FA2
No OV9650 found!!!
Try to bring eth0 interface up ...
ifconfig eth0 hw ether 10:23:45:67:89:ab
eth0: link down
ifconfig eth0 192.168.1.6 netmask 255.255.255.0 up
add default gw 192.168.1.2
Done
[01/Jan/1970:00:00:09 +0000]
Please press Enter to activate this console. boa: server version Boa/0.94.13
[01/Jan/1970:00:00:09 +0000] boa: server built Jul 29 2009 at 14:27:34.
[01/Jan/1970:00:00:09 +0000] boa: starting server pid=634, port 80

[root@EmbedSky /]#
亚瑟王 发表于 2012-11-21 12:15:17 | 显示全部楼层
it1988 发表于 2012-11-21 10:50
...接上文调试信息
usb 1-1: New USB device found, idVendor=067b, idProduct=2303
usb 1-1: New USB  ...

我认为不可能实现的。因为usb转串口在内核中的初始化是在usb初始化之后进行的,而usb初始化是内核启动时比较靠后的事情了。所以我认为不可能。
TQ2440有三个串口可以使用,你可以将调试串口换到2和3这两个口。扩展一个串口芯片转成RS232电平即可(推荐芯片:sp3232een)
 楼主| it1988 发表于 2012-11-21 13:46:47 | 显示全部楼层
亚瑟王 发表于 2012-11-21 12:15
我认为不可能实现的。因为usb转串口在内核中的初始化是在usb初始化之后进行的,而usb初始化是内核启动时比 ...

谢谢管理员。好像挺有道理,好吧,那就不要用usb转串口了。
但是,还是想学习多一点知识,说到2440有好几个串口可使用,那么
请问:
如何将将串口1或串口2,设为默认的调试信息通讯端口呢?(这里指正常的串口,而非指usb转串口)
我想知道在内核哪里地方定义调试端口,并进行修改。
亚瑟王 发表于 2012-11-22 10:12:14 | 显示全部楼层
it1988 发表于 2012-11-21 13:46
谢谢管理员。好像挺有道理,好吧,那就不要用usb转串口了。
但是,还是想学习多一点知识,说到2440有好几 ...

需要修改内核配置单,在Linux移植教程中的附录5中贴出来的配置单中,在Kernel hacking里面有个S3C Uart的配置,改为从0改为1或2;在System Type里面有个S3C UART的配置,也从0改为1或2;
同时修改u-boot的启动参数,bootargs中的console=ttySAC?(?从0改为1或2)。
Real_me゛ 发表于 2013-11-6 20:21:32 | 显示全部楼层
亚瑟王 发表于 2012-11-22 10:12
需要修改内核配置单,在Linux移植教程中的附录5中贴出来的配置单中,在Kernel hacking里面有个S3C Uart的 ...

请问:bootargs在哪里课一修改?
亚瑟王 发表于 2013-11-7 08:51:26 | 显示全部楼层
Real_me゛ 发表于 2013-11-6 20:21
请问:bootargs在哪里课一修改?

正在uboot下载模式下可以修改,命令0-》进入到参数配置,然后查看设置参数的命令(可能是5),然后设置bootargs的参数后保存参数即可。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

i.MX8系列ARM cortex A53 M4 工控板上一条 /1 下一条

Archiver|手机版|小黑屋|天嵌 嵌入式开发社区 ( 粤ICP备11094220号 )

GMT+8, 2024-4-29 15:33 , Processed in 1.062494 second(s), 22 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表