Let start_write_repeated accept pointer instead of slice
This commit is contained in:
parent
662bb5797f
commit
e9a2c4a9e3
@ -78,7 +78,7 @@ foreach_dma_channel! {
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
unsafe fn start_write_repeated<W: Word>(&mut self, _request: Request, repeated: &[W; 1], count: usize, reg_addr: *mut W, options: TransferOptions) {
|
unsafe fn start_write_repeated<W: Word>(&mut self, _request: Request, repeated: *const [W], count: usize, reg_addr: *mut W, options: TransferOptions) {
|
||||||
low_level_api::start_transfer(
|
low_level_api::start_transfer(
|
||||||
pac::$dma_peri,
|
pac::$dma_peri,
|
||||||
$channel_num,
|
$channel_num,
|
||||||
@ -86,7 +86,7 @@ foreach_dma_channel! {
|
|||||||
_request,
|
_request,
|
||||||
vals::Dir::FROMMEMORY,
|
vals::Dir::FROMMEMORY,
|
||||||
reg_addr as *const u32,
|
reg_addr as *const u32,
|
||||||
repeated.as_ptr() as *mut u32,
|
repeated as *mut u32,
|
||||||
count,
|
count,
|
||||||
false,
|
false,
|
||||||
vals::Size::from(W::bits()),
|
vals::Size::from(W::bits()),
|
||||||
|
@ -102,14 +102,14 @@ foreach_dma_channel! {
|
|||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
unsafe fn start_write_repeated<W: Word>(&mut self, request: Request, repeated: &[W; 1], count: usize, reg_addr: *mut W, options: TransferOptions) {
|
unsafe fn start_write_repeated<W: Word>(&mut self, request: Request, repeated: *const [W], count: usize, reg_addr: *mut W, options: TransferOptions) {
|
||||||
low_level_api::start_transfer(
|
low_level_api::start_transfer(
|
||||||
pac::$dma_peri,
|
pac::$dma_peri,
|
||||||
$channel_num,
|
$channel_num,
|
||||||
request,
|
request,
|
||||||
vals::Dir::MEMORYTOPERIPHERAL,
|
vals::Dir::MEMORYTOPERIPHERAL,
|
||||||
reg_addr as *const u32,
|
reg_addr as *const u32,
|
||||||
repeated.as_ptr() as *mut u32,
|
repeated as *mut u32,
|
||||||
count,
|
count,
|
||||||
false,
|
false,
|
||||||
vals::Size::from(W::bits()),
|
vals::Size::from(W::bits()),
|
||||||
|
@ -75,14 +75,14 @@ foreach_dma_channel! {
|
|||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
unsafe fn start_write_repeated<W: Word>(&mut self, request: Request, repeated: &[W; 1], count: usize, reg_addr: *mut W, options: TransferOptions) {
|
unsafe fn start_write_repeated<W: Word>(&mut self, request: Request, repeated: *const [W], count: usize, reg_addr: *mut W, options: TransferOptions) {
|
||||||
low_level_api::start_transfer(
|
low_level_api::start_transfer(
|
||||||
pac::$dma_peri,
|
pac::$dma_peri,
|
||||||
$channel_num,
|
$channel_num,
|
||||||
request,
|
request,
|
||||||
low_level_api::Dir::MemoryToPeripheral,
|
low_level_api::Dir::MemoryToPeripheral,
|
||||||
reg_addr as *const u32,
|
reg_addr as *const u32,
|
||||||
repeated.as_ptr() as *mut u32,
|
repeated as *mut u32,
|
||||||
count,
|
count,
|
||||||
false,
|
false,
|
||||||
W::bits(),
|
W::bits(),
|
||||||
|
@ -59,7 +59,7 @@ pub(crate) mod sealed {
|
|||||||
unsafe fn start_write_repeated<W: super::Word>(
|
unsafe fn start_write_repeated<W: super::Word>(
|
||||||
&mut self,
|
&mut self,
|
||||||
request: Request,
|
request: Request,
|
||||||
repeated: &[W; 1],
|
repeated: *const [W],
|
||||||
count: usize,
|
count: usize,
|
||||||
reg_addr: *mut W,
|
reg_addr: *mut W,
|
||||||
options: TransferOptions,
|
options: TransferOptions,
|
||||||
@ -246,7 +246,7 @@ mod transfers {
|
|||||||
pub fn write_repeated<'a, W: Word>(
|
pub fn write_repeated<'a, W: Word>(
|
||||||
channel: impl Peripheral<P = impl Channel> + 'a,
|
channel: impl Peripheral<P = impl Channel> + 'a,
|
||||||
request: Request,
|
request: Request,
|
||||||
repeated: &[W; 1],
|
repeated: *const [W],
|
||||||
count: usize,
|
count: usize,
|
||||||
reg_addr: *mut W,
|
reg_addr: *mut W,
|
||||||
) -> impl Future<Output = ()> + 'a {
|
) -> impl Future<Output = ()> + 'a {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user