Thanks Petro
I've modified the nucleo-144/src/stm32_spi.c file by simply adding:
struct spi_dev_s *g_spiX;
and by adding
spi_register(g_spiX, X);
in the
where X is the spi device number (in my example spi2)
in the shell the /dev/spi2 is available.
Best regards
Roberto
On 3/6/22 12:49, Petro Karashchenko wrote:
Hello Roberto,
I'm asking this because I examined nucleo-144 board source code and
currently I do not see a "spi_register" call in board init files. So I
assume that you have some modified code and it is very hard to make
any conclusions while not seeing the code.
Best regards,
Petro
нд, 6 бер. 2022 р. о 13:40 Petro Karashchenko
<petro.karashche...@gmail.com> пише:
Hello Roberto,
It would be good if you can dump assembly that is generated. What
I see is that "intspi_register(FAR structspi_dev_s *spi, intbus)",
so I'm assuming that R0 should be "spi" and R1 should be "bus",
but in your dump "R0: 00000001 R1: 2004e840" those seems to be
inverted (00000001 seems to be a "bus" and "2004e840" seems to be
a "spi" pointer). The assembly code will show light on the dump
that you provided. As an alternative you can provide the defconfig
that you use if you are not using a custom board.
Best regards,
Petro
нд, 6 бер. 2022 р. о 10:54 Roberto Bucher
<roberto.buc...@supsi.ch> пише:
When I enable some dubug configs
I get the following error by enter in the serial shell:
sert: Assertion failed at file:spi/spi_driver.c line: 358
arm_registerdump: R0: 00000001 R1: 2004e840 R2: 40004800 R3:
20010684
arm_registerdump: R4: 2004e7a0 R5: 00000002 R6: 2004f370 FP:
20010670
arm_registerdump: R8: 00000000 SB: 00000000 SL: 00000000 R11:
00000000
arm_registerdump: IP: 00000003 SP: 2004f370 LR: 08005fad PC:
0800648e
arm_registerdump: xPSR: 61000000 PRIMASK: 00000000 CONTROL:
00000004
arm_registerdump: EXC_RETURN: ffffffe9
arm_dump_stack: User Stack:
On the line 358 of spi_driver.c there is this assertion:
/* Sanity check */
DEBUGASSERT(spi != NULL && (unsigned)bus < 1000);
Any Idea?
Best regards
Roberto