From: Andrei R. <ar...@ya...> - 2006-12-08 07:54:02
|
Hi, trying to use RTS/CTS on HWUART got a problem. When both pins left unconnected, nothing gets out of the Gumstix (via breakout-gs) whether RTS/CTS flow control is enabled or not ('set flow rts/cts' in wermit and tcsetattr() in my own programm). But in the opposite direction HWUART receives data just fine. Then if I connect RTS to CTS on the Gumstix side, data starts to flow in both direction, but only when I'm not enabling RTS/CTS in software. Any attempts to enable it crashes the system in a couple of seconds (not instantly). The message is below. So, anyone had this or similar problems ? Could someone reproduce it - it's es easy as connecting 2 pins on HWUART and trying wermit with rts/cts on. -Andrei. BTW, I configure HWUART pins as prescribed: Set (AF1,in,set) via /proc/gpio/GPIO49 Set (AF1,out,set) via /proc/gpio/GPIO48 Set (AF1,in,set) via /proc/gpio/GPIO50 Set (AF1,out,set) via /proc/gpio/GPIO51 BUG: soft lockup detected on CPU#0! [<c001ff68>] (dump_stack+0x0/0x14) from [<c0048be8>] (softlockup_tick+0xac/0xe4) [<c0048b3c>] (softlockup_tick+0x0/0xe4) from [<c00354f4>] (run_local_timers+0x18/0x1c) r7 = C0365B7C r6 = C01C2DF0 r5 = 00000000 r4 = C22032E0 [<c00354dc>] (run_local_timers+0x0/0x1c) from [<c003553c>] (update_process_times+0x44/0x6c) [<c00354f8>] (update_process_times+0x0/0x6c) from [<c001fba8>] (timer_tick+0xc8/0xe4) r5 = C01BD5CC r4 = C0365B7C [<c001fae0>] (timer_tick+0x0/0xe4) from [<c0025820>] (pxa_timer_interrupt+0x64/0xd4) r6 = 00000013 r5 = C01C2DE0 r4 = C0364000 [<c00257bc>] (pxa_timer_interrupt+0x0/0xd4) from [<c0049170>] (handle_IRQ_event+0xd4/0x118) r7 = 00000000 r6 = 00000013 r5 = C018EB94 r4 = C018A4C0 [<c004909c>] (handle_IRQ_event+0x0/0x118) from [<c004a574>] (handle_level_irq+0xe4/0x168) [<c004a490>] (handle_level_irq+0x0/0x168) from [<c001c728>] (asm_do_IRQ+0x40/0x50) r8 = 00010105 r7 = 00010106 r6 = 04000000 r5 = F2D00000 r4 = FFFFFFFF [<c001c6e8>] (asm_do_IRQ+0x0/0x50) from [<c001b9d8>] (__irq_svc+0x38/0x78) [<c0026c80>] (__wake_up+0x0/0x60) from [<c00f5ae0>] (serial_pxa_irq+0x378/0x474) r5 = 00000001 r4 = C0194378 [<c00f5768>] (serial_pxa_irq+0x0/0x474) from [<c0049170>] (handle_IRQ_event+0xd4/0x118) [<c004909c>] (handle_IRQ_event+0x0/0x118) from [<c004a574>] (handle_level_irq+0xe4/0x168) [<c004a490>] (handle_level_irq+0x0/0x168) from [<c001c728>] (asm_do_IRQ+0x40/0x50) r8 = 00000104 r7 = 00000105 r6 = 00000080 r5 = F2D00000 r4 = FFFFFFFF [<c001c6e8>] (asm_do_IRQ+0x0/0x50) from [<c001b9d8>] (__irq_svc+0x38/0x78) [<c0030888>] (__do_softirq+0x0/0xc8) from [<c0030af0>] (irq_exit+0x44/0x58) r7 = 00000003 r6 = 00000080 r5 = F2D00000 r4 = C0364000 [<c0030aac>] (irq_exit+0x0/0x58) from [<c001c72c>] (asm_do_IRQ+0x44/0x50) r4 = FFFFFFFF [<c001c6e8>] (asm_do_IRQ+0x0/0x50) from [<c001b9d8>] (__irq_svc+0x38/0x78) [<c00f5ef0>] (serial_pxa_set_termios+0x0/0x244) from [<c00f262c>] (uart_change_speed+0x84/0x88) [<c00f25a8>] (uart_change_speed+0x0/0x88) from [<c00f3d50>] (uart_set_termios+0x6c/0x290) r4 = C0364000 [<c00f3ce4>] (uart_set_termios+0x0/0x290) from [<c00f10ec>] (set_termios+0x404/0x470) [<c00f0ce8>] (set_termios+0x0/0x470) from [<c00f1324>] (n_tty_ioctl+0x15c/0x5e4) [<c00f11c8>] (n_tty_ioctl+0x0/0x5e4) from [<c00ecf60>] (tty_ioctl+0xdd0/0xe30) r6 = BEE03768 r5 = C21F5800 r4 = FFFFFFEA [<c00ec190>] (tty_ioctl+0x0/0xe30) from [<c007a1b4>] (do_ioctl+0x80/0x94) [<c007a134>] (do_ioctl+0x0/0x94) from [<c007a4a8>] (vfs_ioctl+0x2e0/0x300) r7 = 00000003 r6 = BEE03768 r5 = FFFFFFF7 r4 = C02641A0 [<c007a1c8>] (vfs_ioctl+0x0/0x300) from [<c007a508>] (sys_ioctl+0x40/0x5c) r8 = C001BFA4 r7 = 00000036 r6 = 00005403 r5 = FFFFFFF7 r4 = C02641A0 [<c007a4c8>] (sys_ioctl+0x0/0x5c) from [<c001be00>] (ret_fast_syscall+0x0/0x2c) r6 = BEE03A4C r5 = 00000000 r4 = 00000A30 |