Commit Graph

6780 Commits

Author SHA1 Message Date
hathach
6b44d8fb55 add cmake support for g0, exlicitly call HAL_Init() and also HAL_IncTick() in systick irq, fix button active state. 2023-06-01 15:58:02 +07:00
hathach
af59864ab5 Merge branch 'master' into feature/STM32G0 2023-06-01 13:28:28 +07:00
Ha Thach
77714e02ca Merge pull request #2088 from hathach/minor-cleanup
add lto for cmake
2023-06-01 13:22:09 +07:00
hathach
62b2d05d34 skip set CMAKE_EXECUTABLE_SUFFIX for espressif port 2023-06-01 12:50:32 +07:00
hathach
19a597bcae add lto for cmake 2023-06-01 12:36:08 +07:00
Ha Thach
ddc029ce54 Merge pull request #2016 from ipopov/master
Even when we get an empty "status change" interrupt from the hub, schedule another interrupt poll
2023-05-29 13:47:23 +07:00
hathach
20ef6c4ef7 slightly clean up 2023-05-29 13:29:11 +07:00
hathach
5c428d35a6 check status_change is not zero first 2023-05-29 13:27:20 +07:00
Ivo Popov
8ad024e51b Even when we get an empty "status change" interrupt from the hub, schedule another interrupt poll.
During enumeration, when there are multiple devices attached to the
hub as it's plugged into the Pi Pico, enumeration hangs, because we
get a "status change" callback with value zero. With this patch, we
retry several times on "zero" status change callbacks, until
eventually we succeed.

This is the cheapo hub that exhibits this behavior, but I assume it's
not the only one: https://www.amazon.com/gp/product/B083RQMC7S.

While debugging this, I consulted the implementation in the Linux
kernel. There, hub setup explicitly checks each port individually,
before starting to depend on "status change" interrupts:
https://elixir.bootlin.com/linux/latest/source/drivers/usb/core/hub.c#L1133.
We probably should do something like that here, but it's a much bigger
change.
2023-05-29 13:18:16 +07:00
Ha Thach
069e1ef84f Merge pull request #2084 from hathach/more-build2
More build2
2023-05-26 20:23:25 +07:00
hathach
59ad5c59df fix artifacts location 2023-05-26 18:58:21 +07:00
hathach
4bd02fb04d more test 2023-05-26 18:54:14 +07:00
hathach
c88e7481be retry hw test 2023-05-26 17:15:54 +07:00
hathach
7fb74a33a1 forgot to move hw test 2023-05-26 16:44:29 +07:00
hathach
7ac85d08c7 move lpc18 and rp2040 to cmake workflow since rp2040 often failed randomly with make 2023-05-26 16:37:47 +07:00
hathach
05cc342dfa update deps, rename kinetis_k32 to k32l 2023-05-26 15:45:55 +07:00
hathach
1d857605b7 use get_deps.py 2023-05-26 15:25:55 +07:00
hathach
b262164a35 fix build with net_lwip_webserver example 2023-05-26 15:16:18 +07:00
hathach
c0ecf8b50f move set TOP to family_support.cmake 2023-05-26 14:56:22 +07:00
Ha Thach
23c8670e79 Merge pull request #2081 from hathach/more-build-system
More build system
2023-05-25 21:54:31 +07:00
hathach
4c9605910f update cmake with freertos 2023-05-25 21:27:26 +07:00
hathach
5fea010406 add family_support_configure_common() 2023-05-25 17:27:05 +07:00
hathach
26d05d7fc9 fix issue with ftdi host driver with status bytes
add workflow_dispatch to all ci workflow
2023-05-25 16:53:32 +07:00
hathach
625c27ca58 add workflow_dispatch for manual trigger 2023-05-25 16:20:58 +07:00
hathach
7a3d7a7c23 cmsis_5 missing mcx and imxrt 2023-05-25 16:17:41 +07:00
hathach
5a0c2bd638 update get_deps.py to support geting family as argument 2023-05-25 16:11:57 +07:00
Ha Thach
eedafb23f7 Merge pull request #2063 from abakosh/develop
fix(RA Host Portable): implement missing function __builtin_ctz(x)
2023-05-24 20:11:50 +07:00
Aladdin Bakosh
57d2eb603b fix(RA Host Portable): implement missing function __builtin_ctz(x) for IAR 2023-05-24 11:38:40 +02:00
Ha Thach
1ef820ecfe Enhance chipidea (#2075)
* update chipidea dcd, remove manual ep_count and use DCCPARAMS to get number of endpoint instead
* add dcd dcache for chipidea
* add cmake for lpc18
* add makefile build for mcx
* use fork of mcu sdk
* fix ci build with nrf
* flash rp2040 with openocd
2023-05-23 21:45:00 +07:00
Ha Thach
c998e9c60b Merge pull request #2069 from hathach/minor-build-system
Minor build system
2023-05-19 18:39:21 +07:00
hathach
9f0bae4c3f fix freertos build with nrf 2023-05-19 18:04:08 +07:00
hathach
49d8d27770 improve flash target 2023-05-19 16:27:07 +07:00
hathach
270136e84a adding cpu core .mk for makefile
fix cortex m33 for nrf5340 dk
2023-05-19 16:02:26 +07:00
hathach
e8dd200fed move cmake folder to tools/ 2023-05-19 14:46:39 +07:00
Ha Thach
6ecd480006 Merge pull request #2061 from hathach/imx-usbhost
iMX.RT EHCI add dcache support and other fixes + refactor
2023-05-19 14:18:07 +07:00
hathach
7211dd18b4 more dcache fix 2023-05-19 13:42:26 +07:00
hathach
5dae5e1292 ehci fix dcache clean when control endpoint failed 2023-05-19 13:32:49 +07:00
hathach
f26a93908e only clean/invalidate dcache on imxrt if memory is not in DTCM 2023-05-19 10:56:52 +07:00
hathach
f22d8ee3b9 add rt1060 jlink config 2023-05-18 16:46:02 +07:00
hathach
ec4bd39a92 refactor ehci: add attached_buffer for dcache invalidate for IN transfer 2023-05-18 16:41:06 +07:00
hathach
27acaa013b refactor ehci, since usbh only queue 1 TD per queue head 2023-05-18 15:44:08 +07:00
hathach
49e2aabc81 EHCI more improvement
- more dcache clean/invalidate
- extract init_periodic_list()
- improve isr list handling
2023-05-18 13:45:38 +07:00
hathach
a0aea52a11 more cache, fix an similar issue with OHCI when removing an queue head 2023-05-18 12:39:53 +07:00
hathach
e4f4ad5bc3 use weak local for dcache function to skip if() 2023-05-18 10:21:11 +07:00
hathach
a3e017bfd2 EHCI adding dcahe support, passing enumertaion 2023-05-18 10:04:48 +07:00
hathach
eb89df4115 adding hcd_dcache_clean/hcd_dcache_invalidate 2023-05-17 16:14:35 +07:00
hathach
a9aa0e3a1a fix error on EHCI causes xfer error in non-queued qhd which cause memory fault 2023-05-16 11:10:44 +07:00
hathach
1e998ce3bd usbd: fix control transfer issue for chipidea hs when previous status and new setup complete in the same isr frame
change usbd edpt busy/stalled/claimed value to 0/1 instead of
(true/false) since they are 1-bit field.
2023-05-16 11:09:23 +07:00
hathach
2c48050993 add various check for disconncted device, also fix #1511 un-roll recursive hub removal with usbh queue 2023-05-16 11:09:22 +07:00
hathach
1c4f22a54c EHCI: fix xfer failed with disconnected device as stalled
- change CFG_TUH_ENDPOINT_MAX to 16 (max endpoint pair per device) if
not defined
- change QHD_MAX for EHCI, should be user configurable and more
optimized in the future
2023-05-16 11:09:22 +07:00