Re: [PATCH v2 08/15] net: rnpgbe: Add irq support

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, Jul 21, 2025 at 07:32:31PM +0800, Dong Yibo wrote:
> Initialize irq functions for driver use.
> 
> Signed-off-by: Dong Yibo <dong100@xxxxxxxxx>

...

> diff --git a/drivers/net/ethernet/mucse/rnpgbe/rnpgbe_lib.c b/drivers/net/ethernet/mucse/rnpgbe/rnpgbe_lib.c

...

> +/**
> + * rnpgbe_acquire_msix_vectors - Allocate msix vectors
> + * @mucse: pointer to private structure
> + * @vectors: number of msix vectors

Please also document the return value for functions
that have one and a kernel doc.

Flagged by ./scripts/kernel-doc --none -Wall

> + **/
> +static int rnpgbe_acquire_msix_vectors(struct mucse *mucse,
> +				       int vectors)

...

> diff --git a/drivers/net/ethernet/mucse/rnpgbe/rnpgbe_main.c b/drivers/net/ethernet/mucse/rnpgbe/rnpgbe_main.c

...

> +/**
> + * rnpgbe_msix_other - Other irq handler
> + * @irq: irq num
> + * @data: private data
> + *
> + * @return: IRQ_HANDLED
> + **/
> +static irqreturn_t rnpgbe_msix_other(int irq, void *data)
> +{
> +	struct mucse *mucse = (struct mucse *)data;
> +
> +	set_bit(__MUCSE_IN_IRQ, &mucse->state);
> +	clear_bit(__MUCSE_IN_IRQ, &mucse->state);
> +
> +	return IRQ_HANDLED;
> +}
> +
> +/**
> + * register_mbx_irq - Regist mbx Routine

Register

> + * @mucse: pointer to private structure
> + *
> + * @return: 0 on success, negative on failure
> + **/
> +static int register_mbx_irq(struct mucse *mucse)
> +{
> +	struct mucse_hw *hw = &mucse->hw;
> +	struct net_device *netdev = mucse->netdev;
> +	int err = 0;

Nit, unlike most of this patch(set) the above doesn't follow
reverse xmas tree order - longest line to shortest - for variable
declarations.

Edward Cree's tool can be useful here.
https://github.com/ecree-solarflare/xmastree/


> +
> +	/* for mbx:vector0 */
> +	if (mucse->num_other_vectors == 0)
> +		return err;
> +	/* only do this in msix mode */
> +	if (mucse->flags & M_FLAG_MSIX_ENABLED) {
> +		err = request_irq(mucse->msix_entries[0].vector,
> +				  rnpgbe_msix_other, 0, netdev->name,
> +				  mucse);
> +		if (err)
> +			goto err_mbx;
> +		hw->mbx.ops.configure(hw,
> +				      mucse->msix_entries[0].entry,
> +				      true);
> +		hw->mbx.irq_enabled = true;
> +	}
> +err_mbx:
> +	return err;
> +}

...




[Index of Archives]     [Kernel Newbies]     [Security]     [Netfilter]     [Bugtraq]     [Linux FS]     [Yosemite Forum]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Device Mapper]     [Linux Resources]

  Powered by Linux