aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/can/m_can/m_can_platform.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/net/can/m_can/m_can_platform.c')
-rw-r--r--drivers/net/can/m_can/m_can_platform.c15
1 files changed, 7 insertions, 8 deletions
diff --git a/drivers/net/can/m_can/m_can_platform.c b/drivers/net/can/m_can/m_can_platform.c
index c2989e0431f2..6ac4c35f247a 100644
--- a/drivers/net/can/m_can/m_can_platform.c
+++ b/drivers/net/can/m_can/m_can_platform.c
@@ -16,24 +16,21 @@ struct m_can_plat_priv {
static u32 iomap_read_reg(struct m_can_classdev *cdev, int reg)
{
- struct m_can_plat_priv *priv =
- (struct m_can_plat_priv *)cdev->device_data;
+ struct m_can_plat_priv *priv = cdev->device_data;
return readl(priv->base + reg);
}
static u32 iomap_read_fifo(struct m_can_classdev *cdev, int offset)
{
- struct m_can_plat_priv *priv =
- (struct m_can_plat_priv *)cdev->device_data;
+ struct m_can_plat_priv *priv = cdev->device_data;
return readl(priv->mram_base + offset);
}
static int iomap_write_reg(struct m_can_classdev *cdev, int reg, int val)
{
- struct m_can_plat_priv *priv =
- (struct m_can_plat_priv *)cdev->device_data;
+ struct m_can_plat_priv *priv = cdev->device_data;
writel(val, priv->base + reg);
@@ -42,8 +39,7 @@ static int iomap_write_reg(struct m_can_classdev *cdev, int reg, int val)
static int iomap_write_fifo(struct m_can_classdev *cdev, int offset, int val)
{
- struct m_can_plat_priv *priv =
- (struct m_can_plat_priv *)cdev->device_data;
+ struct m_can_plat_priv *priv = cdev->device_data;
writel(val, priv->mram_base + offset);
@@ -67,6 +63,9 @@ static int m_can_plat_probe(struct platform_device *pdev)
int irq, ret = 0;
mcan_class = m_can_class_allocate_dev(&pdev->dev);
+ if (!mcan_class)
+ return -ENOMEM;
+
priv = devm_kzalloc(&pdev->dev, sizeof(*priv), GFP_KERNEL);
if (!priv)
return -ENOMEM;