kywwilson11 opened a new pull request, #16543:
URL: https://github.com/apache/nuttx/pull/16543

   ## Summary
   
   This adds finer-grained `_HAVE_` config options for the STM32G0 series to 
reflect which chips actually include which peripherals. Instead of lumping 
everything under `STM32F0L0G0_STM32G0`, I created new subfamily-level selects 
like `STM32F0L0G0_STM32G0B1`, `STM32F0L0G0_STM32G0CX`, etc., each of which 
selects the appropriate `HAVE_` flags for USART3–6, DAC1, COMP1–3, UCPD1/2, 
FDCAN1/2, LPUART1/2, CRS, and others.
   
   Peripheral mappings were taken from **Table 1 in RM0444** (STM32G0x1) and 
**Table 1 in RM0454** (STM32G0x0).
   
   To support clean builds on chips with HSI48 and CRS (G0B and G0C), I also 
added `STM32_CRS_BASE`, `RCC_CR_HSI48ON`, and `RCC_CR_HSI48RDY`.
   
   ---
   
   ## Impact
   
   - Replaces the broad `STM32G0` Kconfig select with specific per-subfamily 
selects.
   - Adds `HAVE_` flags for all relevant STM32G0 peripherals.
   - Adds `STM32_CRS_BASE` and HSI48-related bit definitions to support G0B/G0C 
builds.
   - No runtime or functional changes unless new code starts using these config 
flags.
   
   This lays the groundwork for better future peripheral support and cleaner 
driver logic.
   
   ---
   
   ## Testing
   
   - Built `nucleo-g0b1re:nsh` using **WSL2 on Ubuntu 24.04**, GCC **13.2.0**.
   - Enabled HSI48 and CRS via Kconfig; verified that all new defines are 
picked up.
   - Build completed successfully.  
   - **No runtime testing** — changes are limited to Kconfig and register 
definitions.
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscr...@nuttx.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org

Reply via email to