Chat here about code rewrites, mods, etc... with respect to the github project https://github.com/esp8266/Arduino

Moderator: igrr

User avatar
By raat1979
#89432 I was playing around with the ESP8266 DMA/SLC.

In my search for documentation I ran into the following URL:
https://github.com/espressif/ESP8266_RT ... c_struct.h

at this URL the SLC registers are mapped in structures for the SLCC0 register there is a structure
Code: Select allSLCC0


this structure maps to the SLC (DMA) CONF0 register macros in
https://github.com/arduino/esp8266/blob ... eri.h#L639

in the arduino code we have
Code: Select all#define SLCMM     (0x3) //SLC_MODE
#define SLCM      (12)  //SLC_MODE_S


in the structure this is split in 2 and has actually 2 more flags
https://github.com/espressif/ESP8266_RT ... ruct.h#L40

as bit shift macros these would become (kept the structure keys for easy mapping)
Code: Select all#define txdata_burst_en (1 <<13)    // currently defined as SLCMM  (2 bits)   
#define txdscr_burst_en (1 <<12)    // currently defined as SLCMM  (2 bits)
#define txlink_auto_ret (1 <<11)    // not defined
#define rxlink_auto_ret (1 <<10)    // not defined


is there anyone who previously looked into this and what the effects are of setting/unsetting these flags?