Skip to content

Conversation

yangbolu1991
Copy link
Member

This PR is to support DSA PTP. (Now only gPTP is supported)
Also enabled i.MX943 gPTP sample for testing. gPTP on all 5 ports on i.MX943 (2 DSA switch ports and 3 ENETC ports) worked fine.

There is a hal_nxp dependency:

Thanks a lot.

Updated hal_nxp to support netc switch ptp.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
Moved dsa_tag_netc.h to public include directory for devices
reusing.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
Copy link

github-actions bot commented Aug 27, 2025

The following west manifest projects have changed revision in this Pull Request:

Name Old Revision New Revision Diff
hal_nxp zephyrproject-rtos/hal_nxp@fc66564 zephyrproject-rtos/hal_nxp#594 zephyrproject-rtos/hal_nxp#594/files

DNM label due to: 1 project with PR revision

Note: This message is automatically posted and updated by the Manifest GitHub Action.

@github-actions github-actions bot added manifest-hal_nxp DNM (manifest) This PR should not be merged (controlled by action-manifest) labels Aug 27, 2025
@yangbolu1991
Copy link
Member Author

Updated to fix twister issues.
Thanks.

Copy link
Contributor

@ankuns ankuns left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reviewed from IEEE 802.15.4 point of view which as I guess is not your primary interest, however the change must not break anything there, should not make the code unsafe to use and should not lead to a waste of memory. Please have a look on the notes below.

Supported tagger data and connecting device to tag protocol, so that some
device specific work could be handled.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
Allowed ptp-clock property for dsa.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
Added PTP solution in core driver. Now only gPTP was supported.

- ethernet_api like get_capabilities and get_ptp_clock
  were supported in port driver.

- For TX timestamp, added new dsa_api port_txtstamp for device
  to handle. Device driver might put pkt in queue, and reported
  timestamp after completing transmitting on hardware.

- For RX timestamp, the timestamp could be given to pkt in tag
  driver or device driver.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
Supported common usage of control block for any layers.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
Supported PTP timestamping in netc tag driver.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
PTP clock may be enabled per Ethernet port. Especially pseudo port for
switch management does not need PTP clock.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
Supported receiving more types frames. One was TX timestamp response
frame and the other one is RX timestamped frame which were for switch
port.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
Supported PTP timestamping. Now only gPTP was supported.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
Added imx943_evk_mimx94398_m33_ddr support.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
@yangbolu1991
Copy link
Member Author

Updated to v2. Changes include,

  • Improved API doc per @kartben suggestion.
  • Converted to use union for pkt cb per @ankuns suggestion.

Thanks a lot.

Copy link

Copy link
Contributor

@ankuns ankuns left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks OK from ieee802154 point of view, other parts not in my field of expertise.

@yangbolu1991
Copy link
Member Author

Any other comments?
Thanks:)

Copy link
Contributor

@kartben kartben left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

+1 for docs, thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants