Changeset 5fcd537 in mainline for kernel/arch/arm32/include


Ignore:
Timestamp:
2013-01-19T02:25:08Z (13 years ago)
Author:
Jan Vesely <jano.vesely@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
bad1f53
Parents:
ae86f89 (diff), 660e8fa (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the (diff) links above to see all the changes relative to each parent.
Message:

Merge mainline changes.

Includes bbxm fpu fix and other arm changes.
Merge fix: arch defines in fpu_context.c

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

Legend:

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

    rae86f89 r5fcd537  
    3939/*
    4040 * TODO: implement true ARM memory barriers for macros below.
     41 * ARMv6 introduced user access of the following commands:
     42 * • Prefetch flush
     43 * • Data synchronization barrier
     44 * • Data memory barrier
     45 * • Clean and prefetch range operations.
     46 * ARM Architecture Reference Manual version I ch. B.3.2.1 p. B3-4
    4147 */
    4248#define CS_ENTER_BARRIER()  asm volatile ("" ::: "memory")
     
    8894 */
    8995
    90 /* Available on both all supported arms,
     96#ifdef PROCESSOR_ARCH_armv7_a
     97#define smc_coherence(a) asm volatile ( "isb" ::: "memory")
     98#define smc_coherence_block(a, l) smc_coherence(a)
     99#else
     100/* Available on all supported arms,
    91101 * invalidates entire ICache so the written value does not matter. */
     102//TODO might be PL1 only on armv5 -
    92103#define smc_coherence(a) asm volatile ( "mcr p15, 0, r0, c7, c5, 0")
    93104#define smc_coherence_block(a, l) smc_coherence(a)
     105#endif
    94106
    95107
  • kernel/arch/arm32/include/regutils.h

    rae86f89 r5fcd537  
    6666
    6767/* ARM Processor Operation Modes */
    68 #define USER_MODE        0x10
    69 #define FIQ_MODE         0x11
    70 #define IRQ_MODE         0x12
    71 #define SUPERVISOR_MODE  0x13
    72 #define ABORT_MODE       0x17
    73 #define UNDEFINED_MODE   0x1b
    74 #define SYSTEM_MODE      0x1f
    75 
     68enum {
     69        USER_MODE = 0x10,
     70        FIQ_MODE = 0x11,
     71        IRQ_MODE = 0x12,
     72        SUPERVISOR_MODE = 0x13,
     73        MONITOR_MODE = 0x16,
     74        ABORT_MODE = 0x17,
     75        HYPERVISOR_MODE = 0x1a,
     76        UNDEFINED_MODE = 0x1b,
     77        SYSTEM_MODE = 0x1f,
     78        MODE_MASK = 0x1f,
     79};
    7680/* [CS]PRS manipulation macros */
    7781#define GEN_STATUS_READ(nm, reg) \
Note: See TracChangeset for help on using the changeset viewer.