[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: RS485 problem



Look like you are using an old kernel where the RS-485 support isn't
complete,
but the config options unfortunately wasn't removed.
The updated code is in the official linux kernel tree, although I'm not sure
we
have a devboard_lx release that includes them yet.
The following files with RS-485 related changes needs to be updated:
linux/arch/cris/drivers/serial.c
linux/arch/cris/drivers/serial.h
linux/include/asm-cris/rs485.h
linux/include/asm-cris/termios.h
linux/include/asm-cris/ioctls.h

but there might be others you need as well.
See http://linux.bkbits.net:8080/linux-2.4/
and http://www.kernel.org/

/Johan

----- Original Message -----
From: "Karel Šín" <karel.sin@xxxxxxx.cz>
To: <dev-etrax@xxxxxxx.com>
Sent: den 9 september 2002 11:50
Subject: RS485 problem


> Dears,
>  I need to use RS 485 device with devboard_LX. I did "make xconfig" in
> /axis/devboard_lx/os/linux directory and in menu "Drivers for ETRAX 100LX
> built-in interfaces" I set to "yes" properties "RS-485 support" and
"Serial
> port 3 enabled". Then I did "make kernel"  in /axis/devboard_lx/
directory.
> The "make kernel" returned two errors. What did I do false?
>       Thank's for reply
>                               Karel Sin
>
> ERROR MESSAGE:
>
> /usr/local/cris/lib/gcc-lib/cris/2.96/ar  rcs lib.a checksum.o
checksumcopy.o
> string.o usercopy.o memset.o csumcpfruser.o
> make[3]: Leaving directory
> `/home/faust/axis/devboard_lx/os/linux/arch/cris/lib'
> make[2]: Leaving directory
> `/home/faust/axis/devboard_lx/os/linux/arch/cris/lib'
> make CFLAGS="-D__KERNEL__ -I/home/faust/axis/devboard_lx/os/linux/include
> -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fomit-frame-pointer
> -fno-strict-aliasing -fno-common -mlinux -pipe " -C  arch/cris/drivers
> make[2]: Entering directory
> `/home/faust/axis/devboard_lx/os/linux/arch/cris/drivers'
> make all_targets
> make[3]: Entering directory
> `/home/faust/axis/devboard_lx/os/linux/arch/cris/drivers'
> make[3]: Circular
> /home/faust/axis/devboard_lx/os/linux/include/linux/bitops.h <-
> /home/faust/axis/devboard_lx/os/linux/include/asm/bitops.h dependency
dropped.
> /usr/local/cris/lib/gcc-lib/cris/2.96/gcc -D__KERNEL__
> -I/home/faust/axis/devboard_lx/os/linux/include -Wall -Wstrict-prototypes
> -Wno-trigraphs -O2 -fomit-frame-pointer -fno-strict-aliasing -fno-common
> -mlinux -pipe    -c -o ethernet.o ethernet.c
> /usr/local/cris/lib/gcc-lib/cris/2.96/gcc -D__KERNEL__
> -I/home/faust/axis/devboard_lx/os/linux/include -Wall -Wstrict-prototypes
> -Wno-trigraphs -O2 -fomit-frame-pointer -fno-strict-aliasing -fno-common
> -mlinux -pipe    -c -o serial.o serial.c
> serial.c:957: warning: `struct rs485_control' declared inside parameter
list
> serial.c:957: warning: its scope is only this definition or declaration,
> which is probably not what you want.
> serial.c: In function `e100_enable_rs485':
> serial.c:965: structure has no member named `rs485'
> serial.c:965: dereferencing pointer to incomplete type
> serial.c:966: structure has no member named `rs485'
> serial.c:966: dereferencing pointer to incomplete type
> serial.c:967: structure has no member named `rs485'
> serial.c:967: dereferencing pointer to incomplete type
> serial.c:968: structure has no member named `rs485'
> serial.c:968: dereferencing pointer to incomplete type
> serial.c: At top level:
> serial.c:974: warning: `struct rs485_write' declared inside parameter list
> serial.c: In function `e100_write_rs485':
> serial.c:980: dereferencing pointer to incomplete type
> serial.c:982: variable `wait' has initializer but incomplete type
> serial.c:982: warning: excess elements in struct initializer
> serial.c:982: warning: (near initialization for `wait')
> serial.c:982: warning: excess elements in struct initializer
> serial.c:982: warning: (near initialization for `wait')
> serial.c:982: storage size of `wait' isn't known
> serial.c:987: structure has no member named `rs485'
> serial.c:993: structure has no member named `rs485'
> serial.c:994: structure has no member named `timeout'
> serial.c:994: structure has no member named `rs485'
> serial.c:997: structure has no member named `timeout'
> serial.c:999: dereferencing pointer to incomplete type
> serial.c:999: dereferencing pointer to incomplete type
> serial.c:1047: structure has no member named `rs485'
> serial.c:982: warning: unused variable `wait'
> serial.c: In function `transmit_chars':
> serial.c:1201: structure has no member named `rs485'
> serial.c:1211: structure has no member named `rs485'
> serial.c: In function `rs_ioctl':
> serial.c:2933: `TIOCSERSETRS485' undeclared (first use in this function)
> serial.c:2933: (Each undeclared identifier is reported only once
> serial.c:2933: for each function it appears in.)
> serial.c:2935: sizeof applied to an incomplete type
> serial.c:2940: warning: passing arg 2 of `e100_enable_rs485' from
> incompatible pointer type
> serial.c:2942: `TIOCSERWRRS485' undeclared (first use in this function)
> serial.c:2944: sizeof applied to an incomplete type
> serial.c:2949: warning: passing arg 2 of `e100_write_rs485' from
incompatible
> pointer type
> serial.c: In function `rs_close':
> serial.c:3091: structure has no member named `rs485'
> serial.c:3092: structure has no member named `rs485'
> serial.c: At top level:
> serial.c:659: warning: `fast_timer_ints' defined but not used
> serial.c:2009: warning: `do_serial_hangup' defined but not used
> make[3]: *** [serial.o] Error 1
> make[3]: Leaving directory
> `/home/faust/axis/devboard_lx/os/linux/arch/cris/drivers'
> make[2]: *** [first_rule] Error 2
> make[2]: Leaving directory
> `/home/faust/axis/devboard_lx/os/linux/arch/cris/drivers'
> make[1]: *** [_dir_arch/cris/drivers] Error 2
> make[1]: Leaving directory `/home/faust/axis/devboard_lx/os/linux'
> make: *** [kernel] Error 2
> [faust@pcd400y devboard_lx]$
>