From: Andrei R. <ar...@ya...> - 2006-12-09 07:38:36
|
My original email went to some wrong thread it seems, so I re-post it again. 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! [] (dump_stack+0x0/0x14) from [] (softlockup_tick+0xac/0xe4) [] (softlockup_tick+0x0/0xe4) from [] (run_local_timers+0x18/0x1c) r7 = C0365B7C r6 = C01C2DF0 r5 = 00000000 r4 = C22032E0 [] (run_local_timers+0x0/0x1c) from [] (update_process_times+0x44/0x6c) [] (update_process_times+0x0/0x6c) from [] (timer_tick+0xc8/0xe4) r5 = C01BD5CC r4 = C0365B7C [] (timer_tick+0x0/0xe4) from [] (pxa_timer_interrupt+0x64/0xd4) r6 = 00000013 r5 = C01C2DE0 r4 = C0364000 [] (pxa_timer_interrupt+0x0/0xd4) from [] (handle_IRQ_event+0xd4/0x118) r7 = 00000000 r6 = 00000013 r5 = C018EB94 r4 = C018A4C0 [] (handle_IRQ_event+0x0/0x118) from [] (handle_level_irq+0xe4/0x168) [] (handle_level_irq+0x0/0x168) from [] (asm_do_IRQ+0x40/0x50) r8 = 00010105 r7 = 00010106 r6 = 04000000 r5 = F2D00000 r4 = FFFFFFFF [] (asm_do_IRQ+0x0/0x50) from [] (__irq_svc+0x38/0x78) [] (__wake_up+0x0/0x60) from [] (serial_pxa_irq+0x378/0x474) r5 = 00000001 r4 = C0194378 [] (serial_pxa_irq+0x0/0x474) from [] (handle_IRQ_event+0xd4/0x118) [] (handle_IRQ_event+0x0/0x118) from [] (handle_level_irq+0xe4/0x168) [] (handle_level_irq+0x0/0x168) from [] (asm_do_IRQ+0x40/0x50) r8 = 00000104 r7 = 00000105 r6 = 00000080 r5 = F2D00000 r4 = FFFFFFFF [] (asm_do_IRQ+0x0/0x50) from [] (__irq_svc+0x38/0x78) [] (__do_softirq+0x0/0xc8) from [] (irq_exit+0x44/0x58) r7 = 00000003 r6 = 00000080 r5 = F2D00000 r4 = C0364000 [] (irq_exit+0x0/0x58) from [] (asm_do_IRQ+0x44/0x50) r4 = FFFFFFFF [] (asm_do_IRQ+0x0/0x50) from [] (__irq_svc+0x38/0x78) [] (serial_pxa_set_termios+0x0/0x244) from [] (uart_change_speed+0x84/0x88) [] (uart_change_speed+0x0/0x88) from [] (uart_set_termios+0x6c/0x290) r4 = C0364000 [] (uart_set_termios+0x0/0x290) from [] (set_termios+0x404/0x470) [] (set_termios+0x0/0x470) from [] (n_tty_ioctl+0x15c/0x5e4) [] (n_tty_ioctl+0x0/0x5e4) from [] (tty_ioctl+0xdd0/0xe30) r6 = BEE03768 r5 = C21F5800 r4 = FFFFFFEA [] (tty_ioctl+0x0/0xe30) from [] (do_ioctl+0x80/0x94) [] (do_ioctl+0x0/0x94) from [] (vfs_ioctl+0x2e0/0x300) r7 = 00000003 r6 = BEE03768 r5 = FFFFFFF7 r4 = C02641A0 [] (vfs_ioctl+0x0/0x300) from [] (sys_ioctl+0x40/0x5c) r8 = C001BFA4 r7 = 00000036 r6 = 00005403 r5 = FFFFFFF7 r4 = C02641A0 [] (sys_ioctl+0x0/0x5c) from [] (ret_fast_syscall+0x0/0x2c) r6 = BEE03A4C r5 = 00000000 r4 = 00000A30 |