* Subject: [RFC][PATCH 07/11] broadcom: trivial sparse annotations
@ 2018-01-05 19:32 Al Viro
2018-01-08 1:31 ` Florian Fainelli
0 siblings, 1 reply; 2+ messages in thread
From: Al Viro @ 2018-01-05 19:32 UTC (permalink / raw)
To: netdev
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
---
drivers/net/ethernet/broadcom/bcmsysport.c | 2 +-
drivers/net/ethernet/broadcom/bgmac.h | 6 +++---
drivers/net/ethernet/broadcom/bnx2.c | 6 +++---
drivers/net/ethernet/broadcom/cnic_if.h | 8 ++++----
drivers/net/ethernet/broadcom/genet/bcmgenet.c | 4 ++--
drivers/net/ethernet/broadcom/tg3.c | 2 +-
6 files changed, 14 insertions(+), 14 deletions(-)
diff --git a/drivers/net/ethernet/broadcom/bcmsysport.c b/drivers/net/ethernet/broadcom/bcmsysport.c
index f15a8fc6dfc9..c2969b260aed 100644
--- a/drivers/net/ethernet/broadcom/bcmsysport.c
+++ b/drivers/net/ethernet/broadcom/bcmsysport.c
@@ -1156,7 +1156,7 @@ static struct sk_buff *bcm_sysport_insert_tsb(struct sk_buff *skb,
memset(tsb, 0, sizeof(*tsb));
if (skb->ip_summed == CHECKSUM_PARTIAL) {
- ip_ver = htons(skb->protocol);
+ ip_ver = ntohs(skb->protocol);
switch (ip_ver) {
case ETH_P_IP:
ip_proto = ip_hdr(skb)->protocol;
diff --git a/drivers/net/ethernet/broadcom/bgmac.h b/drivers/net/ethernet/broadcom/bgmac.h
index 4040d846da8e..40d02fec2747 100644
--- a/drivers/net/ethernet/broadcom/bgmac.h
+++ b/drivers/net/ethernet/broadcom/bgmac.h
@@ -479,9 +479,9 @@ struct bgmac_rx_header {
struct bgmac {
union {
struct {
- void *base;
- void *idm_base;
- void *nicpm_base;
+ void __iomem *base;
+ void __iomem *idm_base;
+ void __iomem *nicpm_base;
} plat;
struct {
struct bcma_device *core;
diff --git a/drivers/net/ethernet/broadcom/bnx2.c b/drivers/net/ethernet/broadcom/bnx2.c
index 7919f6112ecf..154866e8517a 100644
--- a/drivers/net/ethernet/broadcom/bnx2.c
+++ b/drivers/net/ethernet/broadcom/bnx2.c
@@ -8330,9 +8330,9 @@ bnx2_init_board(struct pci_dev *pdev, struct net_device *dev)
if (j < 32)
bp->fw_version[j++] = ' ';
for (i = 0; i < 3 && j < 28; i++) {
- reg = bnx2_reg_rd_ind(bp, addr + i * 4);
- reg = be32_to_cpu(reg);
- memcpy(&bp->fw_version[j], ®, 4);
+ __be32 v;
+ v = cpu_to_be32(bnx2_reg_rd_ind(bp, addr + i * 4));
+ memcpy(&bp->fw_version[j], &v, 4);
j += 4;
}
}
diff --git a/drivers/net/ethernet/broadcom/cnic_if.h b/drivers/net/ethernet/broadcom/cnic_if.h
index 789e5c7e9311..8cfef07a8e3d 100644
--- a/drivers/net/ethernet/broadcom/cnic_if.h
+++ b/drivers/net/ethernet/broadcom/cnic_if.h
@@ -260,10 +260,10 @@ struct cnic_sockaddr {
struct cnic_sock {
struct cnic_dev *dev;
void *context;
- u32 src_ip[4];
- u32 dst_ip[4];
- u16 src_port;
- u16 dst_port;
+ __be32 src_ip[4];
+ __be32 dst_ip[4];
+ __be16 src_port;
+ __be16 dst_port;
u16 vlan_id;
unsigned char old_ha[ETH_ALEN];
unsigned char ha[ETH_ALEN];
diff --git a/drivers/net/ethernet/broadcom/genet/bcmgenet.c b/drivers/net/ethernet/broadcom/genet/bcmgenet.c
index 24b4f4ceceef..77154f1479a9 100644
--- a/drivers/net/ethernet/broadcom/genet/bcmgenet.c
+++ b/drivers/net/ethernet/broadcom/genet/bcmgenet.c
@@ -1321,7 +1321,7 @@ static struct sk_buff *bcmgenet_free_tx_cb(struct device *dev,
dma_unmap_addr_set(cb, dma_addr, 0);
}
- return 0;
+ return NULL;
}
/* Simple helper to free a receive control block's resources */
@@ -1480,7 +1480,7 @@ static struct sk_buff *bcmgenet_put_tx_csum(struct net_device *dev,
status = (struct status_64 *)skb->data;
if (skb->ip_summed == CHECKSUM_PARTIAL) {
- ip_ver = htons(skb->protocol);
+ ip_ver = ntohs(skb->protocol);
switch (ip_ver) {
case ETH_P_IP:
ip_proto = ip_hdr(skb)->protocol;
diff --git a/drivers/net/ethernet/broadcom/tg3.c b/drivers/net/ethernet/broadcom/tg3.c
index a77ee2f8fb8d..2bd77d9990f2 100644
--- a/drivers/net/ethernet/broadcom/tg3.c
+++ b/drivers/net/ethernet/broadcom/tg3.c
@@ -3744,7 +3744,7 @@ static int tg3_load_firmware_cpu(struct tg3 *tp, u32 cpu_base,
}
do {
- u32 *fw_data = (u32 *)(fw_hdr + 1);
+ __be32 *fw_data = (__be32 *)(fw_hdr + 1);
for (i = 0; i < tg3_fw_data_len(tp, fw_hdr); i++)
write_op(tp, cpu_scratch_base +
(be32_to_cpu(fw_hdr->base_addr) & 0xffff) +
--
2.11.0
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: Subject: [RFC][PATCH 07/11] broadcom: trivial sparse annotations
2018-01-05 19:32 Subject: [RFC][PATCH 07/11] broadcom: trivial sparse annotations Al Viro
@ 2018-01-08 1:31 ` Florian Fainelli
0 siblings, 0 replies; 2+ messages in thread
From: Florian Fainelli @ 2018-01-08 1:31 UTC (permalink / raw)
To: Al Viro, netdev, David S. Miller
On 01/05/2018 11:32 AM, Al Viro wrote:
>
> Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
> ---
> drivers/net/ethernet/broadcom/bcmsysport.c | 2 +-
> drivers/net/ethernet/broadcom/bgmac.h | 6 +++---
> drivers/net/ethernet/broadcom/bnx2.c | 6 +++---
> drivers/net/ethernet/broadcom/cnic_if.h | 8 ++++----
> drivers/net/ethernet/broadcom/genet/bcmgenet.c | 4 ++--
> drivers/net/ethernet/broadcom/tg3.c | 2 +-
> 6 files changed, 14 insertions(+), 14 deletions(-)
>
> diff --git a/drivers/net/ethernet/broadcom/bcmsysport.c b/drivers/net/ethernet/broadcom/bcmsysport.c
> index f15a8fc6dfc9..c2969b260aed 100644
> --- a/drivers/net/ethernet/broadcom/bcmsysport.c
> +++ b/drivers/net/ethernet/broadcom/bcmsysport.c
> @@ -1156,7 +1156,7 @@ static struct sk_buff *bcm_sysport_insert_tsb(struct sk_buff *skb,
> memset(tsb, 0, sizeof(*tsb));
>
> if (skb->ip_summed == CHECKSUM_PARTIAL) {
> - ip_ver = htons(skb->protocol);
> + ip_ver = ntohs(skb->protocol);
Al can you make sure you CC drivers maintainers for these changes? You
change bcmsysport.c and bcmgenet.c but you leave tg3.c with the same
type of construct in tg3_start_xmit() any reason for that? I am also
curious about this conversion considering the following numbers:
grep 'skb->protocol == htons' {net/*,drivers/net/*} | wc -l
151
git grep 'skb->protocol == ntohs' {net/*,drivers/net/*} | wc -l
0
> switch (ip_ver) {
> case ETH_P_IP:
> ip_proto = ip_hdr(skb)->protocol;
> diff --git a/drivers/net/ethernet/broadcom/bgmac.h b/drivers/net/ethernet/broadcom/bgmac.h
> index 4040d846da8e..40d02fec2747 100644
> --- a/drivers/net/ethernet/broadcom/bgmac.h
> +++ b/drivers/net/ethernet/broadcom/bgmac.h
> @@ -479,9 +479,9 @@ struct bgmac_rx_header {
> struct bgmac {
> union {
> struct {
> - void *base;
> - void *idm_base;
> - void *nicpm_base;
> + void __iomem *base;
> + void __iomem *idm_base;
> + void __iomem *nicpm_base;
> } plat;
This part of the patch is correct.
> struct {
> struct bcma_device *core;
> diff --git a/drivers/net/ethernet/broadcom/bnx2.c b/drivers/net/ethernet/broadcom/bnx2.c
> index 7919f6112ecf..154866e8517a 100644
> --- a/drivers/net/ethernet/broadcom/bnx2.c
> +++ b/drivers/net/ethernet/broadcom/bnx2.c
> @@ -8330,9 +8330,9 @@ bnx2_init_board(struct pci_dev *pdev, struct net_device *dev)
> if (j < 32)
> bp->fw_version[j++] = ' ';
> for (i = 0; i < 3 && j < 28; i++) {
> - reg = bnx2_reg_rd_ind(bp, addr + i * 4);
> - reg = be32_to_cpu(reg);
> - memcpy(&bp->fw_version[j], ®, 4);
> + __be32 v;
> + v = cpu_to_be32(bnx2_reg_rd_ind(bp, addr + i * 4));
> + memcpy(&bp->fw_version[j], &v, 4);
> j += 4;
> }
> }
> diff --git a/drivers/net/ethernet/broadcom/cnic_if.h b/drivers/net/ethernet/broadcom/cnic_if.h
> index 789e5c7e9311..8cfef07a8e3d 100644
> --- a/drivers/net/ethernet/broadcom/cnic_if.h
> +++ b/drivers/net/ethernet/broadcom/cnic_if.h
> @@ -260,10 +260,10 @@ struct cnic_sockaddr {
> struct cnic_sock {
> struct cnic_dev *dev;
> void *context;
> - u32 src_ip[4];
> - u32 dst_ip[4];
> - u16 src_port;
> - u16 dst_port;
> + __be32 src_ip[4];
> + __be32 dst_ip[4];
> + __be16 src_port;
> + __be16 dst_port;
> u16 vlan_id;
> unsigned char old_ha[ETH_ALEN];
> unsigned char ha[ETH_ALEN];
> diff --git a/drivers/net/ethernet/broadcom/genet/bcmgenet.c b/drivers/net/ethernet/broadcom/genet/bcmgenet.c
> index 24b4f4ceceef..77154f1479a9 100644
> --- a/drivers/net/ethernet/broadcom/genet/bcmgenet.c
> +++ b/drivers/net/ethernet/broadcom/genet/bcmgenet.c
> @@ -1321,7 +1321,7 @@ static struct sk_buff *bcmgenet_free_tx_cb(struct device *dev,
> dma_unmap_addr_set(cb, dma_addr, 0);
> }
>
> - return 0;
> + return NULL;
And this part as well is correct.
> }
>
> /* Simple helper to free a receive control block's resources */
> @@ -1480,7 +1480,7 @@ static struct sk_buff *bcmgenet_put_tx_csum(struct net_device *dev,
> status = (struct status_64 *)skb->data;
>
> if (skb->ip_summed == CHECKSUM_PARTIAL) {
> - ip_ver = htons(skb->protocol);
> + ip_ver = ntohs(skb->protocol);
> switch (ip_ver) {
> case ETH_P_IP:
> ip_proto = ip_hdr(skb)->protocol;
> diff --git a/drivers/net/ethernet/broadcom/tg3.c b/drivers/net/ethernet/broadcom/tg3.c
> index a77ee2f8fb8d..2bd77d9990f2 100644
> --- a/drivers/net/ethernet/broadcom/tg3.c
> +++ b/drivers/net/ethernet/broadcom/tg3.c
> @@ -3744,7 +3744,7 @@ static int tg3_load_firmware_cpu(struct tg3 *tp, u32 cpu_base,
> }
>
> do {
> - u32 *fw_data = (u32 *)(fw_hdr + 1);
> + __be32 *fw_data = (__be32 *)(fw_hdr + 1);
> for (i = 0; i < tg3_fw_data_len(tp, fw_hdr); i++)
> write_op(tp, cpu_scratch_base +
> (be32_to_cpu(fw_hdr->base_addr) & 0xffff) +
>
--
Florian
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2018-01-08 1:31 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-01-05 19:32 Subject: [RFC][PATCH 07/11] broadcom: trivial sparse annotations Al Viro
2018-01-08 1:31 ` Florian Fainelli
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.