aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/dsa/sja1105/sja1105_spi.c
diff options
context:
space:
mode:
authorVladimir Oltean <vladimir.oltean@nxp.com>2021-05-24 16:14:19 +0300
committerDavid S. Miller <davem@davemloft.net>2021-05-24 13:59:03 -0700
commitf78a2517cf73fb0de68012ba2f42c9ad65d2aa14 (patch)
tree02fe9b3d979b9388454e1766235f77117c277191 /drivers/net/dsa/sja1105/sja1105_spi.c
parentnet: dsa: sja1105: dynamically choose the number of static config table entries (diff)
downloadlinux-dev-f78a2517cf73fb0de68012ba2f42c9ad65d2aa14.tar.xz
linux-dev-f78a2517cf73fb0de68012ba2f42c9ad65d2aa14.zip
net: dsa: sja1105: use sja1105_xfer_u32 for the reset procedure
Using sja1105_xfer_buf results in a higher overhead and is harder to read. Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/dsa/sja1105/sja1105_spi.c')
-rw-r--r--drivers/net/dsa/sja1105/sja1105_spi.c22
1 files changed, 6 insertions, 16 deletions
diff --git a/drivers/net/dsa/sja1105/sja1105_spi.c b/drivers/net/dsa/sja1105/sja1105_spi.c
index c08aa6fbd85d..79ba86096a4b 100644
--- a/drivers/net/dsa/sja1105/sja1105_spi.c
+++ b/drivers/net/dsa/sja1105/sja1105_spi.c
@@ -7,8 +7,6 @@
#include <linux/packing.h>
#include "sja1105.h"
-#define SJA1105_SIZE_RESET_CMD 4
-
struct sja1105_chunk {
u8 *buf;
size_t len;
@@ -179,28 +177,20 @@ static int sja1105et_reset_cmd(struct dsa_switch *ds)
{
struct sja1105_private *priv = ds->priv;
const struct sja1105_regs *regs = priv->info->regs;
- u8 packed_buf[SJA1105_SIZE_RESET_CMD] = {0};
- const int size = SJA1105_SIZE_RESET_CMD;
- u64 cold_rst = 1;
-
- sja1105_pack(packed_buf, &cold_rst, 3, 3, size);
+ u32 cold_reset = BIT(3);
- return sja1105_xfer_buf(priv, SPI_WRITE, regs->rgu, packed_buf,
- SJA1105_SIZE_RESET_CMD);
+ /* Cold reset */
+ return sja1105_xfer_u32(priv, SPI_WRITE, regs->rgu, &cold_reset, NULL);
}
static int sja1105pqrs_reset_cmd(struct dsa_switch *ds)
{
struct sja1105_private *priv = ds->priv;
const struct sja1105_regs *regs = priv->info->regs;
- u8 packed_buf[SJA1105_SIZE_RESET_CMD] = {0};
- const int size = SJA1105_SIZE_RESET_CMD;
- u64 cold_rst = 1;
-
- sja1105_pack(packed_buf, &cold_rst, 2, 2, size);
+ u32 cold_reset = BIT(2);
- return sja1105_xfer_buf(priv, SPI_WRITE, regs->rgu, packed_buf,
- SJA1105_SIZE_RESET_CMD);
+ /* Cold reset */
+ return sja1105_xfer_u32(priv, SPI_WRITE, regs->rgu, &cold_reset, NULL);
}
int sja1105_inhibit_tx(const struct sja1105_private *priv,