Seeed-Studio / meta-st-odyssey

The yocto meta-layer suit for STM32MP1-ODYSSEY.
MIT License
4 stars 1 forks source link

Update for OpenSTLinux 4 (Kirkstone) #8

Open piratecarrot opened 2 years ago

piratecarrot commented 2 years ago

Should be updated for the latest OpenSTLinux

arduzilla commented 9 months ago

Indeed, but they do not care

mingzhangqun commented 3 weeks ago

We are actively upgrading.

rhaberkorn commented 3 weeks ago

I was using the patches from this layer successfully with Hardknott. Now I am trying to upgrade to Scarthgap. Let's see whether this works out. They changed a lot in meta-st-stm32mp. Perhaps I will also have to go back to 4.x after all.

mingzhangqun commented 2 weeks ago

Yeah, I'm working on mickledore. When I'm done testing, I'll release it.

rhaberkorn commented 1 week ago

@mingzhangqun Are you using the optee boot scheme? I was using "trusted", but they removed it beginning with 4.0. Still struggling with the migration to optee.

mingzhangqun commented 1 week ago

@rhaberkorn Yes, I'm using optee.

rhaberkorn commented 1 week ago

Yes, I'm using optee.

Do you have it already booting into u-boot?

mingzhangqun commented 1 week ago

Yes, I'm using optee.

Do you have it already booting into u-boot?

I'll do it this week.

mingzhangqun commented 2 days ago

@rhaberkorn I'm still working on mickledore, and I'm having some issues, and they'll be resolved as soon as possible. Image

rhaberkorn commented 1 day ago

@rhaberkorn I'm still working on mickledore, and I'm having some issues, and they'll be resolved as soon as possible.

Interesting, I had a very similar panic:

I/TC: Embedded DTB found
I/TC: OP-TEE version: 3.19.0-dev (gcc version 13.3.0 (GCC)) #11 Fri Oct 14 19:00:05 UTC 2022 arm
I/TC: WARNING: This OP-TEE configuration might be insecure!
I/TC: WARNING: Please check https://optee.readthedocs.io/en/latest/architecture/porting_guidelines.html
I/TC: Primary CPU initializing
E/TC:0 0 probe_driver_node:413 Failed to probe stm32_i2c on node i2c@40013000: 0xffff0006
E/TC:0 0 print_probe_list:366 |- Driver stm32_i2c on node i2c@40013000 failed
I/TC: Platform stm32mp1: flavor PLATFORM_FLAVOR - DT stm32mp157c-odyssey.dts
I/TC: DTB enables console (non-secure)
E/TC:0 0 probe_dt_drivers:750 Probe sequence result: 0x80000000
E/TC:0 0 print_probe_list:366 |- Driver stm32_i2c on node i2c@40013000 failed
E/TC:0 0 Panic
E/TC:0 0 TEE load address @ 0xde000000
E/TC:0 0 Call stack:
E/TC:0 0  0xde002375
E/TC:0 0  0xde0129c5
E/TC:0 0  0xde0120bd
E/TC:0 0  0xde0133c3
E/TC:0 0  0xde0021c5
E/TC:0 0  0xde00019c

This was on Scarthgap and the device tree is heavily modified compared to the Odyssey SOM, but I didn't touch the I2Cs. This is completely left as in stm32mp157c-odyssey.dtsi. The panic in both cases appears to be somehow linked to i2c2 (i2c@40013000). But I cannot exclude the possibility that I did some kind of mistake when I ported it. Especially, "exti_pwr" referenced in pmic, which is also on i2c2 no longer exists.

You can get the backtrace by adding EXTRA_OEMAKE += "CFG_UNWIND=y". There is a script in optee for analyzing the backtrace. That's where I stopped and would continue debugging.

mingzhangqun commented 1 day ago

I have solved the optee boot problem. This is mainly due to optee's lack of I2C clock support. You can try it with this commit, and I will push it later after I finish testing.