2019-08-19 20:37:17 +02:00
|
|
|
--- .pio/libdeps/livingroom8266/NeoPixelBus_ID547/src/internal/NeoEsp8266DmaMethod.h 2019-06-25 11:14:33.000000000 +0200
|
|
|
|
+++ .pio/libdeps/livingroom8266/NeoPixelBus_ID547/src/internal/NeoEsp8266DmaMethod.h.2 2019-06-25 11:14:40.000000000 +0200
|
2019-06-28 11:29:37 +02:00
|
|
|
@@ -195,7 +195,12 @@
|
2019-04-17 12:06:00 +02:00
|
|
|
_i2sBufDesc[indexDesc].sub_sof = 0;
|
|
|
|
_i2sBufDesc[indexDesc].datalen = blockSize;
|
|
|
|
_i2sBufDesc[indexDesc].blocksize = blockSize;
|
|
|
|
- _i2sBufDesc[indexDesc].buf_ptr = (uint32_t)is2Buffer;
|
2019-06-28 11:29:37 +02:00
|
|
|
+ union {
|
|
|
|
+ uint8_t *ptr;
|
|
|
|
+ uint32_t value;
|
|
|
|
+ } ptr;
|
|
|
|
+ ptr.ptr = is2Buffer;
|
|
|
|
+ _i2sBufDesc[indexDesc].buf_ptr = ptr.value;
|
2019-04-17 12:06:00 +02:00
|
|
|
_i2sBufDesc[indexDesc].unused = 0;
|
|
|
|
_i2sBufDesc[indexDesc].next_link_ptr = (uint32_t)&(_i2sBufDesc[indexDesc + 1]);
|
2019-06-28 11:29:37 +02:00
|
|
|
|
|
|
|
@@ -361,12 +366,15 @@
|
|
|
|
|
2019-04-17 12:06:00 +02:00
|
|
|
case NeoDmaState_Sending:
|
|
|
|
{
|
2019-06-28 11:29:37 +02:00
|
|
|
- slc_queue_item* finished_item = (slc_queue_item*)SLCRXEDA;
|
|
|
|
-
|
|
|
|
+ union {
|
|
|
|
+ slc_queue_item *ptr;
|
|
|
|
+ uint32_t value;
|
|
|
|
+ } ptr;
|
|
|
|
+ ptr.value = SLCRXEDA;
|
2019-04-17 12:06:00 +02:00
|
|
|
// 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);
|
2019-06-28 11:29:37 +02:00
|
|
|
+ (ptr.ptr + 1)->next_link_ptr = ptr.value;
|
|
|
|
|
|
|
|
s_this->_dmaState = NeoDmaState_Zeroing;
|
2019-04-17 12:06:00 +02:00
|
|
|
}
|