Changeset 76c356f in rtems


Ignore:
Timestamp:
Dec 3, 1999, 3:46:17 PM (21 years ago)
Author:
Joel Sherrill <joel.sherrill@…>
Branches:
4.10, 4.11, 4.8, 4.9, 5, master
Children:
a548c8a5
Parents:
1e4a7d4
Message:

Patch from Aleksey (Quality Quorum <qqi@…>) to change the
delay loop in this BSP. Here is his response to a question about
the patch:

Yes, or that other machine has a different chipset with different
timing requirements on enabling Gate 20. I am strongly suspecting
that it may some how related to the video card I am using (on my
old P-75 target it was plain PCI VGA, on my new one it is Diamond Stealth
3D 2000).

Location:
c/src/lib/libbsp/i386/pc386
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • c/src/lib/libbsp/i386/pc386/start/start16.S

    r1e4a7d4 r76c356f  
    116116        call    empty_8042
    117117
     118        call    delay
     119        call    delay
     120        call    delay
     121
    118122        movl    %cs:HDRSTART + HDROFF, %eax     #
    119123        pushl   %eax                            # jump to start of 32 bit code
     
    123127| delay
    124128+------------------------------------------------------------------------------
    125 | Delay is needed after doing I/O. We do it by writing to a non-existent port.
    126 +----------------------------------------------------------------------------*/
     129| Delay is needed after doing I/O.
     130|
     131| The outb version is OK on most machines BUT the loop version ...
     132|
     133| will delay for 1us on 1Gz machine, it will take a little bit
     134| longer on slower machines, however, it does not matter because we
     135| are going to call this function only a few times
     136
     137+----------------------------------------------------------------------------*/
     138        .p2align 4
    127139        .globl _delay
    128140        .globl delay
    129141delay:
    130142_delay:
    131         outb    %al, $0xED      # about 1uS delay
     143/*
     144        outb    %al, $0xED      # about 1uS delay on most machines
     145*/
     146/*
     147 
     148        movl    $0x200, %eax
     149delay1:
     150        dec     %eax
     151        jnz     delay1
    132152        ret
    133153
     
    140160| and we probably couldn't proceed anyway.
    141161+----------------------------------------------------------------------------*/
     162        .p2align 4
    142163        .globl _empty_8042
    143164        .globl empty_8042
  • c/src/lib/libbsp/i386/pc386/startup/ldsegs.S

    r1e4a7d4 r76c356f  
    5353        EXTERN (clockOff)
    5454
    55         .p2align 4
    5655/*----------------------------------------------------------------------------+
    5756| delay
    5857+------------------------------------------------------------------------------
    59 | Delay is needed after doing I/O. We do it by writing to a non-existent port.
     58| Delay is needed after doing I/O.
     59|
     60| The outb version is OK on most machines BUT the loop version ...
     61|
     62| will delay for 1us on 1Gz machine, it will take a little bit
     63| longer on slower machines, however, it does not matter because we
     64| are going to call this function only a few times
     65
    6066+----------------------------------------------------------------------------*/
    61 SYM(delay):
    62         outb    al, $0x80       # about 1uS delay
     67        .p2align 4
     68        .globl _delay
     69        .globl delay
     70delay:
     71_delay:
     72/*
     73        outb    %al, $0xED      # about 1uS delay on most machines
     74*/
     75/*
     76 
     77        movl    $0x200, %eax
     78delay1:
     79        dec     %eax
     80        jnz     delay1
    6381        ret
     82
    6483
    6584/*-------------------------------------------------------------------------+
Note: See TracChangeset for help on using the changeset viewer.