@@ -28,6 +28,16 @@ WinbondFlash::requestWriteBlock(
28
28
, const std::uint32_t _blockSize
29
29
)
30
30
{
31
+ onBlockWriteRequestCompleted.emit ();
32
+ }
33
+
34
+ void
35
+ WinbondFlash::requestReadBlock (
36
+ const std::uint32_t _address
37
+ , const std::uint32_t _blockSize
38
+ )
39
+ {
40
+ onBlockReadRequestCompleted.emit ();
31
41
}
32
42
33
43
void
@@ -43,20 +53,20 @@ WinbondFlash::requestChipErase()
43
53
void
44
54
WinbondFlash::requestDeviceId ()
45
55
{
46
- Interface::Spi::Transaction requestIdCommandTransaction = writeTransaction (
56
+ Interface::Spi::Transaction requestId = writeTransaction (
47
57
WindbondCommandSet::ReadUniqueId
48
58
, WindbondCommandSet::DummyByte
49
59
, WindbondCommandSet::DummyByte
50
60
, WindbondCommandSet::DummyByte
51
61
, WindbondCommandSet::DummyByte
52
62
);
53
- m_pBusPtr->addTransaction ( std::move ( requestIdCommandTransaction ) );
63
+ m_pBusPtr->addTransaction ( std::move ( requestId ) );
54
64
55
65
56
- Interface::Spi::Transaction receiveDataTranscation =
66
+ Interface::Spi::Transaction receiveData =
57
67
readTransaction ( WindbondCommandSet::UniqueIdLength );
58
68
59
- receiveDataTranscation .afterTransaction =
69
+ receiveData .afterTransaction =
60
70
[this ]
61
71
{
62
72
const auto & dmaReceiveBuffer = m_pBusPtr->getDmaBufferReceive ();
@@ -68,7 +78,7 @@ WinbondFlash::requestDeviceId()
68
78
onRequestDeviceIdCompleted.emit ();
69
79
};
70
80
71
- m_pBusPtr->addTransaction ( std::move ( receiveDataTranscation ) );
81
+ m_pBusPtr->addTransaction ( std::move ( receiveData ) );
72
82
m_pBusPtr->runQueue ();
73
83
}
74
84
@@ -80,9 +90,9 @@ WinbondFlash::requestJEDEDCId()
80
90
);
81
91
m_pBusPtr->addTransaction ( std::move ( requestIdCommandTransaction ) );
82
92
83
- Interface::Spi::Transaction receiveDataTranscation =
93
+ Interface::Spi::Transaction receiveData =
84
94
readTransaction ( WindbondCommandSet::JedecIdLength );
85
- receiveDataTranscation .afterTransaction =
95
+ receiveData .afterTransaction =
86
96
[this ]
87
97
{
88
98
std::uint32_t JedecDeviceId{};
@@ -93,18 +103,29 @@ WinbondFlash::requestJEDEDCId()
93
103
}
94
104
onRequestJedecIdCompleted.emit (JedecDeviceId);
95
105
};
106
+ m_pBusPtr->addTransaction ( std::move ( receiveData ) );
107
+ m_pBusPtr->runQueue ();
96
108
}
97
109
98
110
void
99
111
WinbondFlash::requestEnterSleepMode ()
100
112
{
101
-
113
+ Interface::Spi::Transaction requestPowerdown = writeTransaction (
114
+ WindbondCommandSet::PowerDownMode
115
+ );
116
+ m_pBusPtr->addTransaction ( std::move ( requestPowerdown ) );
117
+ m_pBusPtr->runQueue ();
102
118
}
103
119
104
120
void
105
121
WinbondFlash::requestRestoreFromSleepMode ()
106
122
{
107
-
123
+ Interface::Spi::Transaction requestRestoreFromSleep
124
+ = writeTransaction (
125
+ WindbondCommandSet::ResumePowerDownMode
126
+ );
127
+ m_pBusPtr->addTransaction ( std::move ( requestRestoreFromSleep ) );
128
+ m_pBusPtr->runQueue ();
108
129
};
109
130
110
131
IFlashStorageDriver::TDeviceIdType&
0 commit comments