From mboxrd@z Thu Jan 1 00:00:00 1970 From: Daniel.Andersson@combitechsystems.com To: ecos-discuss@sourceware.cygnus.com Subject: [ECOS] Serial problem on EB40 Date: Wed, 11 Jul 2001 00:01:00 -0000 Message-id: <2253171AF143D21185A60000F8FA748B02DA4E33@pluto.combitech.se> X-SW-Source: 2001-07/msg00283.html Hi, I have a quite strange problem with my serial port (using a EB40 board). I can get a handle to the port using the lookup function but when i am trying to make any calls to it (like cyg_io_set_config) then i get a -EDEVNOSUPP in return (see clip below). It looks like the serial port isn't setup right in the DEVTAB since the functioncall "t->handlers->set_config" in iosys.c doesn't work. Any clues of what the problem maigt be? Regards, Daniel ---clip from iosys.c---- 273 if (!t->handlers->set_config) { 274 return -EDEVNOSUPP; 275 } ---end clip from iosys.c---- -----clip----- //Find device err = cyg_io_lookup("/dev/ser0",&serial_handle ); if (ENOERR != err) { serial_handle = 0; //ERROR } //Set up device //ser_info.baud = CYGNUM_SERIAL_BAUD_9600; ser_info.baud = CYGNUM_SERIAL_BAUD_38400; ser_info.stop = CYGNUM_SERIAL_STOP_1; ser_info.parity = CYGNUM_SERIAL_PARITY_EVEN; ser_info.word_length = CYGNUM_SERIAL_WORD_LENGTH_8; ser_info.flags = CYG_SERIAL_FLAGS_DEFAULT; config_len = sizeof(ser_info); err = cyg_io_set_config(serial_handle, CYG_IO_SET_CONFIG_SERIAL_INFO, &ser_info, &config_len); if (ENOERR != err) { serial_handle = 0; //ERROR } //TBD Until new OS arrives in a couple of days DBO 010629 HAL_WRITE_UINT32(0xfffd0000, 0x50); config_len = sizeof(cyg_uint32); //No blocking when read blocking_val = 0; err = cyg_io_set_config(serial_handle, CYG_IO_SET_CONFIG_SERIAL_READ_BLOCKING, &blocking_val, &config_len); if (ENOERR != err) { serial_handle = 0; //ERROR } // Blocking when write blocking_val = 1; err = cyg_io_set_config(serial_handle, CYG_IO_SET_CONFIG_SERIAL_WRITE_BLOCKING, &blocking_val, &config_len); if (ENOERR != err) { serial_handle = 0; //ERROR } ----clip end----