News for hackers. Stuff that matters.
Re:M.2 on a Raspberry Pi – The Tofu CM4 Carrier Board by nimbius on Friday March 12, 2021 @12:42PM (#26438465)
ME isnt required at all...

https://www.csoonline.com/article/3220476/researchers-say-no...

To explain this again, it technically is a guest. The GPU cores run a real time operating system called ThreadX. This operating system is closed source and rules the system without the open source Linux Kernel being aware of it.

When the Raspberry Pi starts booting the CPU is completely disconnected (technically in reset state) and the GPU is the one that starts the system. You can have a look at the `/boot` folder and you will see some of the binary blobs used by the GPU to both start the CPU and run its own ThreadX OS (bootcode.bin and start.elf). You can learn more details about the boot process here.

After the GPU has the CPU load the Linux Kernel, it doesn’t just stay there waiting to act as a graphics-processing-unit. The GPU is still in charge.

IME is a different beast entirely.

Re:M.2 on a Raspberry Pi – The Tofu CM4 Carrier Board by tyingq on Friday March 12, 2021 @01:00PM (#26438688)
"ME isn't required at all..."

The document you linked refers to a more technical one that explains they don't disable the ME until after the main OS is booted, because...

"The disappointing fact is that on modern computers, it is impossible to completely disable ME. This is primarily due to the fact that this technology is responsible for initialization, power management, and launch of the main processor."

http://blog.ptsecurity.com/2017/08/disabling-intel-me.html

So, it is serving the same role as the Rpi VideoCore.

Re:M.2 on a Raspberry Pi – The Tofu CM4 Carrier Board by monocasa on Friday March 12, 2021 @12:48PM (#26438547)
ME is still required; that strap option that the article describes just disables the stuff like it's network stack and remote admin facilities after it has started the Intel cores. It is still required to be on for power management for instance.

Also, interestingly you can swap out the terms on your paragraph and it's still true

> When an Intel CPU starts booting the CPU is completely disconnected (technically in reset state) and the ME is the one that starts the system. You can have a look at the boot flash partitions and you will see some of the binary blobs used by the ME to both start the CPU and run its own ThreadX OS.

Although albeit, on newer MEs they switched from ThreadX to Minix. The ME is very very very similar.

"Technically" it's not a guest relationship, the ARM cores start in EL3 (above hypervisor mode in secure mode).

And none of this show any perf costs to having a management core (except maybe some minimal bandwidth pressure?)

Re:M.2 on a Raspberry Pi – The Tofu CM4 Carrier Board by danaliv on Friday March 12, 2021 @02:44PM (#26440043)
> ThreadX ... rules the system

> The GPU is still in charge

Can you explain in specific, concrete terms what this means?

For example: I've read that the undervoltage monitoring happens on the ThreadX process, and that it throttles the ARM cores when low voltage is detected. The vcgencmd has more info on this, including the following bit field returned by vcgencmd get_throttled:

    Bit Hex value   Meaning
    0          1    Under-voltage detected
    1          2    Arm frequency capped
    2          4    Currently throttled
    3          8    Soft temperature limit active
    16     10000    Under-voltage has occurred
    17     20000    Arm frequency capping has occurred
    18     40000    Throttling has occurred
    19     80000    Soft temperature limit has occurred
What else does it do?
Re:M.2 on a Raspberry Pi – The Tofu CM4 Carrier Board by ylyn on Friday March 12, 2021 @12:47PM (#26438530)
It's not running as a hypervisor. A hypervisor is specifically something that hosts VMs. The OS running on the ARM core is not running in a VM.
Re:M.2 on a Raspberry Pi – The Tofu CM4 Carrier Board by beatrobot on Friday March 12, 2021 @01:02PM (#26438720)
Seem similar to the CSME on Intel platforms

https://igor-blue.github.io/2021/02/04/secure-boot.html#earl...