Messages in this thread | | | Date | Wed, 29 Nov 2023 15:03:02 +0100 | From | "Arnd Bergmann" <> | Subject | Re: [PATCH 15/17] soc: fsl: cpm1: qmc: Handle timeslot entries at channel start() and stop() |
| |
On Tue, Nov 28, 2023, at 15:08, Herve Codina wrote: > @@ -272,6 +274,8 @@ int qmc_chan_get_info(struct qmc_chan *chan, struct > qmc_chan_info *info) > if (ret) > return ret; > > + spin_lock_irqsave(&chan->ts_lock, flags); > + > info->mode = chan->mode; > info->rx_fs_rate = tsa_info.rx_fs_rate; > info->rx_bit_rate = tsa_info.rx_bit_rate; > @@ -280,6 +284,8 @@ int qmc_chan_get_info(struct qmc_chan *chan, struct > qmc_chan_info *info) > info->tx_bit_rate = tsa_info.tx_bit_rate; > info->nb_rx_ts = hweight64(chan->rx_ts_mask); > > + spin_unlock_irqrestore(&chan->ts_lock, flags); > + > return 0; > }
I would normally use spin_lock_irq() instead of spin_lock_irqsave() in functions that are only called outside of atomic context.
> +static int qmc_chan_start_rx(struct qmc_chan *chan); > + > int qmc_chan_stop(struct qmc_chan *chan, int direction) > { ... > -static void qmc_chan_start_rx(struct qmc_chan *chan) > +static int qmc_setup_chan_trnsync(struct qmc *qmc, struct qmc_chan *chan); > + > +static int qmc_chan_start_rx(struct qmc_chan *chan) > {
Can you reorder the static functions in a way that avoids the forward declarations?
Arnd
| |