Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

at v6.16-rc4 63 lines 1.4 kB view raw
1/* SPDX-License-Identifier: GPL-2.0 */ 2/* NXP C45 PHY driver header file 3 * Copyright 2023 NXP 4 * Author: Radu Pirea <radu-nicolae.pirea@oss.nxp.com> 5 */ 6 7#include <linux/ptp_clock_kernel.h> 8 9#define VEND1_PORT_FUNC_ENABLES 0x8048 10 11struct nxp_c45_macsec; 12 13struct nxp_c45_phy { 14 const struct nxp_c45_phy_data *phy_data; 15 struct phy_device *phydev; 16 struct mii_timestamper mii_ts; 17 struct ptp_clock *ptp_clock; 18 struct ptp_clock_info caps; 19 struct sk_buff_head tx_queue; 20 struct sk_buff_head rx_queue; 21 /* used to access the PTP registers atomic */ 22 struct mutex ptp_lock; 23 int hwts_tx; 24 int hwts_rx; 25 u32 tx_delay; 26 u32 rx_delay; 27 struct timespec64 extts_ts; 28 int extts_index; 29 bool extts; 30 struct nxp_c45_macsec *macsec; 31 u32 flags; 32}; 33 34#if IS_ENABLED(CONFIG_MACSEC) 35int nxp_c45_macsec_config_init(struct phy_device *phydev); 36int nxp_c45_macsec_probe(struct phy_device *phydev); 37void nxp_c45_macsec_remove(struct phy_device *phydev); 38void nxp_c45_handle_macsec_interrupt(struct phy_device *phydev, 39 irqreturn_t *ret); 40#else 41static inline 42int nxp_c45_macsec_config_init(struct phy_device *phydev) 43{ 44 return 0; 45} 46 47static inline 48int nxp_c45_macsec_probe(struct phy_device *phydev) 49{ 50 return 0; 51} 52 53static inline 54void nxp_c45_macsec_remove(struct phy_device *phydev) 55{ 56} 57 58static inline 59void nxp_c45_handle_macsec_interrupt(struct phy_device *phydev, 60 irqreturn_t *ret) 61{ 62} 63#endif