summaryrefslogtreecommitdiffstats
path: root/c/src/exec (unfollow)
Commit message (Collapse)AuthorFilesLines
1998-06-25Coldfire support patch from David Fiddes <D.J.Fiddes@hw.ac.uk>.Joel Sherrill3-14/+151
1998-06-25Patch from Robin Kirkham <Robin.Kirkham@mlb.dmt.csiro.au> to distinguishJoel Sherrill1-7/+18
between CPU32 and CPU32+ cores. Commentary follows: Unfortunately c/src/exec/score/cpu/m68k/m68k.h incorrectly defines M68K_HAS_MISALIGNED for the plain old CPU32 (it is correct for the CPU32+). As a consequence, the recently-relocated m68k memcpy() may still attempt misaligned memory accesses. I suggest that until such time as egcs/gcc differentiates these cores that we invent a new preprocessor symbol, RTEMS__mcpu32p__ for this purpose, on the assumption that egcs may one day grow a -mcpu32+ option which will define a __mcpu32p__ symbol (whether this option would also define __mcpu32__ is yet to be resolved). BSPs that have a CPU32+ (like gen68360) would for the time being define RTEMS__mcpu32p__ using -D. The symbol is `RTEMS__mcpu32p__' because symbols of the form __xxx__ should only be defined by the compiler itself. Note that the patch tests for RTEMS__mcpu32p__ *before* __mcpu32__, since __mcpu32__ is still defined for the CPU32+. It does not change the gen68360 BSP. An aside: Note that in egcs-1.0.3a, the option -m68332 is identical to -mcpu32, except it defines __mc68332__ as well as __mcpu32__. This is only for the sake of compatibility. The story with -m68302 is similar; it defines __mc68302__ and __mc68000__. In my opinion these options are depreciated and ought to be avoided in RTEMS.
1998-06-24Suggestion from Robin Kirkham <Robin.Kirkham@mlb.dmt.csiro.au> to improveJoel Sherrill1-2/+1
clarity.
1998-06-18changed version to 980618Joel Sherrill2-2/+2
1998-06-18All task delete API level services were incorrectly assuming that theJoel Sherrill2-2/+15
task to be deleted was created via the same API (i.e. were of the object class created by this API). For example, a POSIX thread calling the rtems_task_delete(SELF) directive would incorrectly update the RTEMS object local pointer table. Jennifer discovered this when moving tests implemented in C using the Classic RTEMS API into a tree of Ada tests. The Ada tests were implicitly using POSIX services. This lead to some unexpected behavior.
1998-06-18Modified _Objects_Is_class_valid() to correctly report that 0 wasJoel Sherrill4-4/+4
not a valid object class. This was discovered while looking for a bug reported by Jennifer.
1998-06-18Added freebsd support from Dario Alcocer <alcocer@connectnet.com>.Joel Sherrill5-2/+41
1998-06-18Corrected so it returns the correct date. Previously was getting the numberJoel Sherrill1-11/+28
of seconds since 1988 from RTEMS and not adding in the 1970-1988 correction factor. Plus removed checks for data/time set since POSIX does not permit this call to fail. GNAT 3.12 depends on this.
1998-06-18Added a public interface to the chain handler.Joel Sherrill1-0/+362
1998-06-12Added optimized version of memcpy.c to this directory since RTEMS makesJoel Sherrill2-1/+88
important distinctions between CPU models which are not made by gcc. These distinctions help give us a more optimized memcpy(). This is important for message queues and KA9Q.
1998-06-04changed version to 980604Joel Sherrill2-2/+2
1998-06-03Added CPU_ISR_PASSES_FRAME_POINTER so some ports could pass just theJoel Sherrill13-0/+133
vector number to user ISR's and other ports could pass both the vector number and a pointer to the ISF.
1998-06-03Corrected macros for assembly language program sections.Joel Sherrill1-2/+2
1998-05-27changed version to 980527Joel Sherrill2-2/+2
1998-05-27Corrected interrupt stack allocation.Joel Sherrill2-6/+14
1998-05-27Fixed spacingJoel Sherrill1-16/+16
1998-05-27Fix from Jiri Gaisler <jgais@ws.estec.esa.nl> for a problem in whichJoel Sherrill1-1/+18
external interrupt priorities were not being honored. Here is some of his original report: using rtems/erc32, I have a problem with interrupt priority when interrupts occure simultaneously. Erc32 has an interrupt force register where interrupts can be generated. If more than one interrupt is generated, the interrupt handlers are scheduled in the wrong order, i.e. with the lowest priority first. I have attched a program that generates three interrupts, 0x11, 0x12 and 0x13. Interrupt 0x13 should be handled first, but is actually handled last. Below is the output from sis: sis> go resuming at 0x02000000 RAM size: 4096 K, ROM size: 2048 K Watchdog disabled Waitstates = RAM read: 0, RAM write: 0, ROM read: 0, ROM write: 0 Power-down mode enabled infinite UART baudrate External interrupt received with vector 0x11 External interrupt received with vector 0x12 External interrupt received with vector 0x13 I have verified that sis generates the interrupts in the correct order, i.e. 0x13 first, then 0x12 and then 0x11. So the problem seems to be in the rtems interrupt handler. Do you use the PIL field in the %psr register to mask lower priority interrupts or are all external interrupts considered to have the same priority ..? Here is a description of the fix: it turned out that lower priority interrupts were not at all masked off during interrupt handling. I made the following fix to cpu_asm.s: ... fix is in the code ... There might be a simpler way of doing this, but this works...
1998-05-22Added tcdrain(), cfgetospeed(0, cfsetospeed(), cfgetispeed(), andJoel Sherrill2-0/+56
cfsetispeed().
1998-05-22Added tcdrain(), cfgetospeed(), cfsetospeed(), cfgetispeed(), and cfsetispeed().Joel Sherrill1-1/+5
1998-05-21changed version to 980521Joel Sherrill2-2/+2
1998-05-21Per suggestion from Ralf Corsepius made all macros solaris2 -- not solarisJoel Sherrill1-1/+1
or solaris2.
1998-05-20Patch to add return status to rtems_termios_enqueue_raw_characters fromJoel Sherrill2-2/+4
Eric Norum per request from Geoffroy Montel: > The rtems_termios_enqueue_raw_characters function type is void. > The problem is that I can't return an error message if the input > buffer is full. > Could we add a return value? Sure, but what would you do with the overflow indication? POSIX says, ``when the input limit is reached, the saved characters are thrown away without notice''. Anyhow, the change is so small I've done it and enclosed the patch.
1998-05-20Added tcdrain() from Eric NorumJoel Sherrill1-0/+1
1998-05-19Addition of tcdrain() from Eric Norum.Joel Sherrill1-0/+12
1998-05-19Removed prototype of rtems_libio_config() per Chris Johns' eagle eye.Joel Sherrill1-1/+0
1998-05-18changed version to 980518Joel Sherrill2-2/+2
1998-05-18Added bsp_specs.Joel Sherrill1-3/+4
1998-05-18Include memory for Ada task stacks.Joel Sherrill2-4/+4
1998-05-04Patch from Eric Norum to switch to termios callback structure, addJoel Sherrill2-38/+41
support for device driver support on tcsetattr(), and hardware flow control callbacks.
1998-05-04fixed swap of unsigned16Joel Sherrill1-6/+6
1998-05-04Added default value for CONFIGURE_MAXIMUM_POSIX_THREADS since it isJoel Sherrill2-0/+2
used to calculate the amount of memory used by tasks whether the POSIX API is enabled or disabled.
1998-04-30Fixed case where wrong variable was used.Joel Sherrill1-1/+1
1998-04-30Removed redundant "* 1024" which exploded the size of the workspace.Joel Sherrill2-4/+4
1998-04-27Added I386_HAS_BSWAP cpu model feature flag so swap u32 could takeJoel Sherrill1-10/+28
advantage of this instruction. Also up conditionals mapping cpu models to feature flags by having a section which defaults all the i386 family feature flags to the most common value.
1998-04-27Added swap of unsigned16Joel Sherrill11-3/+69
1998-04-27Fixed spelling errors.Joel Sherrill1-3/+3
1998-04-27Fixed trace bit manipulation per requests from Eric Norum and Chris Johns.Joel Sherrill1-11/+3
Actual patch was from Eric Norum.
1998-04-27Fixed CVS IdJoel Sherrill1-1/+1
1998-04-27Added numerous entries to make the memory calculation more accurate:Joel Sherrill2-2/+134
+ POSIX threads + Ada tasks + POSIX threads API support + POSIX condition variables + POSIX keys (still do not account for data fields) + POSIX mutexes + POSIX queued signals + added macro for extra memory for task stacks + default value for CONFIGURE_MAXIMUM_FAKE_ADA_TASKS + extra memory for Ada task stacks
1998-04-27Moved POSIX_signals_Siginfo_node structure definition to headers/psignal.hJoel Sherrill1-5/+1
so confdefs.h could see it.
1998-04-27Changed __POSIX_SIGNALS_h to __RTEMS_POSIX_SIGNALS_h to avoid conflict withJoel Sherrill2-4/+14
the system signals.h file. Moved POSIX_signals_Siginfo_node type definition to this file to allow confdefs.h to know the size per queued signal.
1998-04-18rtems_libio_number_iops is now defined in confdefs.h so the maximumJoel Sherrill1-1/+1
file descriptors is user configurable.
1998-04-18Changed to account for libio's maximum_semaphores as well as itsJoel Sherrill2-2/+10
memory requirements. Also added variable to tell libio how many file descriptors to allocate.
1998-04-18Changed version number so script will work.Joel Sherrill2-2/+2
1998-04-15Added bh, ch, dh, bl, cl, and dl register macros.Joel Sherrill1-0/+7
1998-04-15Numerous changes which in total greatly reduced the amount of sourceJoel Sherrill3-20/+18
code in each BSP's bspstart.c. These changes were: + confdefs.h now knows libio's semaphore requirements + shared/main.c now copies Configuration to BSP_Configuration + shared/main.c fills in the Cpu_table with default values This removed the need for rtems_libio_config() and the constant BSP_LIBIO_MAX_FDS in every BSP. Plus now the maximum number of open files can now be set on the gcc command line.
1998-04-15Per suggestion from Eric Norum, went from one initial extension setJoel Sherrill9-28/+83
to multiple. This lets the stack check extension be installed at system initialization time and avoids the BSP having to even know about its existence.
1998-04-14changed version to ralf-980414Joel Sherrill2-2/+2
1998-04-14Account for interrupt stack spaceJoel Sherrill2-2/+24
1998-04-14Ralf Corsepius suggested a way to get rid of UNIX compiler files and use ↵Joel Sherrill2-2/+1
gcc-target-default.cfg