stmmac: platform: fix sparse warnings
Subsystems (7)
PATCH 1/1 stmmac: platform: fix sparse warnings
This patch fixes the following sparse warnings. One is fixed by casting return value to a return type of the function. The others by creating a specific stmmac_platform.h which provides the bits related to the platform driver.
drivers/net/ethernet/stmicro/stmmac/dwmac-meson.c:59:29: warning: incorrect type in return expression (different address spaces)drivers/net/ethernet/stmicro/stmmac/dwmac-meson.c:59:29: expected void *drivers/net/ethernet/stmicro/stmmac/dwmac-meson.c:59:29: got void [noderef] <asn:2>*reg
drivers/net/ethernet/stmicro/stmmac/dwmac-meson.c:64:29: warning: symbol 'meson6_dwmac_data' was not declared. Should it be static? drivers/net/ethernet/stmicro/stmmac/dwmac-sti.c:354:29: warning: symbol 'stih4xx_dwmac_data' was not declared. Should it be static? drivers/net/ethernet/stmicro/stmmac/dwmac-sti.c:361:29: warning: symbol 'stid127_dwmac_data' was not declared. Should it be static? drivers/net/ethernet/stmicro/stmmac/dwmac-sunxi.c:133:29: warning: symbol 'sun7i_gmac_data' was not declared. Should it be static?
--- drivers/net/ethernet/stmicro/stmmac/dwmac-meson.c | 4 +++- .../net/ethernet/stmicro/stmmac/dwmac-socfpga.c | 2 ++ drivers/net/ethernet/stmicro/stmmac/dwmac-sti.c | 2 ++ drivers/net/ethernet/stmicro/stmmac/dwmac-sunxi.c | 2 ++ drivers/net/ethernet/stmicro/stmmac/stmmac.h | 5 ---- .../net/ethernet/stmicro/stmmac/stmmac_platform.c | 2 ++ .../net/ethernet/stmicro/stmmac/stmmac_platform.h | 28 ++++++++++++++++++++++ 7 files changed, 39 insertions(+), 6 deletions(-) create mode 100644 drivers/net/ethernet/stmicro/stmmac/stmmac_platform.h
drivers/net/ethernet/stmicro/stmmac/dwmac-meson.c +3 -1
@@ -18,6 +18,8 @@#include <linux/platform_device.h> #include <linux/stmmac.h> +#include "stmmac_platform.h" +#define ETHMAC_SPEED_100 BIT(1)struct meson_dwmac {
@@ -56,7 +58,7 @@ static void *meson6_dwmac_setup(struct platform_device *pdev) res =platform_get_resource (pdev,IORESOURCE_MEM ,1 ); dwmac->reg =devm_ioremap_resource (&pdev->dev, res);if (IS_ERR (dwmac->reg)) -return dwmac->reg; +return ERR_CAST (dwmac->reg);return dwmac; }
drivers/net/ethernet/stmicro/stmmac/dwmac-socfpga.c +2 -0
@@ -23,7 +23,9 @@#include <linux/regmap.h> #include <linux/reset.h> #include <linux/stmmac.h> +#include "stmmac.h" +#include "stmmac_platform.h" #define SYSMGR_EMACGRP_CTRL_PHYSEL_ENUM_GMII_MII 0x0#define SYSMGR_EMACGRP_CTRL_PHYSEL_ENUM_RGMII 0x1
drivers/net/ethernet/stmicro/stmmac/dwmac-sti.c +2 -0
@@ -22,6 +22,8 @@#include <linux/of.h> #include <linux/of_net.h> +#include "stmmac_platform.h" +#define DWMAC_125MHZ 125000000#define DWMAC_50MHZ 50000000#define DWMAC_25MHZ 25000000
drivers/net/ethernet/stmicro/stmmac/dwmac-sunxi.c +2 -0
@@ -22,6 +22,8 @@#include <linux/of_net.h> #include <linux/regulator/consumer.h> +#include "stmmac_platform.h" +struct sunxi_priv_data {int interface;int clk_enabled;
drivers/net/ethernet/stmicro/stmmac/stmmac.h +0 -5
@@ -135,11 +135,6 @@ void stmmac_disable_eee_mode(struct stmmac_priv *priv);bool stmmac_eee_init (struct stmmac_priv *priv);#ifdef CONFIG_STMMAC_PLATFORM -extern const struct stmmac_of_data meson6_dwmac_data; -extern const struct stmmac_of_data sun7i_gmac_data; -extern const struct stmmac_of_data stih4xx_dwmac_data; -extern const struct stmmac_of_data stid127_dwmac_data; -extern const struct stmmac_of_data socfpga_gmac_data;extern struct platform_driver stmmac_pltfr_driver;static inline int stmmac_register_platform (void )
drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c +2 -0
@@ -27,7 +27,9 @@#include <linux/of.h> #include <linux/of_net.h> #include <linux/of_device.h> +#include "stmmac.h" +#include "stmmac_platform.h" static const struct of_device_id stmmac_dt_ids[] = {/* SoC specific glue layers should come before generic bindings */
drivers/net/ethernet/stmicro/stmmac/stmmac_platform.h new file +28 -0
@@ -0,0 +1,28 @@ +/******************************************************************************* +Copyright (C) 2007-2009 STMicroelectronics Ltd + +This program is free software; you can redistribute it and/or modify it +under the terms and conditions of the GNU General Public License, +version 2, as published by the Free Software Foundation. + +This program is distributed in the hope it will be useful, but WITHOUT +ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or +FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for +more details. + +The full GNU General Public License is included in this distribution in +the file called "COPYING". + +Author: Giuseppe Cavallaro <[email protected]> +*******************************************************************************/ + +#ifndef __STMMAC_PLATFORM_H__ +#define __STMMAC_PLATFORM_H__ + +extern const struct stmmac_of_data meson6_dwmac_data; +extern const struct stmmac_of_data sun7i_gmac_data; +extern const struct stmmac_of_data stih4xx_dwmac_data; +extern const struct stmmac_of_data stid127_dwmac_data; +extern const struct stmmac_of_data socfpga_gmac_data; + +#endif /* __STMMAC_PLATFORM_H__ */
Signature · 1 line
2.1.3
From: Andy Shevchenko <[email protected]>
Date: Fri, 7 Nov 2014 16:46:42 +0200
Quoted 8 lines
This patch fixes the following sparse warnings. One is fixed by casting return value to a return type of the function. The others by creating a specific
stmmac_platform.hwhich provides the bits related to the platform driver.
drivers/net/ethernet/stmicro/stmmac/dwmac-meson.c:59:29: warning: incorrect type in return expression (different address spaces)drivers/net/ethernet/stmicro/stmmac/dwmac-meson.c:59:29: expected void *drivers/net/ethernet/stmicro/stmmac/dwmac-meson.c:59:29: got void [noderef] <asn:2>*reg
Quoted 6 lines
drivers/net/ethernet/stmicro/stmmac/dwmac-meson.c:64:29: warning: symbol 'meson6_dwmac_data' was not declared. Should it be static?drivers/net/ethernet/stmicro/stmmac/dwmac-sti.c:354:29: warning: symbol 'stih4xx_dwmac_data' was not declared. Should it be static?drivers/net/ethernet/stmicro/stmmac/dwmac-sti.c:361:29: warning: symbol 'stid127_dwmac_data' was not declared. Should it be static?drivers/net/ethernet/stmicro/stmmac/dwmac-sunxi.c:133:29: warning: symbol 'sun7i_gmac_data' was not declared. Should it be static?Signed-off-by Andy Shevchenko <[email protected]>
Applied, thanks.