[PATCH net-next v4 4/9] dpll: netlink: Add DPLL framework base functions

Jakub Kicinski kuba at kernel.org
Tue Aug 15 09:55:19 PDT 2023


On Tue, 15 Aug 2023 16:18:16 +0100 Vadim Fedorenko wrote:
> On 15/08/2023 04:24, Jakub Kicinski wrote:
> > On Fri, 11 Aug 2023 21:03:35 +0100 Vadim Fedorenko wrote:  
> >> +	xa_for_each(&pin->dpll_refs, i, ref) {
> >> +		const struct dpll_pin_ops *ops = dpll_pin_ops(ref);
> >> +		struct dpll_device *dpll = ref->dpll;
> >> +
> >> +		if (!ops->frequency_set)
> >> +			return -EOPNOTSUPP;
> >> +		ret = ops->frequency_set(pin, dpll_pin_on_dpll_priv(dpll, pin),
> >> +					 dpll, dpll_priv(dpll), freq, extack);
> >> +		if (ret)
> >> +			return ret;
> >> +		__dpll_pin_change_ntf(pin);
> >> +	}  
> > 
> > only one freq is reported in get, AFAICT, so why send a notification
> > after each ref is updated?  
> 
> The pin can be technically connected to several DPLLs and app may watch
> for the specific DPLL messages only. We would like to inform all users 
> on any DPLL which has this pin connected to.

How does this end up looking in the notifications?
__dpll_pin_change_ntf() only takes the pin object, from a quick read 
it seems like it will generate the same notification multiple times.



More information about the linux-arm-kernel mailing list