mirror of
https://github.com/esphome/esphome.git
synced 2024-11-10 01:07:45 +01:00
27 lines
1.4 KiB
Diff
27 lines
1.4 KiB
Diff
|
--- .piolibdeps/NeoPixelBus_ID547/src/internal/NeoEsp8266DmaMethod.h 2018-12-25 06:37:53.000000000 +0100
|
||
|
+++ .piolibdeps/NeoPixelBus_ID547/src/internal/NeoEsp8266DmaMethod.h.2 2019-03-01 22:18:10.000000000 +0100
|
||
|
@@ -169,7 +169,7 @@
|
||
|
_i2sBufDesc[indexDesc].sub_sof = 0;
|
||
|
_i2sBufDesc[indexDesc].datalen = blockSize;
|
||
|
_i2sBufDesc[indexDesc].blocksize = blockSize;
|
||
|
- _i2sBufDesc[indexDesc].buf_ptr = (uint32_t)is2Buffer;
|
||
|
+ _i2sBufDesc[indexDesc].buf_ptr = is2Buffer;
|
||
|
_i2sBufDesc[indexDesc].unused = 0;
|
||
|
_i2sBufDesc[indexDesc].next_link_ptr = (uint32_t)&(_i2sBufDesc[indexDesc + 1]);
|
||
|
|
||
|
@@ -329,11 +329,13 @@
|
||
|
case NeoDmaState_Sending:
|
||
|
{
|
||
|
slc_queue_item* finished_item = (slc_queue_item*)SLCRXEDA;
|
||
|
+ uint32_t **ptr = reinterpret_cast<uint32_t **>(&finished_item);
|
||
|
+ uint32_t dat = *reinterpret_cast<uint32_t *>(ptr);
|
||
|
|
||
|
// the data block had actual data sent
|
||
|
// point last state block to first state block thus
|
||
|
// just looping and not sending the data blocks
|
||
|
- (finished_item + 1)->next_link_ptr = (uint32_t)(finished_item);
|
||
|
+ (finished_item + 1)->next_link_ptr = dat;
|
||
|
|
||
|
s_this->_dmaState = NeoDmaState_Idle;
|
||
|
}
|