Re: [PATCH V2] net: dsa: ksz: Add reset GPIO handling
> This actually is an individual patch, it doesn't depend on anything. > Or do you mean a series with the DT documentation change ? Yes, i mean together with the DT documentation change. Those two belong together, they are one functional change. Part of this is also to do with scalability. It takes less effort to merge one patchset of two patches, as two individual patches. The truth is, developer time is cheap, maintainer time is expensive, so the process is optimized towards making the maintainers life easy. So sometimes you do combine orthogonal changes together into one patchset, if there is a high purpose, eg. adding support for a new device on a new board. However, given the situation of two overlapping patchsets, it might be better to submit smaller patchsets. Andrew
Re: [PATCH V2] net: dsa: ksz: Add reset GPIO handling
On 12/08/2018 12:46 AM, David Miller wrote: > From: Marek Vasut > Date: Fri, 7 Dec 2018 23:59:58 +0100 > >> On 12/07/2018 11:24 PM, Andrew Lunn wrote: >>> On Fri, Dec 07, 2018 at 10:51:36PM +0100, Marek Vasut wrote: Add code to handle optional reset GPIO in the KSZ switch driver. The switch has a reset GPIO line which can be controlled by the CPU, so make sure it is configured correctly in such setups. >>> >>> Hi Marek >> >> Hi Andrew, >> >>> Please make this a patch series, not two individual patches. >> >> This actually is an individual patch, it doesn't depend on anything. >> Or do you mean a series with the DT documentation change ? > > Yes, but all of this stuff is building up for one single purpose, > and that is to support a new mode of operation with DSA or whatever. I'll group together the ones which make sense to group together and are not orthogonal if that's OK with you. The reset handling really is orthogonal from the rest and can go in independently of the rest. > So please group them together in a series with an appropriate > header posting. Sure -- Best regards, Marek Vasut
Re: [PATCH V2] net: dsa: ksz: Add reset GPIO handling
From: Marek Vasut Date: Fri, 7 Dec 2018 23:59:58 +0100 > On 12/07/2018 11:24 PM, Andrew Lunn wrote: >> On Fri, Dec 07, 2018 at 10:51:36PM +0100, Marek Vasut wrote: >>> Add code to handle optional reset GPIO in the KSZ switch driver. The switch >>> has a reset GPIO line which can be controlled by the CPU, so make sure it is >>> configured correctly in such setups. >> >> Hi Marek > > Hi Andrew, > >> Please make this a patch series, not two individual patches. > > This actually is an individual patch, it doesn't depend on anything. > Or do you mean a series with the DT documentation change ? Yes, but all of this stuff is building up for one single purpose, and that is to support a new mode of operation with DSA or whatever. So please group them together in a series with an appropriate header posting.
Re: [PATCH V2] net: dsa: ksz: Add reset GPIO handling
On 12/07/2018 11:24 PM, Andrew Lunn wrote: > On Fri, Dec 07, 2018 at 10:51:36PM +0100, Marek Vasut wrote: >> Add code to handle optional reset GPIO in the KSZ switch driver. The switch >> has a reset GPIO line which can be controlled by the CPU, so make sure it is >> configured correctly in such setups. > > Hi Marek Hi Andrew, > Please make this a patch series, not two individual patches. This actually is an individual patch, it doesn't depend on anything. Or do you mean a series with the DT documentation change ? > And as David has already said, include a cover letter. > > Otherwise, this looks O.K. > > Thanks > Andrew > -- Best regards, Marek Vasut
Re: [PATCH V2] net: dsa: ksz: Add reset GPIO handling
On Fri, Dec 07, 2018 at 10:51:36PM +0100, Marek Vasut wrote: > Add code to handle optional reset GPIO in the KSZ switch driver. The switch > has a reset GPIO line which can be controlled by the CPU, so make sure it is > configured correctly in such setups. Hi Marek Please make this a patch series, not two individual patches. And as David has already said, include a cover letter. Otherwise, this looks O.K. Thanks Andrew
[PATCH V2] net: dsa: ksz: Add reset GPIO handling
Add code to handle optional reset GPIO in the KSZ switch driver. The switch has a reset GPIO line which can be controlled by the CPU, so make sure it is configured correctly in such setups. Signed-off-by: Marek Vasut Cc: Vivien Didelot Cc: Woojung Huh Cc: David S. Miller Cc: Tristram Ha --- V2: Switch to devm_gpiod_get_optional() --- drivers/net/dsa/microchip/ksz_common.c | 17 + drivers/net/dsa/microchip/ksz_priv.h | 2 ++ 2 files changed, 19 insertions(+) diff --git a/drivers/net/dsa/microchip/ksz_common.c b/drivers/net/dsa/microchip/ksz_common.c index 9705808c3af7a..3b12e2dcff31b 100644 --- a/drivers/net/dsa/microchip/ksz_common.c +++ b/drivers/net/dsa/microchip/ksz_common.c @@ -8,12 +8,14 @@ #include #include #include +#include #include #include #include #include #include #include +#include #include #include #include @@ -294,6 +296,17 @@ int ksz_switch_register(struct ksz_device *dev, if (dev->pdata) dev->chip_id = dev->pdata->chip_id; + dev->reset_gpio = devm_gpiod_get_optional(dev->dev, "reset", + GPIOD_OUT_LOW); + if (IS_ERR(dev->reset_gpio)) + return PTR_ERR(dev->reset_gpio); + + if (dev->reset_gpio) { + gpiod_set_value(dev->reset_gpio, 1); + mdelay(10); + gpiod_set_value(dev->reset_gpio, 0); + } + mutex_init(>reg_mutex); mutex_init(>stats_mutex); mutex_init(>alu_mutex); @@ -329,6 +342,10 @@ void ksz_switch_remove(struct ksz_device *dev) { dev->dev_ops->exit(dev); dsa_unregister_switch(dev->ds); + + if (dev->reset_gpio) + gpiod_set_value(dev->reset_gpio, 1); + } EXPORT_SYMBOL(ksz_switch_remove); diff --git a/drivers/net/dsa/microchip/ksz_priv.h b/drivers/net/dsa/microchip/ksz_priv.h index a38ff0841ed4e..60b49010904bf 100644 --- a/drivers/net/dsa/microchip/ksz_priv.h +++ b/drivers/net/dsa/microchip/ksz_priv.h @@ -59,6 +59,8 @@ struct ksz_device { void *priv; + struct gpio_desc *reset_gpio; /* Optional reset GPIO */ + /* chip specific data */ u32 chip_id; int num_vlans; -- 2.18.0