Newlib Port : Infineon xc16x
Jeff Johnston
jjohnstn@redhat.com
Fri Mar 10 20:36:00 GMT 2006
Hello Shrirang,
Sorry for the delay in reviewing your patch. A few issues:
1. We don't put syscalls in the libc/sys directory anymore for a
processor. The arm processor is there because of historical
reasons, but it has also been migrated to libgloss.
Please create a libgloss/xc16x directory and put your
crt0 file and your syscalls there. See mn10300 and other
libgloss directories for examples on creating a syscall
library and ld script.
2. None of your new files have licensing information in them.
There should be something there, even if it is to say
that users are free to use, copy, and modify the source.
A GPL or proprietary license is not allowed. If someone
else has written the code, they must provide the license.
There are various examples around for you to look at. If
you have questions, just contact me.
3. You seem to missing crucial support. You have stubs for
important functionality like setjmp/longjmp. As well,
some of your syscall stubs return 0 to indicate success,
but they do nothing. If anything, you should look at the
libnosys stubs which return failure as expected.
Regards,
-- Jeff J.
Shrirang Khishti wrote:
> Hi all,
>
> KPIT Cummins is contributing the complete Newlib port for Infineon
> XC16X architecture. We would like to request you to send in your
> comments on this port.
> As we are putting our best efforts on this port
> its quality will successively improve and fit more and more to the
> current GNU standards. We will be giving full fledge implementation
> of system calls as soon as possible.
> KPIT Cummins has already signed copyright assignment with FSF.
>
> The XC16X is a new derivative of the popular C16X microcontroller
> family that is based on the enhanced C166S V2 architecture
> (http://www.infineon.com) it outperforms existing 16-bit solutions.
> Impressive DSP performance and advanced interrupt handling combined with
> an integrated powerful peripheral set and a high performance on-chip
> flash makes the XC16X the instrument of choice for demanding industrial
> and automotive applications.
>
> We have already posted binutils and gcc patches to FSF.
> http://sourceware.org/ml/binutils/2006-02/msg00230.html
> http://gcc.gnu.org/ml/gcc-patches/2006-03/msg00200.html
>
>
> Change log for Newlib 1.14
>
> We are also sending Patch for top-level config to config project
> 2006-03-06
>
> Shrirang Khisti <shrirangk@kpitcummins.com>
>
>
> *config.sub : Information about xc16x
> *configure.in : Entries for xc16x
> *configure : Regenerate
>
>
> *newlib\configure.host : Specified directory for system calls ,
> and machine specific directory
>
>
>
> *newlib\libc\sys\xc16x\crt0.S : New file Default startup file
> *newlib\libc\sys\xc16x\close.s : New file
> *newlib\libc\sys\xc16x\fstat.s : New file
>
> *newlib\libc\sys\xc16x\write.c : New file
> *newlib\libc\sys\xc16x\lseek.c : New file
> *newlib\libc\sys\xc16x\read.c : New file
> *newlib\libc\sys\xc16x\open.c : New file
> *newlib\libc\sys\xc16x\create.c : New file
> *newlib\libc\sys\xc16x\isatty.c : New file
> *newlib\libc\sys\xc16x\mem-layout.c : New file
> *newlib\libc\sys\xc16x\misc.c : New file
> *newlib\libc\sys\xc16x\sbrk.c : New file
> *newlib\libc\sys\xc16x\trap_handle.c : New file
>
> *newlib\libc\sys\xc16x\configure.in : New file
> *newlib\libc\sys\xc16x\configure : Regenerate
> *newlib\libc\sys\xc16x\makefile.am : New file
> *newlib\libc\sys\xc16x\aclocal.m4 : New file
> *newlib\libc\sys\xc16x\makefile.in : Regenerate
>
>
> *newlib\libc\machine\xc16x\setjmp.S : New file
> *newlib\libc\machine\xc16x\Makefile.in : Regenerate
> *newlib\libc\machine\xc16x\Makefile.am : New file
> *newlib\libc\machine\xc16x\configure : Regenerate
> *newlib\libc\machine\xc16x\configure.in : New file
> *newlib\libc\machine\xc16x\aclocal.m4 : New file
>
>
> *newlib\libc\include\sys\config.h : define macro SMALL_BITFIELDS
> for all xc16x targets
> *newlib\libc\include\machine\ieefp.h : Define endianness for xc16x
> along with other floating point information
>
> Regards
> Shrirang Khisti
> KPIT Cummins Infosystems Ltd.
More information about the Newlib
mailing list