#ifndef CONFIG_CPU_TTBR0_PAN /* * TTBR0/TTBR1 split (PAGE_OFFSET): * 0x40000000: T0SZ = 2, T1SZ = 0 (not used) * 0x80000000: T0SZ = 0, T1SZ = 1 * 0xc0000000: T0SZ = 0, T1SZ = 2 * * Only use this feature if PHYS_OFFSET <= PAGE_OFFSET, otherwise * booting secondary CPUs would end up using TTBR1 for the identity * mapping set up in TTBR0.
*/ #ifdefined CONFIG_VMSPLIT_2G #define TTBR1_OFFSET 16 /* skip two L1 entries */ #elifdefined CONFIG_VMSPLIT_3G #define TTBR1_OFFSET (4096 * (1 + 3)) /* only L2, skip pgd + 3*pmd */ #else #define TTBR1_OFFSET 0 #endif
#define TTBR1_SIZE (((PAGE_OFFSET >> 30) - 1) << 16) #else /* * With CONFIG_CPU_TTBR0_PAN enabled, TTBR1 is only used during uaccess * disabled regions when TTBR0 is disabled.
*/ #define TTBR1_OFFSET 0 /* pointing to swapper_pg_dir */ #define TTBR1_SIZE 0 /* TTBR1 size controlled via TTBCR.T0SZ */ #endif
/* * TTBCR register bits. * * The ORGN0 and IRGN0 bits enables different forms of caching when * walking the translation table. Clearing these bits (which is claimed * to be the reset default) means "normal memory, [outer|inner] * non-cacheable"
*/ #define TTBCR_EAE (1 << 31) #define TTBCR_IMP (1 << 30) #define TTBCR_SH1_MASK (3 << 28) #define TTBCR_ORGN1_MASK (3 << 26) #define TTBCR_IRGN1_MASK (3 << 24) #define TTBCR_EPD1 (1 << 23) #define TTBCR_A1 (1 << 22) #define TTBCR_T1SZ_MASK (7 << 16) #define TTBCR_SH0_MASK (3 << 12) #define TTBCR_ORGN0_MASK (3 << 10) #define TTBCR_IRGN0_MASK (3 << 8) #define TTBCR_EPD0 (1 << 7) #define TTBCR_T0SZ_MASK (7 << 0)
#endif
Messung V0.5
¤ Dauer der Verarbeitung: 0.0 Sekunden
(vorverarbeitet)
¤
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.