- existing class drivers are placed to config 1
- drivers_connected==true is replaced with usb_config!=0
- supports config transition between nonzero configs
- STALL if request set_config was invalid
Change-Id: Ia775ae2dcb7d0cc08d2f3ee5ca41683837b04259
this commit has following changes:
- introduce `usb_drv_ep_spec` table to udc drivers, which represents
endpoint characteristics.
- introduce 'ep_allocs' table to class drivers, which represents what
endpoint type does the class driver want.
- implement endpoint matching logic to usb core.
this is a required step to implement usb config switching, because we
need to create config descriptors without actually initializing endpoints.
Change-Id: I11c324cd35189ab636744488f6259d0cdb2179f0
This commit adds suffix support for some missing components:
- Info widget
- Voice/talk files generation
- Backup
- Uninstall
Also fixes a crash in the uninstall window when there's no bootloader to select.
Change-Id: Ie97505a8cbd12dddf160bdebae2c04e738c373e5
Use the optimized version based on __buitlin_ctz() which GCC
will compile to two instructions (rbit, ctz) on Cortex-M4/M7;
faster and smaller than the handcoded assembly version.
Change-Id: I33f69ff829b048f1e53fc7ead1bd6ac3c5bd7a4c
Given the myriad of clocking options the STM32H7 family
provides, it is easiest to let targets simply implement
what they need.
Change-Id: I9cceed40a2d638998e8b583651f73557d2ffbd46
Supporting large transfers (>64k) isn't really needed;
the main use case right now is interfacing with an LCD
controller.
Change-Id: I901e5ddb1b4efa9aa650b3e5074537ba785c6d41
This commit enables plugins for the 3ds platform.
And adds 3ds specific pad configurations for each plugin.
Change-Id: Ie28fef4da32ed4cd2caa6c9fa3b2fe312ee009ef
Only for themes, fonts and voice files, includes rgnano implementation to test (can be in its own commit if needed, with the required manual updates and changes to install rockbox itself with rbutil).
Change-Id: I2481e6a3224912a298cf4c86011226e466490e08
This replaces the gdb & openocd config in utils/stm32tools
and is easier to use. Remove the srst workaround; it seems
this was caused by the D1/D3 domains not being powered up
while the CPU was in sleep mode.
Change-Id: I28cc0273b3004c6e3146bb2447f0655cad8bb1c2
Add an optional sequence in the startup code to disable clock
gating when the CPU goes to sleep. Normally the D1 and D3 domain
clocks can be automatically gated when the CPU is asleep, and
because the debug infrastructure is clocked from these domains,
the debugger cannot attach when those clocks are stopped.
Setting some bits in DBGMCU_CR prevents this problem, but will
increase power consumption, hence it isn't enabled by default.
Change-Id: Iba87750371a493adf72655aab86a908ef2702cef
This commit does the following changes:
- Replace buffered io implementation with a simpler, lighter, slightly faster version.
- Turn off both screens when backlight goes off.
- Small change to enable plugins in the folling commit (s).
Change-Id: I45df30be037c3a1686bd85c16c87bcd248db456f
- Change alsa-lib and libffi source to use https instead of ftp
- Change glib source to current path (avoids redirect)
- Change mpc source to GNU mirror because www.multiprecision.org seems down
- Change remaining http to https
Original reason for the change is that on WSL2 (Windows 11) for some reason ftp links do not appear to work.
Change-Id: Ib20470e39f625df790895452b6d6b4003cebae07
This is a tool written in C which does basically the same job
as regtools' headergen_v2, but using a new input format which
is less verbose than XML. In the interests of simplicity it
omits some features that regtools does support, like variant
registers or the SoC selector stuff so it cannot completely
replace regtools on the i.MX platforms that use these features.
RegGen doesn't generate API macros like regtools does; instead
these are expected to be maintained by hand, since it's arguably
easier to do that way.
Since RegGen has no dependencies beyond a C compiler it can
be integrated with the build system without adding any new
build time dependencies. This will allow generating headers
automatically, which is a substantial improvement over running
headergen_v2 by hand and committing the generated output.
The RegGen tool itself is licensed as GPLv3+, but generated
headers can be licensed as the user chooses.
Change-Id: If18f9577f8f4df6e2c97c1665b725773dd5466f0
The ZEN V target is the only one which has volume buttons,
but lacks the menu and shortcut buttons.
IMO an independant keymap will make maintenance easier.
Change-Id: Ide79fab629b13eae94946561d99052e570c0e4f2
The layout of 'struct regs' is a bit different on Cortex-M
and start_thread() wasn't updated to match; it was loading
'sp' from the wrong offset.
Change-Id: I57dbef26809821d411dc86e2066a2f53e78a3f2d
If you try to rewind music at lrcplayer it
1. returns back to old time
2. play for some time (1-2 seconds)
3. only after that returns for new time
According to wps code audio_pre_ff_rewind function should be called
before any rewinding. It stops playback and automatically resumes it
after audio_ff_rewind call
Change-Id: Id3755bfe4deeb7cd5d889ad7d8e1dec45061fa5c