forked from mirrors/linux
		
	net: Replace hwtstamp_source by timestamping layer
Replace hwtstamp_source which is only used by the kernel_hwtstamp_config structure by the more widely use timestamp_layer structure. This is done to prepare the support of selectable timestamping source. Signed-off-by: Kory Maincent <kory.maincent@bootlin.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
		
							parent
							
								
									aed5004ee7
								
							
						
					
					
						commit
						51bdf3165f
					
				
					 3 changed files with 7 additions and 12 deletions
				
			
		|  | @ -470,15 +470,15 @@ static int lan966x_port_hwtstamp_set(struct net_device *dev, | ||||||
| 	struct lan966x_port *port = netdev_priv(dev); | 	struct lan966x_port *port = netdev_priv(dev); | ||||||
| 	int err; | 	int err; | ||||||
| 
 | 
 | ||||||
| 	if (cfg->source != HWTSTAMP_SOURCE_NETDEV && | 	if (cfg->source != MAC_TIMESTAMPING && | ||||||
| 	    cfg->source != HWTSTAMP_SOURCE_PHYLIB) | 	    cfg->source != PHY_TIMESTAMPING) | ||||||
| 		return -EOPNOTSUPP; | 		return -EOPNOTSUPP; | ||||||
| 
 | 
 | ||||||
| 	err = lan966x_ptp_setup_traps(port, cfg); | 	err = lan966x_ptp_setup_traps(port, cfg); | ||||||
| 	if (err) | 	if (err) | ||||||
| 		return err; | 		return err; | ||||||
| 
 | 
 | ||||||
| 	if (cfg->source == HWTSTAMP_SOURCE_NETDEV) { | 	if (cfg->source == MAC_TIMESTAMPING) { | ||||||
| 		if (!port->lan966x->ptp) | 		if (!port->lan966x->ptp) | ||||||
| 			return -EOPNOTSUPP; | 			return -EOPNOTSUPP; | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -5,11 +5,6 @@ | ||||||
| 
 | 
 | ||||||
| #include <uapi/linux/net_tstamp.h> | #include <uapi/linux/net_tstamp.h> | ||||||
| 
 | 
 | ||||||
| enum hwtstamp_source { |  | ||||||
| 	HWTSTAMP_SOURCE_NETDEV, |  | ||||||
| 	HWTSTAMP_SOURCE_PHYLIB, |  | ||||||
| }; |  | ||||||
| 
 |  | ||||||
| /**
 | /**
 | ||||||
|  * struct kernel_hwtstamp_config - Kernel copy of struct hwtstamp_config |  * struct kernel_hwtstamp_config - Kernel copy of struct hwtstamp_config | ||||||
|  * |  * | ||||||
|  | @ -20,8 +15,8 @@ enum hwtstamp_source { | ||||||
|  *	a legacy implementation of a lower driver |  *	a legacy implementation of a lower driver | ||||||
|  * @copied_to_user: request was passed to a legacy implementation which already |  * @copied_to_user: request was passed to a legacy implementation which already | ||||||
|  *	copied the ioctl request back to user space |  *	copied the ioctl request back to user space | ||||||
|  * @source: indication whether timestamps should come from the netdev or from |  * @source: indication whether timestamps should come from software, the netdev | ||||||
|  *	an attached phylib PHY |  *	or from an attached phylib PHY | ||||||
|  * |  * | ||||||
|  * Prefer using this structure for in-kernel processing of hardware |  * Prefer using this structure for in-kernel processing of hardware | ||||||
|  * timestamping configuration, over the inextensible struct hwtstamp_config |  * timestamping configuration, over the inextensible struct hwtstamp_config | ||||||
|  | @ -33,7 +28,7 @@ struct kernel_hwtstamp_config { | ||||||
| 	int rx_filter; | 	int rx_filter; | ||||||
| 	struct ifreq *ifr; | 	struct ifreq *ifr; | ||||||
| 	bool copied_to_user; | 	bool copied_to_user; | ||||||
| 	enum hwtstamp_source source; | 	enum timestamping_layer source; | ||||||
| }; | }; | ||||||
| 
 | 
 | ||||||
| static inline void hwtstamp_config_to_kernel(struct kernel_hwtstamp_config *kernel_cfg, | static inline void hwtstamp_config_to_kernel(struct kernel_hwtstamp_config *kernel_cfg, | ||||||
|  |  | ||||||
|  | @ -332,7 +332,7 @@ int dev_set_hwtstamp_phylib(struct net_device *dev, | ||||||
| 	bool changed = false; | 	bool changed = false; | ||||||
| 	int err; | 	int err; | ||||||
| 
 | 
 | ||||||
| 	cfg->source = phy_ts ? HWTSTAMP_SOURCE_PHYLIB : HWTSTAMP_SOURCE_NETDEV; | 	cfg->source = phy_ts ? PHY_TIMESTAMPING : MAC_TIMESTAMPING; | ||||||
| 
 | 
 | ||||||
| 	if (phy_ts && (dev->priv_flags & IFF_SEE_ALL_HWTSTAMP_REQUESTS)) { | 	if (phy_ts && (dev->priv_flags & IFF_SEE_ALL_HWTSTAMP_REQUESTS)) { | ||||||
| 		err = ops->ndo_hwtstamp_get(dev, &old_cfg); | 		err = ops->ndo_hwtstamp_get(dev, &old_cfg); | ||||||
|  |  | ||||||
		Loading…
	
		Reference in a new issue
	
	 Kory Maincent
						Kory Maincent