Changeset b51b1cd in mainline


Ignore:
Timestamp:
2012-09-06T12:53:22Z (12 years ago)
Author:
Jan Vesely <jano.vesely@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
c6b601b
Parents:
504f1756
Message:

arm32: Remove processor specific high vector setting.

We still need a reliable way to determine whether this extension is supported.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • kernel/arch/arm32/src/exception.c

    r504f1756 rb51b1cd  
    130130 * the normal vectors or the high vectors are to be used from
    131131 * reset." ARM Architecture Reference Manual A2.6.11 (p. 64 in the PDF).
     132 *
     133 * ARM920T (gta02) TRM A2.3.5 (PDF p. 36) and ARM926EJ-S (icp) 2.3.2 (PDF p. 42)
     134 * say that armv4 an armv5 chips that we support implement this.
    132135 */
    133136static void high_vectors(void)
    134137{
    135138        uint32_t control_reg = 0;
    136         // TODO CHeck the armv6 way and implement it
    137 #if defined(PROCESSOR_armv7_a) | defined(ROCESSOR_armv6)
    138139        asm volatile (
    139140                "mrc p15, 0, %[control_reg], c1, c0"
    140141                : [control_reg] "=r" (control_reg)
    141142        );
    142 #elif defined(PROCESSOR_armv4) | defined(PROCESSOR_armv5)
    143         asm volatile (
    144                 "mrc p15, 0, %[control_reg], c1, c0"
    145                 : [control_reg] "=r" (control_reg)
    146         );
    147 #endif
    148143       
    149144        /* switch on the high vectors bit */
    150145        control_reg |= CP15_R1_HIGH_VECTORS_BIT;
    151146       
    152 #if defined(PROCESSOR_armv7_a) | defined(ROCESSOR_armv6)
    153147        asm volatile (
    154148                "mcr p15, 0, %[control_reg], c1, c0"
    155149                :: [control_reg] "r" (control_reg)
    156150        );
    157 #elif defined(PROCESSOR_armv4) | defined(PROCESSOR_armv5)
    158         asm volatile (
    159                 "mcr p15, 0, %[control_reg], c1, c0"
    160                 :: [control_reg] "r" (control_reg)
    161         );
    162 #endif
    163151}
    164152#endif
Note: See TracChangeset for help on using the changeset viewer.