forked from Imagelibrary/rtems
2004-05-21 Till Strauman <strauman@slac.stanford.edu>
* PR 624/bsps startup/bspstart.c: When probing the memory, make sure not to corrupt the application. Only probe addresses beyond rtemsFreeMemStart. * Let IBMPC_outch() convert LF -> CRLF to avoid printk scrambling the screen.
This commit is contained in:
@@ -1,3 +1,11 @@
|
|||||||
|
2004-05-21 Till Strauman <strauman@slac.stanford.edu>
|
||||||
|
|
||||||
|
* PR 624/bsps
|
||||||
|
startup/bspstart.c: When probing the memory, make sure not to
|
||||||
|
corrupt the application. Only probe addresses beyond rtemsFreeMemStart.
|
||||||
|
* Let IBMPC_outch() convert LF -> CRLF to avoid printk scrambling
|
||||||
|
the screen.
|
||||||
|
|
||||||
2003-10-02 Till Strauman <strauman@slac.stanford.edu>
|
2003-10-02 Till Strauman <strauman@slac.stanford.edu>
|
||||||
|
|
||||||
PR 502/bsps
|
PR 502/bsps
|
||||||
|
|||||||
@@ -270,8 +270,11 @@ _IBMPC_outch(char c)
|
|||||||
{
|
{
|
||||||
static int escaped = 0;
|
static int escaped = 0;
|
||||||
|
|
||||||
if ( ! (escaped = handleEscape(escaped, c)) )
|
if ( ! (escaped = handleEscape(escaped, c)) ) {
|
||||||
|
if ( '\n' == c )
|
||||||
|
videoPutChar('\r');
|
||||||
videoPutChar(c);
|
videoPutChar(c);
|
||||||
|
}
|
||||||
} /* _IBMPC_outch */
|
} /* _IBMPC_outch */
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -82,12 +82,18 @@ void bsp_postdriver_hook(void);
|
|||||||
void bsp_pretasking_hook(void)
|
void bsp_pretasking_hook(void)
|
||||||
{
|
{
|
||||||
rtems_unsigned32 topAddr, val;
|
rtems_unsigned32 topAddr, val;
|
||||||
int i;
|
int i, lowest;
|
||||||
|
|
||||||
|
|
||||||
if (rtemsFreeMemStart & (CPU_ALIGNMENT - 1)) /* not aligned => align it */
|
if (rtemsFreeMemStart & (CPU_ALIGNMENT - 1)) /* not aligned => align it */
|
||||||
rtemsFreeMemStart = (rtemsFreeMemStart+CPU_ALIGNMENT) & ~(CPU_ALIGNMENT-1);
|
rtemsFreeMemStart = (rtemsFreeMemStart+CPU_ALIGNMENT) & ~(CPU_ALIGNMENT-1);
|
||||||
|
|
||||||
|
/* find the lowest 1M boundary to probe */
|
||||||
|
lowest = ((rtemsFreeMemStart + (1<<20)) >> 20) + 1;
|
||||||
|
if ( lowest < 2 )
|
||||||
|
lowest = 2;
|
||||||
|
|
||||||
|
|
||||||
if(_heap_size == 0)
|
if(_heap_size == 0)
|
||||||
{
|
{
|
||||||
/*
|
/*
|
||||||
@@ -95,13 +101,13 @@ void bsp_pretasking_hook(void)
|
|||||||
* between 2M and 2048M.
|
* between 2M and 2048M.
|
||||||
* let us first write
|
* let us first write
|
||||||
*/
|
*/
|
||||||
for(i=2048; i>=2; i--)
|
for(i=2048; i>=lowest; i--)
|
||||||
{
|
{
|
||||||
topAddr = i*1024*1024 - 4;
|
topAddr = i*1024*1024 - 4;
|
||||||
*(volatile rtems_unsigned32 *)topAddr = topAddr;
|
*(volatile rtems_unsigned32 *)topAddr = topAddr;
|
||||||
}
|
}
|
||||||
|
|
||||||
for(i=2; i<=2048; i++)
|
for(i=lowest; i<=2048; i++)
|
||||||
{
|
{
|
||||||
topAddr = i*1024*1024 - 4;
|
topAddr = i*1024*1024 - 4;
|
||||||
val = *(rtems_unsigned32 *)topAddr;
|
val = *(rtems_unsigned32 *)topAddr;
|
||||||
|
|||||||
Reference in New Issue
Block a user