Ignore:
Timestamp:
Jan 21, 2014, 7:20:06 PM (10 years ago)
Author:
cfuguet
Message:
  • Adding volatile attribute for pointers used to address memory mapped hardware registers.
  • Removing the activation of interruptions before the execution of the ctx_switch function on the ioc_access function. This is to avoid been interrupted during the modification of task context variables.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • soft/giet_vm/giet_drivers/ioc_driver.c

    r263 r275  
    155155    }
    156156
    157     unsigned int * ioc_address = (unsigned int *) &seg_ioc_base ;
     157    volatile unsigned int * ioc_address = (unsigned int *) &seg_ioc_base ;
    158158
    159159    unsigned int length = count << 9;  // count * 512 bytes
     
    358358        else             ioc_address[BLOCK_DEVICE_OP] = BLOCK_DEVICE_READ;
    359359
    360         // Exit critical section
    361         _it_enable();
    362 
    363360        // deschedule task
    364361        _ctx_switch();                     
Note: See TracChangeset for help on using the changeset viewer.