zynq::flash: enable big endian mode
This commit is contained in:
parent
f3676c945a
commit
aab82f6843
@ -10,7 +10,7 @@ impl<I: Iterator<Item = u32>> BytesTransferExt for I {
|
||||
fn bytes_transfer(self) -> BytesTransfer<Self> {
|
||||
BytesTransfer {
|
||||
iter: self,
|
||||
shift: 32,
|
||||
shift: 0,
|
||||
word: 0,
|
||||
}
|
||||
}
|
||||
@ -26,15 +26,15 @@ impl<I: Iterator<Item = u32> + Sized> Iterator for BytesTransfer<I> {
|
||||
type Item = u8;
|
||||
|
||||
fn next(&mut self) -> Option<u8> {
|
||||
if self.shift < 24 {
|
||||
self.shift += 8;
|
||||
if self.shift > 0 {
|
||||
self.shift -= 8;
|
||||
Some((self.word >> self.shift) as u8)
|
||||
} else {
|
||||
self.shift = 0;
|
||||
self.iter.next()
|
||||
.map(|word| {
|
||||
.and_then(|word| {
|
||||
self.shift = 32;
|
||||
self.word = word;
|
||||
word as u8
|
||||
self.next()
|
||||
})
|
||||
}
|
||||
}
|
||||
|
@ -272,6 +272,7 @@ impl Flash<()> {
|
||||
self.regs.config.modify(|_, w| w
|
||||
.man_start_en(true)
|
||||
.manual_cs(true)
|
||||
.endian(true)
|
||||
);
|
||||
|
||||
self.regs.lqspi_cfg.write(regs::LqspiCfg::zeroed()
|
||||
|
Loading…
Reference in New Issue
Block a user