Z niejasnego powodu mamy hard fault w tej ścieżce:
Reading symbols from ../../dmgpio/build/dmgpio...
(gdb) bt
#0 Dmod_GetLogLevel () at /data/projects/chocotechnologies/public/dmdevfs/build/_deps/dmod-src/src/module/dmod_module.c:19
#1 0x20025076 in prepare_driver_module (driver_name=driver_name@entry=0x20014864 "dmgpio", was_loaded=was_loaded@entry=0x20014837, was_enabled=was_enabled@entry=0x20014836)
at /data/projects/chocotechnologies/public/dmdevfs/src/dmdevfs.c:1250
#2 0x20026218 in configure_driver (driver_name=driver_name@entry=0x20014864 "dmgpio", config_ctx=config_ctx@entry=0x2002c3fc) at /data/projects/chocotechnologies/public/dmdevfs/src/dmdevfs.c:908
#3 0x2002680e in configure_drivers (ctx=ctx@entry=0x2002b718, driver_name=driver_name@entry=0x200148e4 "dmgpio", config_path=config_path@entry=0x20014904 "/configs/dmgpio")
at /data/projects/chocotechnologies/public/dmdevfs/src/dmdevfs.c:863
#4 0x2002689c in configure_drivers (ctx=ctx@entry=0x2002b718, driver_name=0x200148e4 "dmgpio", driver_name@entry=0x0 <ModuleHeader>, config_path=0x2002b768 "/configs")
at /data/projects/chocotechnologies/public/dmdevfs/src/dmdevfs.c:888
#5 0x2002699e in dmfsi_dmdevfs_init (config=0x8021318 "/configs") at /data/projects/chocotechnologies/public/dmdevfs/src/dmdevfs.c:161
#6 0x08004648 in add_mount_point (mount_point=0x80213b0 "/dev", fs_context=0x200247e0, config=0x8021318 "/configs") at /data/projects/chocotechnologies/public/dmod-boot/lib/dmvfs/src/dmvfs.c:673
#7 0x08004d6e in dmvfs_mount_fs (fs_name=0x80213b8 "dmdevfs", mount_point=0x80213b0 "/dev", config=0x8021318 "/configs") at /data/projects/chocotechnologies/public/dmod-boot/lib/dmvfs/src/dmvfs.c:969
#8 0x08000850 in mount_embedded_filesystems () at /data/projects/chocotechnologies/public/dmod-boot/src/main.c:309
#9 0x08000d68 in main (argc=0, argv=0x0 <ModuleHeader>) at /data/projects/chocotechnologies/public/dmod-boot/src/main.c:493
(gdb) p Dmod_EnterCritical
$7 = (void (*)(void)) 0xd3aefbda
Scenariusz jest prosty:
- Budujemy projekt w konfiguracji dla boarda stm32f746g-disco
- Odpalamy go i czekamy aż się zainicjalizuje
- W efekcie podczas konfiguracji jednego z driverów, po wydrukowaniu loga, mamy hard fault
Błąd jest obserwowany na prawdziwej płytce stm32f7 discovery, nie jestem pewien czy to się reprodukuje w emulacji, ale warto sprawdzić w celach debugowych. Przypominam, że to jest bardzo proste, aby uruchomić to z renode w dmod-boot. Source code modułów raczej nie powinien mieć znaczenia w tym bugu, jako, że błąd pojawia się w logowaniu w dmod, no ale jeśli ma znaczenie to tutaj są źródła:
https://github.com/choco-technologies/dmdevfs
https://github.com/choco-technologies/dmgpio
Spróbuj zreprodukować sobie błąd, a następnie przedebugować go i rozwiązać.
Z niejasnego powodu mamy hard fault w tej ścieżce:
Scenariusz jest prosty:
Błąd jest obserwowany na prawdziwej płytce stm32f7 discovery, nie jestem pewien czy to się reprodukuje w emulacji, ale warto sprawdzić w celach debugowych. Przypominam, że to jest bardzo proste, aby uruchomić to z renode w dmod-boot. Source code modułów raczej nie powinien mieć znaczenia w tym bugu, jako, że błąd pojawia się w logowaniu w dmod, no ale jeśli ma znaczenie to tutaj są źródła:
https://github.com/choco-technologies/dmdevfs
https://github.com/choco-technologies/dmgpio
Spróbuj zreprodukować sobie błąd, a następnie przedebugować go i rozwiązać.