Ignore:
Timestamp:
2013-12-29T14:32:55Z (10 years ago)
Author:
Martin Decky <martin@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
4c14b88, 6fa9a99d, 9be30cdf, aacdb8e
Parents:
2a13328
Message:

cherrypick important fixes and updates from lp:~jceel/helenos/leon3

File:
1 edited

Legend:

Unmodified
Added
Removed
  • kernel/arch/sparc32/include/arch/asm.h

    r2a13328 r208b5f5  
    161161        pil = psr.pil;
    162162       
     163        psr.pil = 0x00;
     164        psr_write(psr.value);
     165       
     166        return pil;
     167}
     168
     169NO_TRACE static inline ipl_t interrupts_disable(void)
     170{
     171        psr_reg_t psr;
     172        psr.value = psr_read();
     173       
     174        ipl_t pil;
     175        pil = psr.pil;
     176       
    163177        psr.pil = 0x0f;
    164178        psr_write(psr.value);
     
    167181}
    168182
    169 NO_TRACE static inline ipl_t interrupts_disable(void)
    170 {
    171         psr_reg_t psr;
    172         psr.value = psr_read();
    173        
    174         ipl_t pil;
    175         pil = psr.pil;
    176        
    177         psr.pil = 0;
    178         psr_write(psr.value);
    179        
    180         return pil;
    181 }
    182 
    183183NO_TRACE static inline void interrupts_restore(ipl_t ipl)
    184184{
     
    200200        psr_reg_t psr;
    201201        psr.value = psr_read();
    202         return psr.pil == 0;
     202        return (psr.pil == 0x0f);
    203203}
    204204
Note: See TracChangeset for help on using the changeset viewer.