Changeset a03b609 in mainline for kernel/arch/arm32/include


Ignore:
Timestamp:
2013-01-19T18:17:27Z (13 years ago)
Author:
Jan Vesely <jano.vesely@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
26e3db2
Parents:
827aae5
Message:

arm32: Convert sctlr use to cp15 helpers.

Location:
kernel/arch/arm32/include
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • kernel/arch/arm32/include/cp15.h

    r827aae5 ra03b609  
    149149
    150150/* System control registers */
     151/* COntrol register bit values see ch. B4.1.130 of ARM Architecture Reference
     152 * Manual ARMv7-A and ARMv7-R edition, page 1687 */
     153enum {
     154        SCTLR_MMU_EN_FLAG            = 1 << 0,
     155        SCTLR_ALIGN_CHECK_EN_FLAG    = 1 << 1,  /* Allow alignemnt check */
     156        SCTLR_CACHE_EN_FLAG          = 1 << 2,
     157        SCTLR_CP15_BARRIER_EN_FLAG   = 1 << 5,
     158        SCTLR_B_EN_FLAG              = 1 << 7,  /* ARMv6-, big endian switch */
     159        SCTLR_SWAP_EN_FLAG           = 1 << 10,
     160        SCTLR_BRANCH_PREDICT_EN_FLAG = 1 << 11,
     161        SCTLR_INST_CACHE_EN_FLAG     = 1 << 12,
     162        SCTLR_HIGH_VECTORS_EN_FLAG   = 1 << 13,
     163        SCTLR_ROUND_ROBIN_EN_FLAG    = 1 << 14,
     164        SCTLR_HW_ACCESS_FLAG_EN_FLAG = 1 << 17,
     165        SCTLR_WRITE_XN_EN_FLAG       = 1 << 19, /* Only if virt. supported */
     166        SCTLR_USPCE_WRITE_XN_EN_FLAG = 1 << 20, /* Only if virt. supported */
     167        SCTLR_FAST_IRQ_EN_FLAG       = 1 << 21, /* Disable impl. specific feat*/
     168        SCTLR_UNALIGNED_EN_FLAG      = 1 << 22, /* Must be 1 on armv7 */
     169        SCTLR_IRQ_VECTORS_EN_FLAG    = 1 << 24,
     170        SCTLR_BIG_ENDIAN_EXC_FLAG    = 1 << 25,
     171        SCTLR_NMFI_EN_FLAG           = 1 << 27,
     172        SCTLR_TEX_REMAP_EN_FLAG      = 1 << 28,
     173        SCTLR_ACCESS_FLAG_EN_FLAG    = 1 << 29,
     174        SCTLR_THUMB_EXC_EN_FLAG      = 1 << 30,
     175};
    151176CONTROL_REG_GEN_READ(SCTLR, c1, 0, c0, 0);
    152177CONTROL_REG_GEN_WRITE(SCTLR, c1, 0, c0, 0);
  • kernel/arch/arm32/include/regutils.h

    r827aae5 ra03b609  
    4040#define STATUS_REG_IRQ_DISABLED_BIT  (1 << 7)
    4141#define STATUS_REG_MODE_MASK         0x1f
    42 
    43 /* COntrol register bit values see ch. B4.1.130 of ARM Architecture Reference
    44  * Manual ARMv7-A and ARMv7-R edition, page 1687 */
    45 #define CP15_R1_MMU_EN            (1 << 0)
    46 #define CP15_R1_ALIGN_CHECK_EN    (1 << 1)  /* Allow alignemnt check */
    47 #define CP15_R1_CACHE_EN          (1 << 2)
    48 #define CP15_R1_CP15_BARRIER_EN   (1 << 5)
    49 #define CP15_R1_B_EN              (1 << 7)  /* ARMv6- only, big endian switch */
    50 #define CP15_R1_SWAP_EN           (1 << 10)
    51 #define CP15_R1_BRANCH_PREDICT_EN (1 << 11)
    52 #define CP15_R1_INST_CACHE_EN     (1 << 12)
    53 #define CP15_R1_HIGH_VECTORS_EN   (1 << 13)
    54 #define CP15_R1_ROUND_ROBIN_EN    (1 << 14)
    55 #define CP15_R1_HW_ACCESS_FLAG_EN (1 << 17)
    56 #define CP15_R1_WRITE_XN_EN       (1 << 19) /* Only if virt. supported */
    57 #define CP15_R1_USPCE_WRITE_XN_EN (1 << 20) /* Only if virt. supported */
    58 #define CP15_R1_FAST_IRQ_EN       (1 << 21) /* Disbale impl.specific features */
    59 #define CP15_R1_UNALIGNED_EN      (1 << 22) /* Must be 1 on armv7 */
    60 #define CP15_R1_IRQ_VECTORS_EN    (1 << 24)
    61 #define CP15_R1_BIG_ENDIAN_EXC    (1 << 25)
    62 #define CP15_R1_NMFI_EN           (1 << 27)
    63 #define CP15_R1_TEX_REMAP_EN      (1 << 28)
    64 #define CP15_R1_ACCESS_FLAG_EN    (1 << 29)
    65 #define CP15_R1_THUMB_EXC_EN      (1 << 30)
    6642
    6743/* ARM Processor Operation Modes */
Note: See TracChangeset for help on using the changeset viewer.