daniel-p-carvalho opened a new pull request, #20206:
URL: https://github.com/apache/nuttx/pull/20206

   ## Summary
   
   The STM32F4 platform page has no section about the Ethernet MAC, so nothing 
tells a user how to use the PTP support that the legacy STM32 Ethernet driver 
has, and the driver got a `/dev/ptp0` PTP hardware clock in #20180. This PR 
adds an "Ethernet" section to `Documentation/platforms/arm/stm32f4/index.rst`. 
It changes documentation only.
   
   The section describes, checked against 
`arch/arm/src/common/stm32/stm32_eth_m3m4_v1.c`, `Kconfig.eth` and the pin maps:
   
   - The time counter of the MAC (32-bit seconds and 31-bit sub-second parts, 
clocked from `SYSCLK`, rate adjustable by up to +/- 50 %) and why a PTP daemon 
needs it.
   - The options `CONFIG_STM32_ETH_PTP`, `CONFIG_STM32_ETH_ENHANCEDDESC`, 
`CONFIG_STM32_ETH_TIMESTAMP_RX`, `CONFIG_STM32_ETH_PTP_GPIO` (with the two 
possible pins on the STM32F40xxx and STM32F42xxx parts and the 
`GPIO_ETH_PPS_OUT` that the board defines in its `board.h`) and 
`CONFIG_STM32_ETH_PTP_RTC_HIRES`.
   - The `/dev/ptp0` clock: the numbering (the number of the Ethernet 
interface), the operations it offers (time, resolution, frequency, phase) and 
the one it does not (cross timestamp), with a link to the PTP clock driver page.
   - That the timestamps of received packets are values of the MAC counter and 
not of `CLOCK_REALTIME`, so a program has to compare them with `/dev/ptp0`. It 
shows how to start `ptpd` that way (`ptpd -H -p /dev/ptp0 -i eth0`) and a 
configuration that enables everything.
   - That the driver stamps received packets only.
   
   Transmit timestamps are not described here because they are not in `master` 
yet; the section will get them when they are.
   
   ## Impact
   
   Documentation only, no code change. Only the page `platforms/arm/stm32f4` 
changes.
   
   ## Testing
   
   Built the documentation with Sphinx 6.2.1 and the packages of 
`Documentation/Pipfile`, without `-W`: the build succeeds, the new section 
renders and the link to the PTP clock driver page resolves. None of the 19 
warnings (duplicate C declarations in other pages) is from this file. 
`./tools/checkpatch.sh` passes.
   
   The statements were checked by reading the driver and the pin maps. The 
configuration example and the `ptpd` command line were not built or run as 
written here; the driver and `ptpd` were run on an STM32F4 board with a similar 
configuration.
   


-- 
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: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to