Re: [PATCH RESEND] can: mcp251x: Replace power callbacks with regulator API

Alexander Shiyan shc_work at mail.ru
Sat Aug 17 17:10:05 EDT 2013


> On 08/17/2013 06:30 AM, Alexander Shiyan wrote:
> [...]
> >> Since DT conversion isn't finished, I still accept the board files.
> >> But this patch should be split into two parts. One is for pxa, and the
> >> other one is for net.
> > 
> > Patch cannot be splitted because this can create hole which break git-bisect.
> > 
> > In any case, I want to create a v2 with a more detailed description, and I
> > have a supplementary question for the CAN subsystem maintainers.
> > "Transciever power" is not used by any of the boards, can we remove it
> > completely? This will greatly simplify driver.
> 
> Do you mean the former transceiver_enable() callback?

Yes.

> >  struct mcp251x_platform_data {
> >  	unsigned long oscillator_frequency;
> >  	unsigned long irq_flags;
> > -	int (*board_specific_setup)(struct spi_device *spi);
> > -	int (*transceiver_enable)(int enable);
> > -	int (*power_enable) (int enable);
> >  };
> 
> Having a switchable transceiver is a quite common thing. So I'd like
> that you keep it. The flexcan driver was just converted from a callback
> to a regulator too. It already has device tree bindings and I'd like to
> use these bindings as a standard for new drivers. From flexcan's dt
> bindings:
> 
> > - xceiver-supply: Regulator that powers the CAN transceiver
> 
> which translates into:
> 
> > priv->reg_xceiver = devm_regulator_get(&pdev->dev, "xceiver");
> 
> Can you please use "xceiver" instead of "transceiver", so that future DT
> binding will fit the scheme.

OK. I am not ready to add DT support yet, but it can be added later,
so v2 will contain 3 parts:
1 - Replace power callbacks with regulator API
2 - Eliminate mcp251x_platform_data->irq_flags
3 - Replace oscillator_frequency with CLK API (and remove mcp251x.h header)

Are you OK with such changes?

---


More information about the linux-arm-kernel mailing list