EL Level C-Boot to U-Boot

Hi together,

I want to use the Jetson TX2. The Boot up process at some point goes to the C-Boot. This is started in EL-2. Then C-Boot initiate U-Boot. Does it drop the EL or is the U-Boot also started/runs with EL2?

Best,

Christian

Hi,

Sorry that I don’t quite understand what does “EL” stand for, could you elaborate?

Hi,

sorry. EL = Exception Level.

According to the NVIDIA docs, C-Boot runs with EL2. Question is, does C-Boot pass EL2 to U-Boot (i.e. U-Boot runs also in EL2) or does C-Boot pass EL1 to U-Boot?

Best,

Christian

hello christianb9,

may I know what’s your actual use-case?

please check developer guide, Jetson TX2 Boot Flow for reference.
the bootloader enables the secure monitor and switches to non-secure (EL2) mode before jumping to kernel. operating system shall be started at EL2.
you may also refer to below API to check the exception level, thanks
for example,
$L4T_Sources/r32.5/Linux_for_Tegra/source/public/u-boot/arch/arm/include/asm/system.h

133  static inline unsigned int current_el(void)
134  {
135  	unsigned int el;
136  	asm volatile("mrs %0, CurrentEL" : "=r" (el) : : "cc");
137  	return el >> 2;
138  }
2 Likes

Hi,

thank you very much! Yes, I took a look on the developer guide, however I couldn’t conclude that U-Boot also runs in EL2, as it only mentions that C-Boot runs in EL2.

My use case is simply a deep dive understanding whats going on on the lowest level :)