9c74a58bacdad502c87882e5bc21a2b4130c1ae2
[openwrt.git] / target / linux / generic-2.4 / patches / 803-mii_ioctl.patch
1 diff -urN linux-2.4.35.4/include/linux/mii.h linux-2.4.35.4.new/include/linux/mii.h
2 --- linux-2.4.35.4/include/linux/mii.h  2007-11-17 18:23:15.000000000 +0100
3 +++ linux-2.4.35.4.new/include/linux/mii.h      2009-03-15 17:32:45.000000000 +0100
4 @@ -9,7 +9,6 @@
5  #define __LINUX_MII_H__
6  
7  #include <linux/types.h>
8 -#include <linux/if.h>
9  
10  /* Generic MII registers. */
11  
12 @@ -104,6 +103,19 @@
13  #define NWAYTEST_LOOPBACK       0x0100  /* Enable loopback for N-way   */
14  #define NWAYTEST_RESV2          0xfe00  /* Unused...                   */
15  
16 +/* This structure is used in all SIOCxMIIxxx ioctl calls */
17 +struct mii_ioctl_data {
18 +       __u16           phy_id;
19 +       __u16           reg_num;
20 +       __u16           val_in;
21 +       __u16           val_out;
22 +};
23 +
24 +#ifdef __KERNEL__
25 +
26 +#include <linux/if.h>
27 +
28 +struct ethtool_cmd;
29  
30  struct mii_if_info {
31         int phy_id;
32 @@ -119,9 +131,6 @@
33         void (*mdio_write) (struct net_device *dev, int phy_id, int location, int val);
34  };
35  
36 -struct ethtool_cmd;
37 -struct mii_ioctl_data;
38 -
39  extern int mii_link_ok (struct mii_if_info *mii);
40  extern int mii_nway_restart (struct mii_if_info *mii);
41  extern int mii_ethtool_gset(struct mii_if_info *mii, struct ethtool_cmd *ecmd);
42 @@ -136,15 +145,6 @@
43  
44  
45  
46 -/* This structure is used in all SIOCxMIIxxx ioctl calls */
47 -struct mii_ioctl_data {
48 -       u16             phy_id;
49 -       u16             reg_num;
50 -       u16             val_in;
51 -       u16             val_out;
52 -};
53 -
54 -
55  static inline struct mii_ioctl_data *if_mii(struct ifreq *rq)
56  {
57         return (struct mii_ioctl_data *) &rq->ifr_ifru;
58 @@ -202,5 +202,5 @@
59         return 0;
60  }
61  
62 -
63 +#endif /* __KERNEL__ */
64  #endif /* __LINUX_MII_H__ */