mirror of
https://github.com/u-boot/u-boot.git
synced 2024-11-24 12:44:23 +08:00
net: Fix mcast function pointer prototype
This fixes the following compiler warnings when activating CONFIG_MCAST_TFTP: tsec.c: In function 'tsec_mcast_addr': tsec.c:130:2: warning: passing argument 2 of 'ether_crc' makes pointer from integer without a cast [enabled by default] In file included from /work/u-boot-net/include/common.h:874:0, from tsec.c:15: /work/u-boot-net/include/net.h:189:5: note: expected 'const unsigned char *' but argument is of type 'u8' tsec.c: In function 'tsec_initialize': tsec.c:646:13: warning: assignment from incompatible pointer type [enabled by default] eth.c: In function 'eth_mcast_join': eth.c:358:2: warning: passing argument 2 of 'eth_current->mcast' makes integer from pointer without a cast [enabled by default] eth.c:358:2: note: expected 'u32' but argument is of type 'u8 *' In the eth_mcast_join() implementation, eth_current->mcast() takes a u8 pointer to the multicast mac address and not a ip address value as implied by its prototype. Fix parameter type mismatch for tsec_macst_addr() (tsec.c): ether_crc() takes a u8 pointer not a u8 value. mcast() is given a u8 pointer to the multicats mac address. Update parameter type for the rest of mcast() instances. Signed-off-by: Claudiu Manoil <claudiu.manoil@freescale.com> Patch: 278989
This commit is contained in:
parent
ed102be70f
commit
9c4cffacec
@ -188,7 +188,7 @@ static int rtl_transmit(struct eth_device *dev, void *packet, int length);
|
||||
static int rtl_poll(struct eth_device *dev);
|
||||
static void rtl_disable(struct eth_device *dev);
|
||||
#ifdef CONFIG_MCAST_TFTP/* This driver already accepts all b/mcast */
|
||||
static int rtl_bcast_addr (struct eth_device *dev, u8 bcast_mac, u8 set)
|
||||
static int rtl_bcast_addr(struct eth_device *dev, const u8 *bcast_mac, u8 set)
|
||||
{
|
||||
return (0);
|
||||
}
|
||||
|
@ -120,14 +120,14 @@ static void tsec_configure_serdes(struct tsec_private *priv)
|
||||
* for PowerPC (tm) is usually the case) in the tregister holds
|
||||
* the entry. */
|
||||
static int
|
||||
tsec_mcast_addr (struct eth_device *dev, u8 mcast_mac, u8 set)
|
||||
tsec_mcast_addr(struct eth_device *dev, const u8 *mcast_mac, u8 set)
|
||||
{
|
||||
struct tsec_private *priv = privlist[1];
|
||||
volatile tsec_t *regs = priv->regs;
|
||||
volatile u32 *reg_array, value;
|
||||
u8 result, whichbit, whichreg;
|
||||
|
||||
result = (u8)((ether_crc(MAC_ADDR_LEN,mcast_mac) >> 24) & 0xff);
|
||||
result = (u8)((ether_crc(MAC_ADDR_LEN, mcast_mac) >> 24) & 0xff);
|
||||
whichbit = result & 0x1f; /* the 5 LSB = which bit to set */
|
||||
whichreg = result >> 5; /* the 3 MSB = which reg to set it in */
|
||||
value = (1 << (31-whichbit));
|
||||
|
@ -89,7 +89,7 @@ struct eth_device {
|
||||
int (*recv) (struct eth_device *);
|
||||
void (*halt) (struct eth_device *);
|
||||
#ifdef CONFIG_MCAST_TFTP
|
||||
int (*mcast) (struct eth_device *, u32 ip, u8 set);
|
||||
int (*mcast) (struct eth_device *, const u8 *enetaddr, u8 set);
|
||||
#endif
|
||||
int (*write_hwaddr) (struct eth_device *);
|
||||
struct eth_device *next;
|
||||
|
Loading…
Reference in New Issue
Block a user