summaryrefslogtreecommitdiff
path: root/src/common/tusb_compiler.h
AgeCommit message (Collapse)Author
2026-07-02license: use SPDX identifiers for src/ headers (#3749)Ha Thach
* license: use SPDX identifiers for src/ headers Replace the full ~20-line MIT license boilerplate on every src/ file with a two-line SPDX tag (SPDX-FileCopyrightText + SPDX-License-Identifier), following the REUSE convention used by CircuitPython and the Linux kernel. Removes ~3500 lines of duplicated boilerplate.
2026-04-17remove duplicated tu_le16toh since we have converted the endian when setup.Fan DANG
2026-04-13introduce two more macros to follow tinyusb's styleFan DANG
2026-04-13fix(device): big-endian host support for SETUP packet handlingFan DANG
1. Add TU_LITTLE_ENDIAN_BITFIELD / TU_BIG_ENDIAN_BITFIELD macros in tusb_compiler.h (GCC and IAR), following Linux kernel style. 2. Update bmAttributes (tusb_desc_endpoint_t) and bmRequestType_bit (tusb_control_request_t) in tusb_types.h to use these macros with explicit #error fallback if undefined. 3. Add tu_le16toh() conversion in dcd_event_setup_received() for wValue/wIndex/wLength. Tested on CIU98320B (big-endian ARM Cortex-M, full-speed HID keyboard).
2025-12-10update metrics to support bloaty csvhathach
2025-12-09update metrics to support bloatyhathach
2025-11-06fix more alertshathach
2025-11-04Fixed more alert found by PVS-Studiohathach
2025-11-03fixing alert by scanning toolhathach
2025-10-30Merge branch 'master' into uac1HiFiPhile
Signed-off-by: HiFiPhile <[email protected]>
2025-10-28fix Identifiers that start with '__' or '_[A-Z]' are reserved.hathach
fix compiling with nuc family
2025-10-01Minor fixesHiFiPhile
Signed-off-by: HiFiPhile <[email protected]>
2025-09-30More descriptors workingHiFiPhile
Signed-off-by: HiFiPhile <[email protected]>
2024-11-21make sure usb buffer occupies whole cache line when DCACHE is enabled for ↵hathach
msc,cdc,hid HIL enable device DMA for p4
2024-10-11change tusb_init(), tusb_rhport_init() to use init struct for expandabilityhathach
2024-05-24add ch32 support for fsdev driver. v20x can select fsdev or usbfs with ↵hathach
make/cmake PORT=0/1. default to fsdev
2024-04-09make veryfi static in ccrx consistent with the resthathach
2024-04-09Fixed behavior of the PRCR register. Previous write protection will be ↵Matthias Schär
recovered.
2023-06-27rework cmake with rtos support add RTOS to ↵hathach
family_configure_device/host/dual_example()
2023-04-18Use __GNUC__ macro to determine if __has_attribute is supportedReimu NotMoe
2023-04-17Implement TU_BSWAP{16,32} correctly for Microchip XC16Reimu NotMoe
2023-04-17Fix compatibility with the latest Microchip XC16 compilerReimu NotMoe
2023-03-18minor clean uphathach
2023-03-17Merge branch 'master' into portabilityhathach
2023-03-17fix trailing space and new linehathach
temporarily disable codespell
2023-02-22use tu_static instead of static _fuzz_threadhathach
2023-02-22Merge pull request #1867 from silvergasp/thread_local_globalsHa Thach
fix: Change all static variables to thread when fuzzing
2023-02-22rename maros from FUZZ to _FUZZ, change TU_STATIC to static _fuzz_threadhathach
2023-01-21update stm32f1 to support iar buildhathach
2023-01-20fix: Change all static variables to thread when fuzzingNathaniel Brough
2022-09-13IAR doesn't support __attribute__((fallthrough))Ben Avison
IAR generates warning Pa167 'the "fallthrough" attribute is not supported'. It doesn't generate warnings when one switch case falls through to another, so simply make TU_ATTR_FALLTHROUGH expand to an empty string. Also replace one instance of __attribute__ with the macro.
2022-07-14abtract attribute fallthroughhathach
2022-02-28Merge pull request #1345 from alexandre-perrin/iar-cpp-verify-staticHa Thach
Fix CPP compilation with IAR
2022-02-23Fix CPP compilation with IARAlexandre Perrin
IAR defines __STDC_VERSION__ in cpp as well. Which causes TU_VERIFY_STATIC to be defined as _Static_assert instead of cpp's static_assert. This reorders __cplusplus__ to be first, then to fallback to __STDC_VERSION__ if not CPP.
2022-02-01Modifications for CCRX toolchainRoland
2021-11-30Ignore certain compiler options on ARMCCYunhao Tian
ARMCC also sets __GNU__ macro, but doesn't support GCC diagnostic pragmas.
2021-10-25change usage of TU_CHECK_MCU() to prevent macro conflicthathach
2021-10-25add TU_ARGS_APPLY(), TU_CHECK_MCU() now could check list of mcushathach
2021-09-25add CFG_TUSB_OS_INC_PATH for os include pathhathach
useful for freertos/ prefix with esp IDF
2021-07-22clean up compilerhathach
2021-07-22rename bit filed orderhathach
clean up packed/bit order begin end
2021-07-22rename packed begin/endhathach
2021-07-22Merge branch 'CCRX_Port' of https://github.com/Wini-Buh/tinyusb into ↵hathach
Wini-Buh-CCRX_Port
2021-07-13add option to silent a driver loghathach
2021-06-29add tud_vendor_control_request_cb() to poisoned listhathach
2021-06-22final clean upWini-Buh
2021-06-11weak atrribute work around removed from CCRX_PortWini-Buh
2021-05-29Adaptations for Renesas CCRX toolchain and Rx72N controller performedWini-Buh
2021-04-06add tu_unaligned_read32/write32 (#772)Ha Thach
* add tu_unaligned_read32/write32 * added tu_unaligned_read16/write16 * add TU_ATTR_ALWAYS_INLINE, add to most of simple inline function
2020-12-20Fix error if "Required Prototype" is selected.HiFiPhile
Signed-off-by: HiFiPhile <[email protected]>