Hi Bert, Please look your System.map and confirm it is generating the function board_ws2812_initialize(). Something it is not even included because some missing configuration.
You enabled DEBUG LED INFO, show you should see some messages in the console if it was called, see: drivers/leds/ws2812.c BR, Alan On 10/25/23, Bert Voldenuit <bertvolden...@gmail.com> wrote: > Hello, > > Actually, looking closer at the samd21 datasheet, my led pin can be > configured in SPI MOSI. > > In board/samd2l2/arduino-m0/src/ I added sam_ws2812.c, sam_ws2812.h which > are a adapted copy of the stm32 version. > Everything compiles but on "nsh> ls /dev", I can see that the led device > (/dev/leds0) is not here. > > I would like to debug with Syslog but I can't get any error messages in the > console. > I am expecting to get error messages in the console but I get only 'nsh> > ABD > > Now my bringup.c is looking like: > > #ifdef CONFIG_WS2812 > /* Configure and initialize the WS2812 LEDs. */ > #pragma message ("Configure and initialize the WS2812 LEDs with spi > driver") > > ret = board_ws2812_initialize(0, 2, CONFIG_WS2812_LED_COUNT); > if (ret < 0) > { > syslog(LOG_ERR, "ERROR: board_ws2812_initialize() failed: %d\n", ret); > } > #endif > > I setup the board.h with sercom2 to be SPI: > > /* SERCOM2 SPI is available on EXT2 > * > * PIN PORT SERCOM FUNCTION > * --- ------------------ ----------- > * ** PA17 SERCOM2 PAD2 SPI SS > * ** PA15 SERCOM2 PAD3 SPI MOSI > * ** PA8 SERCOM2 PAD0 SPI MISO > * ** PA9 SERCOM2 PAD1 SPI SCK > */ > > #define BOARD_SERCOM2_GCLKGEN 0 > #define BOARD_SERCOM2_SLOW_GCLKGEN BOARD_SERCOM05_SLOW_GCLKGEN > #define BOARD_SERCOM2_MUXCONFIG (SPI_CTRLA_DOPO_DOPAD231 | > SPI_CTRLA_DIPAD0) > #define BOARD_SERCOM2_PINMAP_PAD0 PORT_SERCOM2_PAD0_2 /* SPI_MISO */ > #define BOARD_SERCOM2_PINMAP_PAD2 0 /* microSD_SS */ > #define BOARD_SERCOM2_PINMAP_PAD3 PORT_SERCOM2_PAD3_1 /* SPI_MOSI */ > #define BOARD_SERCOM2_PINMAP_PAD1 PORT_SERCOM2_PAD1_2 /* SPI_SCK */ > > #define BOARD_SERCOM2_FREQUENCY BOARD_GCLK0_FREQUENCY > > > In menuconfig, I activated debug Syslog in > > Build Setup->Debug Option: > (0) Fortify Source > [*] Define NDEBUG globally > [*] Enable Debug Features > *** Debug SYSLOG Output Controls *** > [*] Enable Error Output > [*] Enable Warnings Output > [*] Enable Informational Debug Output > [ ] Enable Debug Assertions > *** Subsystem Debug Options *** > [ ] File System Debug Features > [ ] Graphics Debug Features > [ ] C Library Debug Features > [ ] Memory Manager Debug Features > [ ] Power-related Debug Features > [ ] Battery-related Debug Features > [ ] Scheduler Debug Features > *** OS Function Debug Options *** > [ ] Interrupt Controller Debug Features > *** Driver Debug Options *** > [*] Low-level LED Debug Features > [*] LED Driver Error Output > [*] LED Driver Warnings Output > [*] LED Driver Informational Output > [*] GPIO Debug Features > [*] GPIO Error Output > [*] GPIO Warnings Output > [*] GPIO Informational Output > [*] SPI Debug Features > [*] SPI Error Output > [*] SPI Warnings Output > [*] SPI Informational Output > [ ] Timer Debug Features > [ ] IPC (Interprocessor communication) Debug Features > [ ] Stack coloration > [ ] Compiler stack canaries > [ ] Generate stack usage information > (0) Detect use of large stack variables > [*] Generate Debug Symbols > > Device Driver -> System logging option: > *** SYSLOG options *** > (1) Maximum SYSLOG channels > [ ] RAM log device support > [ ] Use buffered output > [ ] Use interrupt buffer > *** Formatting options *** > [ ] Prepend timestamp to syslog message > [ ] Prepend priority to syslog message > [ ] Prepend process name to syslog message > [ ] Prepend process ID to syslog message > [ ] Prepend prefix to syslog message > [ ] Colored syslog output > *** SYSLOG channels *** > (/dev/ttyS0) System log device > [ ] Log to a character device > [ ] Log to stream > [*] Log to /dev/console > [*] Default SYSLOG device > [ ] SYSLOG rpmsg server character device > [ ] Syslog file output ---- > [*] SYSLOG character device > [ ] SYSLOG IOCTL support > > > Regards, > Bertrand. >