Fork us on GitHub Follow us on Facebook Follow us on Twitter

Ignore:
Timestamp:
2021-08-22T19:08:44Z (8 weeks ago)
Author:
Martin Decky <martin@…>
Branches:
master
Children:
c21cc26
Parents:
95b7d4df
Message:

Implement support for HiKey? 960

Initial support for the 96Boards HiKey? 960 board.

  • The kernel identity mapping has been extended to 4 GiB. The initial bootstrap mapping maps 3 GiB as nornal memory and the next 1 GiB as device memory to support early UART debugging output.
  • The istate_t has been padded in order to preserve the stack pointer alignment invariant.

The current implementation is limited to UP and UART input/output.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • kernel/arch/arm64/include/arch/istate_struct.h

    r95b7d4df r06f10ac  
    6565#define ISTATE_OFFSET_X29    0x108
    6666#define ISTATE_OFFSET_X30    0x110
    67 #define ISTATE_SIZE          0x118
     67#define ISTATE_OFFSET_PAD0   0x118
     68#define ISTATE_SIZE          0x120
    6869
    6970#ifndef __ASSEMBLER__
     
    109110        /* Link Register. */
    110111        uint64_t x30;
     112
     113        /*
     114         * ARM64 mandates that the stack pointer is always aligned to
     115         * a 16-byte boundary. To satisfy this condition, the size of
     116         * this data structure needs to be also a multiple of 16 bytes.
     117         * This is the reason for this padding.
     118         */
     119        uint64_t pad0;
    111120} istate_t;
    112121
    113122#endif
     123
    114124#endif
Note: See TracChangeset for help on using the changeset viewer.