Comments (9)
Related to issue STM32CubeF4#10.
from stm32cubef4.
Hi @jrahlf,
Thank you for this other optimization proposal. It will be logged into our internal database too. Identified descriptors that could be placed in read-only region are listed below.
With regards,
from stm32cubef4.
ST Internal Reference: 99842
from stm32cubef4.
Hi @jrahlf,
Regarding this question below, may I ask you to clarify which "documentation" you are referring to?
- The documentation for the different fields in the descriptors is different for "high speed" / "full speed" / "other speed". Please consolidate that.
Thank you,
from stm32cubef4.
Hi @ALABSTM , please see the attached image regarding the differences in the documentation. I think only the "OtherSpeed" descriptor is affected. E.g. one documentation says 100mA and the other one says 0mA even though the value is the same. There also other subtle differences, .e.g differences in whitespace or
/* bInterval: ignore for Bulk transfer */
vs
/* bInterval */
.
As I now understand, the OtherSpeed desciptor is to inform the host about the possible Highspeed configuration, if the device is running in FullSpeed mode. If that is the case, the wMaxPacketSize field should be set to 512 instead of 64 (for the OtherSpeed descriptor). Can you check this?
from stm32cubef4.
ST Internal Reference: 99959
from stm32cubef4.
Hi @jrahlf,
Thank you for the clarification. The point has been logged into our internal database. Regarding your other question below, I let @CHAMSTM comment.
- Why is there even a descriptor for "other speed" ? It sets the bDescriptorType field to 7, I cannot find any documentation for this value on the internet. Why is it not 0x2?
With regards,
from stm32cubef4.
Hi @jrahlf,
I hope you are doing well. According to our development teams, a couple of use-cases have been identified where the user could modify some fields of the device configuration descriptor at run-time preventing from moving its location into read-only memory.
With regards,
from stm32cubef4.
Hi @jrahlf,
I hope you are doing well.
- Regarding moving the device configuration descriptor to a "read-only" memory region, this is not possible according to our development teams. Indeed, the descriptor is stored in
pdev->pConfDesc
and, depending on the use-case, some fields could be changed at run time. With a simple software disconnect-then-connect operation, the new descriptor will be shared to the host. - Regarding the documentation found in the comments, it has been updated in the frame of v2.8.0 of the USB Device Library found in the stm32_mw_usb_device repository.
Thank you again for having shared this proposal. Please allow me to close this issue now. Thank you for your comprehension.
Regards,
Aymen
from stm32cubef4.
Related Issues (20)
- HAL_SRAM_Write_16b is 32b HOT 5
- Trigger event triggered in MX_TIMx_Init (TIM_Base_SetConfig) causing triggering of slave timers initialised first HOT 9
- __HAL_RCC_APB2_FORCE_RESET cause mcu reset! HOT 5
- STM32 lwIP Ethernet driver Tx deadlock HOT 9
- STM32F429 + LAN8742a (custom board) problem with lwip HOT 2
- STM32CubeF4 (this repo) vs CubeMX/IDE Downloads
- Unnecessary 64-bit calculations result in 700+ bytes increase in firmware size HOT 2
- UART race condition bug associated with HAL_LOCK() function location HOT 2
- When the timer is initialized, the ARR register will be miscalculated.
- lwIP project could not work in stm32cubeide HOT 2
- PWM oversight on STM32CubeMX + HAL combination HOT 5
- Unwanted I2S DMA output HOT 1
- cmsis_os2.c -> osThreadDetach function missing HOT 2
- BUG : Wrong check of file size in the ymodem.c file HOT 2
- Unused variable warnings with USE_FreeRTOS_HEAP_1 defined HOT 2
- not nice formatted HOT 3
- How to use FPU to actively trigger IDC interrupt HOT 1
- CubeMX does not handle custom PHY anymore HOT 4
- Please publish v1.28.1 tag HOT 1
- Cannot exclude BSP submodules when pulling STM32CubeF4 into superproject HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from stm32cubef4.