Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/flipperdevices/libusb_stm32.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDmitry Filimonchuk <dmitrystu@gmail.com>2021-12-23 23:36:31 +0300
committerDmitry Filimonchuk <dmitrystu@gmail.com>2021-12-23 23:36:31 +0300
commitda829b9f6d68329d0ac3078d7e67d4cf450811c5 (patch)
treead2fb02433b3a325e5e8e60393039103c55a43db
parentc3bcfc9456ebd9b5fc6db8010a431fe8a94814cc (diff)
fix some bugs in ASM drivers.
issue#105
-rw-r--r--src/usbd_stm32f103_devfs_asm.S13
-rw-r--r--src/usbd_stm32l052_devfs_asm.S13
-rw-r--r--src/usbd_stm32l100_devfs_asm.S15
3 files changed, 19 insertions, 22 deletions
diff --git a/src/usbd_stm32f103_devfs_asm.S b/src/usbd_stm32f103_devfs_asm.S
index ee7bcf2..6481774 100644
--- a/src/usbd_stm32f103_devfs_asm.S
+++ b/src/usbd_stm32f103_devfs_asm.S
@@ -390,16 +390,15 @@ _ep_isstalled:
lsls r2, r0, #28
lsrs r2, #26
ldr r1, [r1, r2]
- lsls r1, #17
+ lsls r1, #18
cmp r0, #0x80
- bhs .L_eis_check
+ blo .L_eis_check
lsls r1, #8
.L_eis_check:
- lsrs r1, r1, #28
- subs r1, #0x01
- subs r0, r1, #0x01
- sbcs r1, r1
- rsbs r0, r1, #0
+ lsrs r0, r1, #30
+ subs r0, #0x01
+ subs r1, r0, #0x01
+ sbcs r0, r0
bx lr
.size _ep_isstalled, . - _ep_isstalled
diff --git a/src/usbd_stm32l052_devfs_asm.S b/src/usbd_stm32l052_devfs_asm.S
index 93b255c..1b3bcb0 100644
--- a/src/usbd_stm32l052_devfs_asm.S
+++ b/src/usbd_stm32l052_devfs_asm.S
@@ -363,16 +363,15 @@ _ep_isstalled:
lsls r2, r0, #28
lsrs r2, #26
ldr r1, [r1, r2]
- lsls r1, #17
+ lsls r1, #18
cmp r0, #0x80
- bhs .L_eis_check
+ blo .L_eis_check
lsls r1, #8
.L_eis_check:
- lsrs r1, r1, #28
- subs r1, #0x01
- subs r0, r1, #0x01
- sbcs r1, r1
- rsbs r0, r1, #0
+ lsrs r0, r1, #30
+ subs r0, #0x01
+ subs r1, r0, #0x01
+ sbcs r0, r0
bx lr
.size _ep_isstalled, . - _ep_isstalled
diff --git a/src/usbd_stm32l100_devfs_asm.S b/src/usbd_stm32l100_devfs_asm.S
index 5820a3d..333afad 100644
--- a/src/usbd_stm32l100_devfs_asm.S
+++ b/src/usbd_stm32l100_devfs_asm.S
@@ -326,16 +326,15 @@ _ep_isstalled:
lsls r2, r0, #28
lsrs r2, #26
ldr r1, [r1, r2]
- lsls r1, #17
+ lsls r1, #18
cmp r0, #0x80
- bhs .L_eis_check
+ blo .L_eis_check
lsls r1, #8
.L_eis_check:
- lsrs r1, r1, #28
- subs r1, #0x01
- subs r0, r1, #0x01
- sbcs r1, r1
- rsbs r0, r1, #0
+ lsrs r0, r1, #30
+ subs r0, #0x01
+ subs r1, r0, #0x01
+ sbcs r0, r0
bx lr
.size _ep_isstalled, . - _ep_isstalled
@@ -683,7 +682,7 @@ _ep_deconfig:
ldr r2, =USB_EPBASE
ldr r3, =USB_PMABASE
adds r2, r1
- lsls r1, #1
+ lsls r1, #2
adds r3, r1
/* clearing endpoint register */
ldr r1, =EP_NOTOG