summaryrefslogtreecommitdiffstats
path: root/c/src/lib (follow)
Commit message (Collapse)AuthorAgeFilesLines
...
* Patch from Emmanuel Raguet <raguet@crf.canon.fr>:Joel Sherrill1998-08-317-360/+456
| | | | | I have reworked the ethernet driver for the BSP pc386 and here is the patch to apply.
* Patch from Eric Valette <valette@crf.canon.fr>:Joel Sherrill1998-08-314-78/+39
| | | | | | | | | | | | | | | | | | | Eric> NB : there is still a bug on PC386 serial line : exit does not Eric> flush the remaining output queue. As this is not a bug in the Eric> driver itself but somewhere in PC386 initialization/termios Eric> relationship it will be part of another patch. Eric> NB2 : As Emmanuel excerced the exception hanlder code, while Eric> porting the SMC driver to the new BSD stack, we found a bug Eric> in the exception handler : it shall not delete the current Eric> thread in case we are running at interrupt level. This will Eric> be part of another patch... So here is the patch. This patch fixes the two problems mentionned above + it use vpath mechanism intead of copying the irq related files in the right directory. This avoid to compile them each time and is more homogenous with other Makefiles.
* Patch from Eric Valette <valette@crf.canon.fr>:Joel Sherrill1998-08-312-25/+49
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Here is a brief description of the attached patch : 1) There was a bug in the code for the COM2 serial line driver. Aleksey gave me a fix that fixes the driver code itself. I would like to thank him again publicly, 2) I introduced constants in the serial driver code because I had a hard time reading the meanning of hexadecimal values in the NS data book :) 3)You can now mix printk and printf on serial line (tested on COM2). There is a #ifdef PRINTK_ON_SERIAL in console.c that enables to have printk on console while printf on serial line, 4) Removed call to displayCpuInfo because anyway if was at the wrong place for serial line console (too early). It can anyway be called at application level, 5) The original printk was unable to display negative integer values and was also recursive. It now works corectly, All the modifications have been tested here on the COM2 port from a PC running RTEMS to a PC running linux, NB : there is still a bug on PC386 serial line : exit does not flush the remaining output queue. As this is not a bug in the driver itself but somewhere in PC386 initialization/termios relationship it will be part of another patch. NB2 : As Emmanuel excerced the exception hanlder code, while porting the SMC driver to the new BSD stack, we found a bug in the exception handler : it shall not delete the current thread in case we are running at interrupt level. This will be part of another patch...
* Patch from Eric Norum <eric@skatter.usask.ca>:Joel Sherrill1998-08-312-8/+4
| | | | | | | | | | | | | | I think I figured out why rtems_panic was locking up instead of shutting down the executive and returning to the code that called boot_card(). Later on there is code to print some messages on the standard error stream, a recursive call back to rtems_verror (through rtems_error) and finally a call to _exit(). I think that the _Thread_Disable_dispatch() is preventing the final context switch back to the boot_card() code. Does this sound right to you?
* Patch from Eric Valette <valette@crf.canon.fr> to add an extra newline.Joel Sherrill1998-08-241-0/+1
|
* Patch from Eric Valette <valette@crf.canon.fr>:Joel Sherrill1998-08-241-63/+16
| | | | | | | | | | | | | | | | Celso Labinaz <labinaz@tin.it> pointed to me thatthe console on serial line was not working. After spending quite a time to find the right cable and software, I confirm this. I'm going to debug this in the next days because I want to use the serial line for debugging. In the meantime, in order to be sure that this was a driver initialization/bug, I made printk work on the serial line in order to be sure the receiver part and configuration was OK. Here is the for printk on serial line. BTW, does anyone else use the serial line facilities for PC? printf seems to output nothing (hello.exe output everything that has a printk but application printf seems to be broken).
* Cleanup patch from Eric Norum.Joel Sherrill1998-08-241-3/+0
|
* Added i386 specific version of in_cksum.c and restructured the mainJoel Sherrill1998-08-213-151/+515
| | | | file to switch out to CPU specific implementations.
* Another missing piece. Thanks Eric.Joel Sherrill1998-08-211-0/+3
|
* Patch from Eric Valette <valette@crf.canon.fr>:Joel Sherrill1998-08-217-20/+42
| | | | | | | | | | Here is a patch that enables to catch exception and get message before crashing RTEMS :) It should be generic to any Intel port although enabled only for pc386 BSP... [Joel] I fixed the bug I introduced in irq_asm.s...
* Fix from Eric Norum <eric@skatter.usask.ca>:Joel Sherrill1998-08-211-14/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | "Thomas Doerfler" <td@imd.m.isar.de> wrote: > > While implementing/testing the console/termios support for > PPC403 in RTEMS-4.0.0-beta3, I am stuck at a certain location in > termios.c: > > During "rtems_termios_initialize", the main control data structure > "*tty" is allocated using malloc(). (Note, that malloc does not > clear the allocated memory and my BSP does not clear memory during > startup). Furtheron, a lot of fields of that structure are > initialized, but the field "rawOutBufState" is not, and therefore > keeps an arbitrary contents. > > When "osend()" is called the first time(with the serial device > driver working in interrupt mode), termios gets stuck and will not > call the device drivers output function. > > My questions now are: > > - anybody already experienced this bug? > - is it a bug at all or did I do anything fundamentally wrong? > - is there already a common bugfix for that? > > I don't like poking around in other people code, as long as I am > not absolutely sure, what I do... Yes, there's a bug there. I thought that Joel had patched this already, but here's a patch to fix this. This patch also addresses a concern that many others have raised regarding enabling and disabling of transmitter interrupts. First, here's the example I've been using of a simple UART-style interrupt-driven driver: =============================================================== void device_write_routine (int minor, char *buf, int count) { UART->control_register &= ~UART_TRANSMITTER_READY; UART->output_register = *buf; UART->control_register |= UART_TRANSMIT_INTERRUPT_ENABLE; } void device_transmit_interrupt_routine (int vector) { UART->control_register &= ~UART_TRANSMIT_INTERRUPT_ENABLE; rtems_termios_dequeue_characters (device_ttyp, 1); } ============================================================== Several people have expressed their concern about the disable/enable of transmitter interrupts for every character. On some machines this disable/enable is an expensive operation. With the attached patch applied you can write the two routines as: ============================================================== void device_write_routine (int minor, char *buf, int count) { code_to_clear_transmitter_ready_status (); if (device_ttyp->rawOutBufState == rob_idle) code_to_enable_transmitter_interrupts (); code_to_send_one_character_to_transmitter (*buf); } void device_transmit_interrupt_routine (int vector) { rtems_termios_dequeue_characters (device_ttyp, 1); if (device_ttyp->rawOutBufState == rob_idle) code_to_disable_transmitter_interrupts (); } ===============================================================
* Update from Eric Norum.Joel Sherrill1998-08-211-3/+2
|
* All warnings removed.Joel Sherrill1998-08-217-6/+25
|
* Removed networkconfig.h since it reflects target specific initialization.Joel Sherrill1998-08-211-2/+2
|
* Added initialization of missing termios structure entries.Joel Sherrill1998-08-211-2/+3
|
* Fixed warning about pointer/integer conversion which turned out to beJoel Sherrill1998-08-211-1/+1
| | | | a missed "&" on a write.
* Fixed discrepancies noted by John Oleynick <johno@sirius.com>.Joel Sherrill1998-08-211-6/+11
|
* Patches from Eric NorumJoel Sherrill1998-08-2015-41/+44
|
* Added CVS IdsJoel Sherrill1998-08-2065-0/+205
|
* Fixed many warnings.Joel Sherrill1998-08-2035-86/+162
|
* Temporarily leave strsep out of the build.Joel Sherrill1998-08-201-2/+4
|
* Added missing file.Joel Sherrill1998-08-201-1/+1
|
* Removed stub implementationJoel Sherrill1998-08-203-13/+4
|
* FreeBSD stack compiles for the first time (except libc/strsep.c)Joel Sherrill1998-08-206-435/+507
|
* FreeBSD stack compiles for the first time (except libc/strsep.c).Joel Sherrill1998-08-2018-12/+380
|
* Base filesJoel Sherrill1998-08-202-0/+95
|
* Base filesJoel Sherrill1998-08-206-0/+292
|
* Base version.Joel Sherrill1998-08-201-0/+14
|
* Base filesJoel Sherrill1998-08-19219-0/+60194
|
* Patch from Eric Valette <valette@crf.canon.fr>:Joel Sherrill1998-08-192-53/+49
| | | | | | | - Use the "hlt" instruction for the Idle thread, - Optimise interrupt PATH leadding to thread wakeup, - Preparation for Intel exception management that should come before the end of the week...
* Patch from Aleksey <qqi@world.std.com>:Joel Sherrill1998-08-192-10/+45
| | | | | | | | | | | | This patch has same changes as one I sent to you earlier plus it fixes _heap_size problem for pc386 we had discussed earlier. Now, _heap_size is defined and set to 0 in pc386/startup/bspstart.c It can be patched to desireable value in binary image. If it is left unpatched, then startup code will determine size of memory (on the assumption that at least 2MB are present) and use max possible heap.
* Patch from Aleksey <qqi@world.std.com>:Joel Sherrill1998-08-198-21/+34
| | | | | | It fixes netboot build problem, KA9Q configuration for pc386, some compiler wardning, it also removed some stuff ifdef'ed with '#if 0'.
* If 0 out the code which touches the chip in questionable ways for processingJoel Sherrill1998-08-141-0/+6
| | | | a giant packet.
* Changed tm27 clear interrupt macro on all PPC BSPs except the papyrus.Joel Sherrill1998-08-141-0/+5
|
* Added information on caching.Joel Sherrill1998-08-141-0/+13
|
* Updated.Joel Sherrill1998-08-141-1/+1
|
* Fixed version referenceJoel Sherrill1998-08-131-1/+1
|
* Updated.Joel Sherrill1998-08-131-181/+179
|
* base line -- copied from erc32Joel Sherrill1998-08-131-0/+193
|
* Enable TX interrupts only when we need TDAs.Joel Sherrill1998-08-131-1/+0
|
* Cleaned up some debugging stuff.Joel Sherrill1998-08-131-23/+15
| | | | Redid interrupt handler to read imr/isr once and to write the imr once.
* Don't disable the RX/TX on close in polled mode.Joel Sherrill1998-08-131-2/+3
| | | | Fixed a comment.
* Patch from Chris Johns <ccj@acm.org> to change the way in which the initialJoel Sherrill1998-08-131-2/+5
| | | | stack pointers are saved.
* fixed spacingJoel Sherrill1998-08-131-16/+14
|
* Removed spurious prints and cleaned up XXX.Joel Sherrill1998-08-121-11/+10
|
* Added more debug information. There are probably debug prints left in.Joel Sherrill1998-08-121-24/+53
| | | | | Fixed one important bug. After wrapping the RX Descriptors all had the EOL bit set which resulted in everything slowing down massively.
* Fixed bug where the last link of the RDA was not initialized properly.Joel Sherrill1998-08-121-15/+30
|
* Added SONIC_DEBUG_DESCRIPTORS and changed debug level.Joel Sherrill1998-08-111-3/+11
|
* Survives 16-20 packets. Appears to be ok on TX buffer management.Joel Sherrill1998-08-101-11/+16
| | | | Problem appears to be on the RX buffer initialization side.
* Added printsJoel Sherrill1998-08-101-1/+2
|