Messages in this thread |  | | Date | Thu, 9 Jul 2020 20:51:14 +0800 | From | kernel test robot <> | Subject | drivers/net/ethernet/aeroflex/greth.c:362:9: sparse: sparse: incorrect type in argument 2 (different address spaces) |
| |
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master head: 0bddd227f3dc55975e2b8dfa7fc6f959b062a2c7 commit: 670d0a4b10704667765f7d18f7592993d02783aa sparse: use identifiers to define address spaces date: 3 weeks ago config: sparc-randconfig-s032-20200709 (attached as .config) compiler: sparc-linux-gcc (GCC) 9.3.0 reproduce: wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross chmod +x ~/bin/make.cross # apt-get install sparse # sparse version: v0.6.2-37-gc9676a3b-dirty git checkout 670d0a4b10704667765f7d18f7592993d02783aa # save the attached .config to linux build tree COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' ARCH=sparc
If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot <lkp@intel.com>
sparse warnings: (new ones prefixed by >>)
drivers/net/ethernet/aeroflex/greth.c:362:9: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] value @@ got restricted __be32 [usertype] @@ drivers/net/ethernet/aeroflex/greth.c:362:9: sparse: expected unsigned int [usertype] value drivers/net/ethernet/aeroflex/greth.c:362:9: sparse: got restricted __be32 [usertype] >> drivers/net/ethernet/aeroflex/greth.c:362:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got unsigned int * @@ >> drivers/net/ethernet/aeroflex/greth.c:362:9: sparse: expected void volatile [noderef] __iomem *addr drivers/net/ethernet/aeroflex/greth.c:362:9: sparse: got unsigned int * >> drivers/net/ethernet/aeroflex/greth.c:406:24: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got unsigned int * @@ >> drivers/net/ethernet/aeroflex/greth.c:406:24: sparse: expected void const volatile [noderef] __iomem *addr drivers/net/ethernet/aeroflex/greth.c:406:24: sparse: got unsigned int * drivers/net/ethernet/aeroflex/greth.c:406:24: sparse: sparse: cast to restricted __be32 drivers/net/ethernet/aeroflex/greth.c:409:25: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] value @@ got restricted __be32 [usertype] @@ drivers/net/ethernet/aeroflex/greth.c:409:25: sparse: expected unsigned int [usertype] value drivers/net/ethernet/aeroflex/greth.c:409:25: sparse: got restricted __be32 [usertype] drivers/net/ethernet/aeroflex/greth.c:409:25: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got unsigned int * @@ drivers/net/ethernet/aeroflex/greth.c:409:25: sparse: expected void volatile [noderef] __iomem *addr drivers/net/ethernet/aeroflex/greth.c:409:25: sparse: got unsigned int * drivers/net/ethernet/aeroflex/greth.c:752:17: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] value @@ got restricted __be32 [usertype] @@ drivers/net/ethernet/aeroflex/greth.c:752:17: sparse: expected unsigned int [usertype] value drivers/net/ethernet/aeroflex/greth.c:752:17: sparse: got restricted __be32 [usertype] drivers/net/ethernet/aeroflex/greth.c:752:17: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got unsigned int * @@ drivers/net/ethernet/aeroflex/greth.c:752:17: sparse: expected void volatile [noderef] __iomem *addr drivers/net/ethernet/aeroflex/greth.c:752:17: sparse: got unsigned int * drivers/net/ethernet/aeroflex/greth.c:869:17: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] value @@ got restricted __be32 [usertype] @@ drivers/net/ethernet/aeroflex/greth.c:869:17: sparse: expected unsigned int [usertype] value drivers/net/ethernet/aeroflex/greth.c:869:17: sparse: got restricted __be32 [usertype] drivers/net/ethernet/aeroflex/greth.c:869:17: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got unsigned int * @@ drivers/net/ethernet/aeroflex/greth.c:869:17: sparse: expected void volatile [noderef] __iomem *addr drivers/net/ethernet/aeroflex/greth.c:869:17: sparse: got unsigned int * drivers/net/ethernet/aeroflex/greth.c:627:17: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] value @@ got restricted __be32 [usertype] @@ drivers/net/ethernet/aeroflex/greth.c:627:17: sparse: expected unsigned int [usertype] value drivers/net/ethernet/aeroflex/greth.c:627:17: sparse: got restricted __be32 [usertype] drivers/net/ethernet/aeroflex/greth.c:627:17: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got unsigned int * @@ drivers/net/ethernet/aeroflex/greth.c:627:17: sparse: expected void volatile [noderef] __iomem *addr drivers/net/ethernet/aeroflex/greth.c:627:17: sparse: got unsigned int * drivers/net/ethernet/aeroflex/greth.c:692:17: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] value @@ got restricted __be32 [usertype] @@ drivers/net/ethernet/aeroflex/greth.c:692:17: sparse: expected unsigned int [usertype] value drivers/net/ethernet/aeroflex/greth.c:692:17: sparse: got restricted __be32 [usertype] drivers/net/ethernet/aeroflex/greth.c:692:17: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got unsigned int * @@ drivers/net/ethernet/aeroflex/greth.c:692:17: sparse: expected void volatile [noderef] __iomem *addr drivers/net/ethernet/aeroflex/greth.c:692:17: sparse: got unsigned int * drivers/net/ethernet/aeroflex/greth.c:594:18: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got unsigned int * @@ drivers/net/ethernet/aeroflex/greth.c:594:18: sparse: expected void const volatile [noderef] __iomem *addr drivers/net/ethernet/aeroflex/greth.c:594:18: sparse: got unsigned int * drivers/net/ethernet/aeroflex/greth.c:594:18: sparse: sparse: cast to restricted __be32 drivers/net/ethernet/aeroflex/greth.c:600:16: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got unsigned int * @@ drivers/net/ethernet/aeroflex/greth.c:600:16: sparse: expected void const volatile [noderef] __iomem *addr drivers/net/ethernet/aeroflex/greth.c:600:16: sparse: got unsigned int * drivers/net/ethernet/aeroflex/greth.c:600:16: sparse: sparse: cast to restricted __be32 drivers/net/ethernet/aeroflex/greth.c:1029:9: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] value @@ got restricted __be32 [usertype] @@ drivers/net/ethernet/aeroflex/greth.c:1029:9: sparse: expected unsigned int [usertype] value drivers/net/ethernet/aeroflex/greth.c:1029:9: sparse: got restricted __be32 [usertype] drivers/net/ethernet/aeroflex/greth.c:1029:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got unsigned int * @@ drivers/net/ethernet/aeroflex/greth.c:1029:9: sparse: expected void volatile [noderef] __iomem *addr drivers/net/ethernet/aeroflex/greth.c:1029:9: sparse: got unsigned int * drivers/net/ethernet/aeroflex/greth.c:1030:9: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] value @@ got restricted __be32 [usertype] @@ drivers/net/ethernet/aeroflex/greth.c:1030:9: sparse: expected unsigned int [usertype] value drivers/net/ethernet/aeroflex/greth.c:1030:9: sparse: got restricted __be32 [usertype] drivers/net/ethernet/aeroflex/greth.c:1030:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got unsigned int * @@ drivers/net/ethernet/aeroflex/greth.c:1030:9: sparse: expected void volatile [noderef] __iomem *addr drivers/net/ethernet/aeroflex/greth.c:1030:9: sparse: got unsigned int * drivers/net/ethernet/aeroflex/greth.c:1066:15: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got unsigned int * @@ drivers/net/ethernet/aeroflex/greth.c:1066:15: sparse: expected void const volatile [noderef] __iomem *addr drivers/net/ethernet/aeroflex/greth.c:1066:15: sparse: got unsigned int * drivers/net/ethernet/aeroflex/greth.c:1066:15: sparse: sparse: cast to restricted __be32 drivers/net/ethernet/aeroflex/greth.c:1074:25: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] value @@ got restricted __be32 [usertype] @@ drivers/net/ethernet/aeroflex/greth.c:1074:25: sparse: expected unsigned int [usertype] value drivers/net/ethernet/aeroflex/greth.c:1074:25: sparse: got restricted __be32 [usertype] drivers/net/ethernet/aeroflex/greth.c:1074:25: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got unsigned int * @@ drivers/net/ethernet/aeroflex/greth.c:1074:25: sparse: expected void volatile [noderef] __iomem *addr drivers/net/ethernet/aeroflex/greth.c:1074:25: sparse: got unsigned int * drivers/net/ethernet/aeroflex/greth.c:1075:25: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] value @@ got restricted __be32 [usertype] @@ drivers/net/ethernet/aeroflex/greth.c:1075:25: sparse: expected unsigned int [usertype] value drivers/net/ethernet/aeroflex/greth.c:1075:25: sparse: got restricted __be32 [usertype] drivers/net/ethernet/aeroflex/greth.c:1075:25: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got unsigned int * @@ drivers/net/ethernet/aeroflex/greth.c:1075:25: sparse: expected void volatile [noderef] __iomem *addr drivers/net/ethernet/aeroflex/greth.c:1075:25: sparse: got unsigned int * drivers/net/ethernet/aeroflex/greth.c:1077:25: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] value @@ got restricted __be32 [usertype] @@ drivers/net/ethernet/aeroflex/greth.c:1077:25: sparse: expected unsigned int [usertype] value drivers/net/ethernet/aeroflex/greth.c:1077:25: sparse: got restricted __be32 [usertype] drivers/net/ethernet/aeroflex/greth.c:1077:25: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got unsigned int * @@ drivers/net/ethernet/aeroflex/greth.c:1077:25: sparse: expected void volatile [noderef] __iomem *addr drivers/net/ethernet/aeroflex/greth.c:1077:25: sparse: got unsigned int * drivers/net/ethernet/aeroflex/greth.c:1083:25: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] value @@ got restricted __be32 [usertype] @@ drivers/net/ethernet/aeroflex/greth.c:1083:25: sparse: expected unsigned int [usertype] value drivers/net/ethernet/aeroflex/greth.c:1083:25: sparse: got restricted __be32 [usertype] drivers/net/ethernet/aeroflex/greth.c:1083:25: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got unsigned int * @@ drivers/net/ethernet/aeroflex/greth.c:1083:25: sparse: expected void volatile [noderef] __iomem *addr drivers/net/ethernet/aeroflex/greth.c:1083:25: sparse: got unsigned int * drivers/net/ethernet/aeroflex/greth.c:1091:9: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] value @@ got restricted __be32 [usertype] @@ drivers/net/ethernet/aeroflex/greth.c:1091:9: sparse: expected unsigned int [usertype] value drivers/net/ethernet/aeroflex/greth.c:1091:9: sparse: got restricted __be32 [usertype] drivers/net/ethernet/aeroflex/greth.c:1091:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got unsigned int * @@ drivers/net/ethernet/aeroflex/greth.c:1091:9: sparse: expected void volatile [noderef] __iomem *addr drivers/net/ethernet/aeroflex/greth.c:1091:9: sparse: got unsigned int * drivers/net/ethernet/aeroflex/greth.c:328:9: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] value @@ got restricted __be32 [usertype] @@ drivers/net/ethernet/aeroflex/greth.c:328:9: sparse: expected unsigned int [usertype] value drivers/net/ethernet/aeroflex/greth.c:328:9: sparse: got restricted __be32 [usertype] drivers/net/ethernet/aeroflex/greth.c:328:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got unsigned int * @@ drivers/net/ethernet/aeroflex/greth.c:328:9: sparse: expected void volatile [noderef] __iomem *addr drivers/net/ethernet/aeroflex/greth.c:328:9: sparse: got unsigned int * drivers/net/ethernet/aeroflex/greth.c:329:9: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] value @@ got restricted __be32 [usertype] @@ drivers/net/ethernet/aeroflex/greth.c:329:9: sparse: expected unsigned int [usertype] value drivers/net/ethernet/aeroflex/greth.c:329:9: sparse: got restricted __be32 [usertype] drivers/net/ethernet/aeroflex/greth.c:329:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got unsigned int * @@ drivers/net/ethernet/aeroflex/greth.c:329:9: sparse: expected void volatile [noderef] __iomem *addr drivers/net/ethernet/aeroflex/greth.c:329:9: sparse: got unsigned int * drivers/net/ethernet/aeroflex/greth.c:991:24: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got unsigned int * @@ drivers/net/ethernet/aeroflex/greth.c:991:24: sparse: expected void const volatile [noderef] __iomem *addr drivers/net/ethernet/aeroflex/greth.c:991:24: sparse: got unsigned int * drivers/net/ethernet/aeroflex/greth.c:991:24: sparse: sparse: cast to restricted __be32 drivers/net/ethernet/aeroflex/greth.c:994:25: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] value @@ got restricted __be32 [usertype] @@ drivers/net/ethernet/aeroflex/greth.c:994:25: sparse: expected unsigned int [usertype] value drivers/net/ethernet/aeroflex/greth.c:994:25: sparse: got restricted __be32 [usertype] drivers/net/ethernet/aeroflex/greth.c:994:25: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got unsigned int * @@ drivers/net/ethernet/aeroflex/greth.c:994:25: sparse: expected void volatile [noderef] __iomem *addr drivers/net/ethernet/aeroflex/greth.c:994:25: sparse: got unsigned int * drivers/net/ethernet/aeroflex/greth.c:999:25: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] value @@ got restricted __be32 [usertype] @@ drivers/net/ethernet/aeroflex/greth.c:999:25: sparse: expected unsigned int [usertype] value drivers/net/ethernet/aeroflex/greth.c:999:25: sparse: got restricted __be32 [usertype] drivers/net/ethernet/aeroflex/greth.c:999:25: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got unsigned int * @@ drivers/net/ethernet/aeroflex/greth.c:999:25: sparse: expected void volatile [noderef] __iomem *addr drivers/net/ethernet/aeroflex/greth.c:999:25: sparse: got unsigned int * drivers/net/ethernet/aeroflex/greth.c:1003:21: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got unsigned int * @@ drivers/net/ethernet/aeroflex/greth.c:1003:21: sparse: expected void const volatile [noderef] __iomem *addr drivers/net/ethernet/aeroflex/greth.c:1003:21: sparse: got unsigned int * drivers/net/ethernet/aeroflex/greth.c:1003:21: sparse: sparse: cast to restricted __be32 drivers/net/ethernet/aeroflex/greth.c:1004:25: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] value @@ got restricted __be32 [usertype] @@ drivers/net/ethernet/aeroflex/greth.c:1004:25: sparse: expected unsigned int [usertype] value drivers/net/ethernet/aeroflex/greth.c:1004:25: sparse: got restricted __be32 [usertype] drivers/net/ethernet/aeroflex/greth.c:1004:25: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got unsigned int * @@ drivers/net/ethernet/aeroflex/greth.c:1004:25: sparse: expected void volatile [noderef] __iomem *addr drivers/net/ethernet/aeroflex/greth.c:1004:25: sparse: got unsigned int * drivers/net/ethernet/aeroflex/greth.c:1056:9: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] value @@ got restricted __be32 [usertype] @@ drivers/net/ethernet/aeroflex/greth.c:1056:9: sparse: expected unsigned int [usertype] value drivers/net/ethernet/aeroflex/greth.c:1056:9: sparse: got restricted __be32 [usertype] drivers/net/ethernet/aeroflex/greth.c:1056:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got unsigned int * @@ drivers/net/ethernet/aeroflex/greth.c:1056:9: sparse: expected void volatile [noderef] __iomem *addr drivers/net/ethernet/aeroflex/greth.c:1056:9: sparse: got unsigned int * drivers/net/ethernet/aeroflex/greth.c:1057:9: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] value @@ got restricted __be32 [usertype] @@ drivers/net/ethernet/aeroflex/greth.c:1057:9: sparse: expected unsigned int [usertype] value drivers/net/ethernet/aeroflex/greth.c:1057:9: sparse: got restricted __be32 [usertype] drivers/net/ethernet/aeroflex/greth.c:1057:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got unsigned int * @@ drivers/net/ethernet/aeroflex/greth.c:1057:9: sparse: expected void volatile [noderef] __iomem *addr drivers/net/ethernet/aeroflex/greth.c:1057:9: sparse: got unsigned int * >> drivers/net/ethernet/aeroflex/greth.c:1128:52: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected unsigned int [usertype] *bd @@ got unsigned int [noderef] [usertype] __iomem * @@ drivers/net/ethernet/aeroflex/greth.c:1128:52: sparse: expected unsigned int [usertype] *bd >> drivers/net/ethernet/aeroflex/greth.c:1128:52: sparse: got unsigned int [noderef] [usertype] __iomem * drivers/net/ethernet/aeroflex/greth.c:1168:9: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] value @@ got restricted __be32 [usertype] @@ drivers/net/ethernet/aeroflex/greth.c:1168:9: sparse: expected unsigned int [usertype] value drivers/net/ethernet/aeroflex/greth.c:1168:9: sparse: got restricted __be32 [usertype] drivers/net/ethernet/aeroflex/greth.c:1168:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got unsigned int * @@ drivers/net/ethernet/aeroflex/greth.c:1168:9: sparse: expected void volatile [noderef] __iomem *addr drivers/net/ethernet/aeroflex/greth.c:1168:9: sparse: got unsigned int * drivers/net/ethernet/aeroflex/greth.c:1173:15: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got unsigned int * @@ drivers/net/ethernet/aeroflex/greth.c:1173:15: sparse: expected void const volatile [noderef] __iomem *addr drivers/net/ethernet/aeroflex/greth.c:1173:15: sparse: got unsigned int * drivers/net/ethernet/aeroflex/greth.c:1173:15: sparse: sparse: cast to restricted __be32 drivers/net/ethernet/aeroflex/greth.c:1174:25: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got unsigned int * @@ drivers/net/ethernet/aeroflex/greth.c:1174:25: sparse: expected void const volatile [noderef] __iomem *addr drivers/net/ethernet/aeroflex/greth.c:1174:25: sparse: got unsigned int * drivers/net/ethernet/aeroflex/greth.c:1174:25: sparse: sparse: cast to restricted __be32 drivers/net/ethernet/aeroflex/greth.c:1189:9: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] value @@ got restricted __be32 [usertype] @@ drivers/net/ethernet/aeroflex/greth.c:1189:9: sparse: expected unsigned int [usertype] value drivers/net/ethernet/aeroflex/greth.c:1189:9: sparse: got restricted __be32 [usertype] drivers/net/ethernet/aeroflex/greth.c:1189:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got unsigned int * @@ drivers/net/ethernet/aeroflex/greth.c:1189:9: sparse: expected void volatile [noderef] __iomem *addr drivers/net/ethernet/aeroflex/greth.c:1189:9: sparse: got unsigned int * drivers/net/ethernet/aeroflex/greth.c:1211:32: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got unsigned int * @@ drivers/net/ethernet/aeroflex/greth.c:1211:32: sparse: expected void const volatile [noderef] __iomem *addr drivers/net/ethernet/aeroflex/greth.c:1211:32: sparse: got unsigned int * drivers/net/ethernet/aeroflex/greth.c:1211:32: sparse: sparse: cast to restricted __be32 drivers/net/ethernet/aeroflex/greth.c:1222:25: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] value @@ got restricted __be32 [usertype] @@ drivers/net/ethernet/aeroflex/greth.c:1222:25: sparse: expected unsigned int [usertype] value drivers/net/ethernet/aeroflex/greth.c:1222:25: sparse: got restricted __be32 [usertype] drivers/net/ethernet/aeroflex/greth.c:1222:25: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got unsigned int * @@ drivers/net/ethernet/aeroflex/greth.c:1222:25: sparse: expected void volatile [noderef] __iomem *addr drivers/net/ethernet/aeroflex/greth.c:1222:25: sparse: got unsigned int * >> drivers/net/ethernet/aeroflex/greth.c:1367:21: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected struct greth_regs *regs @@ got void [noderef] __iomem * @@ drivers/net/ethernet/aeroflex/greth.c:1367:21: sparse: expected struct greth_regs *regs >> drivers/net/ethernet/aeroflex/greth.c:1367:21: sparse: got void [noderef] __iomem * drivers/net/ethernet/aeroflex/greth.c:1388:9: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] value @@ got restricted __be32 [usertype] @@ drivers/net/ethernet/aeroflex/greth.c:1388:9: sparse: expected unsigned int [usertype] value drivers/net/ethernet/aeroflex/greth.c:1388:9: sparse: got restricted __be32 [usertype] drivers/net/ethernet/aeroflex/greth.c:1388:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got unsigned int * @@ drivers/net/ethernet/aeroflex/greth.c:1388:9: sparse: expected void volatile [noderef] __iomem *addr drivers/net/ethernet/aeroflex/greth.c:1388:9: sparse: got unsigned int * drivers/net/ethernet/aeroflex/greth.c:1392:16: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got unsigned int * @@ drivers/net/ethernet/aeroflex/greth.c:1392:16: sparse: expected void const volatile [noderef] __iomem *addr drivers/net/ethernet/aeroflex/greth.c:1392:16: sparse: got unsigned int * drivers/net/ethernet/aeroflex/greth.c:1392:16: sparse: sparse: cast to restricted __be32 drivers/net/ethernet/aeroflex/greth.c:1402:27: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got unsigned int * @@ drivers/net/ethernet/aeroflex/greth.c:1402:27: sparse: expected void const volatile [noderef] __iomem *addr drivers/net/ethernet/aeroflex/greth.c:1402:27: sparse: got unsigned int * drivers/net/ethernet/aeroflex/greth.c:1402:27: sparse: sparse: cast to restricted __be32 drivers/net/ethernet/aeroflex/greth.c:1405:15: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got unsigned int * @@ drivers/net/ethernet/aeroflex/greth.c:1405:15: sparse: expected void const volatile [noderef] __iomem *addr drivers/net/ethernet/aeroflex/greth.c:1405:15: sparse: got unsigned int * drivers/net/ethernet/aeroflex/greth.c:1405:15: sparse: sparse: cast to restricted __be32 drivers/net/ethernet/aeroflex/greth.c:1416:17: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got unsigned int * @@ drivers/net/ethernet/aeroflex/greth.c:1416:17: sparse: expected void const volatile [noderef] __iomem *addr drivers/net/ethernet/aeroflex/greth.c:1416:17: sparse: got unsigned int * drivers/net/ethernet/aeroflex/greth.c:1416:17: sparse: sparse: cast to restricted __be32 drivers/net/ethernet/aeroflex/greth.c:1416:17: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] value @@ got restricted __be32 [usertype] @@ drivers/net/ethernet/aeroflex/greth.c:1416:17: sparse: expected unsigned int [usertype] value drivers/net/ethernet/aeroflex/greth.c:1416:17: sparse: got restricted __be32 [usertype] drivers/net/ethernet/aeroflex/greth.c:1416:17: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got unsigned int * @@ drivers/net/ethernet/aeroflex/greth.c:1416:17: sparse: expected void volatile [noderef] __iomem *addr drivers/net/ethernet/aeroflex/greth.c:1416:17: sparse: got unsigned int * drivers/net/ethernet/aeroflex/greth.c:1478:9: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] value @@ got restricted __be32 [usertype] @@ drivers/net/ethernet/aeroflex/greth.c:1478:9: sparse: expected unsigned int [usertype] value drivers/net/ethernet/aeroflex/greth.c:1478:9: sparse: got restricted __be32 [usertype] drivers/net/ethernet/aeroflex/greth.c:1478:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got unsigned int * @@ drivers/net/ethernet/aeroflex/greth.c:1478:9: sparse: expected void volatile [noderef] __iomem *addr drivers/net/ethernet/aeroflex/greth.c:1478:9: sparse: got unsigned int * drivers/net/ethernet/aeroflex/greth.c:1479:9: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] value @@ got restricted __be32 [usertype] @@ drivers/net/ethernet/aeroflex/greth.c:1479:9: sparse: expected unsigned int [usertype] value drivers/net/ethernet/aeroflex/greth.c:1479:9: sparse: got restricted __be32 [usertype] drivers/net/ethernet/aeroflex/greth.c:1479:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got unsigned int * @@ drivers/net/ethernet/aeroflex/greth.c:1479:9: sparse: expected void volatile [noderef] __iomem *addr drivers/net/ethernet/aeroflex/greth.c:1479:9: sparse: got unsigned int * drivers/net/ethernet/aeroflex/greth.c:1483:9: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] value @@ got restricted __be32 [usertype] @@ drivers/net/ethernet/aeroflex/greth.c:1483:9: sparse: expected unsigned int [usertype] value drivers/net/ethernet/aeroflex/greth.c:1483:9: sparse: got restricted __be32 [usertype] drivers/net/ethernet/aeroflex/greth.c:1483:9: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got unsigned int * @@ drivers/net/ethernet/aeroflex/greth.c:1483:9: sparse: expected void volatile [noderef] __iomem *addr drivers/net/ethernet/aeroflex/greth.c:1483:9: sparse: got unsigned int * >> drivers/net/ethernet/aeroflex/greth.c:1521:46: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void [noderef] __iomem *base @@ got struct greth_regs *regs @@ >> drivers/net/ethernet/aeroflex/greth.c:1521:46: sparse: expected void [noderef] __iomem *base drivers/net/ethernet/aeroflex/greth.c:1521:46: sparse: got struct greth_regs *regs drivers/net/ethernet/aeroflex/greth.c:1544:47: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void [noderef] __iomem *base @@ got struct greth_regs *regs @@ drivers/net/ethernet/aeroflex/greth.c:1544:47: sparse: expected void [noderef] __iomem *base drivers/net/ethernet/aeroflex/greth.c:1544:47: sparse: got struct greth_regs *regs >> drivers/net/ethernet/aeroflex/greth.c:162:16: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got unsigned int [usertype] *bd @@ drivers/net/ethernet/aeroflex/greth.c:162:16: sparse: expected void const volatile [noderef] __iomem *addr drivers/net/ethernet/aeroflex/greth.c:162:16: sparse: got unsigned int [usertype] *bd drivers/net/ethernet/aeroflex/greth.c:162:16: sparse: sparse: cast to restricted __be32 >> drivers/net/ethernet/aeroflex/greth.c:162:16: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got unsigned int [usertype] *bd @@ drivers/net/ethernet/aeroflex/greth.c:162:16: sparse: expected void const volatile [noderef] __iomem *addr drivers/net/ethernet/aeroflex/greth.c:162:16: sparse: got unsigned int [usertype] *bd drivers/net/ethernet/aeroflex/greth.c:162:16: sparse: sparse: cast to restricted __be32 >> drivers/net/ethernet/aeroflex/greth.c:162:16: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got unsigned int [usertype] *bd @@ drivers/net/ethernet/aeroflex/greth.c:162:16: sparse: expected void const volatile [noderef] __iomem *addr drivers/net/ethernet/aeroflex/greth.c:162:16: sparse: got unsigned int [usertype] *bd drivers/net/ethernet/aeroflex/greth.c:162:16: sparse: sparse: cast to restricted __be32 >> drivers/net/ethernet/aeroflex/greth.c:162:16: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got unsigned int [usertype] *bd @@ drivers/net/ethernet/aeroflex/greth.c:162:16: sparse: expected void const volatile [noderef] __iomem *addr drivers/net/ethernet/aeroflex/greth.c:162:16: sparse: got unsigned int [usertype] *bd drivers/net/ethernet/aeroflex/greth.c:162:16: sparse: sparse: cast to restricted __be32 >> drivers/net/ethernet/aeroflex/greth.c:162:16: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void const volatile [noderef] __iomem *addr @@ got unsigned int [usertype] *bd @@ drivers/net/ethernet/aeroflex/greth.c:162:16: sparse: expected void const volatile [noderef] __iomem *addr drivers/net/ethernet/aeroflex/greth.c:162:16: sparse: got unsigned int [usertype] *bd drivers/net/ethernet/aeroflex/greth.c:162:16: sparse: sparse: cast to restricted __be32 drivers/net/ethernet/aeroflex/greth.c:157:22: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] value @@ got restricted __be32 [usertype] @@ drivers/net/ethernet/aeroflex/greth.c:157:22: sparse: expected unsigned int [usertype] value drivers/net/ethernet/aeroflex/greth.c:157:22: sparse: got restricted __be32 [usertype] >> drivers/net/ethernet/aeroflex/greth.c:157:40: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] __iomem *addr @@ got unsigned int [usertype] *bd @@ drivers/net/ethernet/aeroflex/greth.c:157:40: sparse: expected void volatile [noderef] __iomem *addr drivers/net/ethernet/aeroflex/greth.c:157:40: sparse: got unsigned int [usertype] *bd drivers/net/ethernet/aeroflex/greth.c:157:22: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] value @@ got restricted __be32 [usertype] @@ drivers/net/ethernet/aeroflex/greth.c:157:22: sparse: expected unsigned int [usertype] value drivers/net/ethernet/aeroflex/greth.c:157:22: sparse: got restricted __be32 [usertype] drivers/net/ethernet/aeroflex/greth.c:157:40: sparse: sparse: too many warnings
vim +362 drivers/net/ethernet/aeroflex/greth.c
d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 337 d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 338 static int greth_open(struct net_device *dev) d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 339 { d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 340 struct greth_private *greth = netdev_priv(dev); d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 341 int err; d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 342 d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 343 err = greth_init_rings(greth); d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 344 if (err) { d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 345 if (netif_msg_ifup(greth)) d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 346 dev_err(&dev->dev, "Could not allocate memory for DMA rings\n"); d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 347 return err; d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 348 } d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 349 d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 350 err = request_irq(greth->irq, greth_interrupt, 0, "eth", (void *) dev); d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 351 if (err) { d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 352 if (netif_msg_ifup(greth)) d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 353 dev_err(&dev->dev, "Could not allocate interrupt %d\n", dev->irq); d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 354 greth_clean_rings(greth); d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 355 return err; d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 356 } d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 357 d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 358 if (netif_msg_ifup(greth)) d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 359 dev_dbg(&dev->dev, " starting queue\n"); d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 360 netif_start_queue(dev); d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 361 bbe9e637330abe drivers/net/greth.c Daniel Hellstrom 2011-01-14 @362 GRETH_REGSAVE(greth->regs->status, 0xFF); bbe9e637330abe drivers/net/greth.c Daniel Hellstrom 2011-01-14 363 d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 364 napi_enable(&greth->napi); d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 365 d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 366 greth_enable_irqs(greth); d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 367 greth_enable_tx(greth); d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 368 greth_enable_rx(greth); d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 369 return 0; d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 370 d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 371 } d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 372 d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 373 static int greth_close(struct net_device *dev) d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 374 { d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 375 struct greth_private *greth = netdev_priv(dev); d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 376 d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 377 napi_disable(&greth->napi); d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 378 bbe9e637330abe drivers/net/greth.c Daniel Hellstrom 2011-01-14 379 greth_disable_irqs(greth); d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 380 greth_disable_tx(greth); bbe9e637330abe drivers/net/greth.c Daniel Hellstrom 2011-01-14 381 greth_disable_rx(greth); d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 382 d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 383 netif_stop_queue(dev); d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 384 d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 385 free_irq(greth->irq, (void *) dev); d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 386 d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 387 greth_clean_rings(greth); d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 388 d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 389 return 0; d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 390 } d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 391 41a655ba5654e4 drivers/net/greth.c kirjanov@gmail.com 2010-02-24 392 static netdev_tx_t 41a655ba5654e4 drivers/net/greth.c kirjanov@gmail.com 2010-02-24 393 greth_start_xmit(struct sk_buff *skb, struct net_device *dev) d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 394 { d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 395 struct greth_private *greth = netdev_priv(dev); d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 396 struct greth_bd *bdp; d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 397 int err = NETDEV_TX_OK; 0f73f2c5a3ebb9 drivers/net/greth.c Daniel Hellstrom 2011-01-14 398 u32 status, dma_addr, ctrl; 0f73f2c5a3ebb9 drivers/net/greth.c Daniel Hellstrom 2011-01-14 399 unsigned long flags; d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 400 0f73f2c5a3ebb9 drivers/net/greth.c Daniel Hellstrom 2011-01-14 401 /* Clean TX Ring */ 0f73f2c5a3ebb9 drivers/net/greth.c Daniel Hellstrom 2011-01-14 402 greth_clean_tx(greth->netdev); d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 403 d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 404 if (unlikely(greth->tx_free <= 0)) { 0f73f2c5a3ebb9 drivers/net/greth.c Daniel Hellstrom 2011-01-14 405 spin_lock_irqsave(&greth->devlock, flags);/*save from poll/irq*/ 0f73f2c5a3ebb9 drivers/net/greth.c Daniel Hellstrom 2011-01-14 @406 ctrl = GRETH_REGLOAD(greth->regs->control); 0f73f2c5a3ebb9 drivers/net/greth.c Daniel Hellstrom 2011-01-14 407 /* Enable TX IRQ only if not already in poll() routine */ 0f73f2c5a3ebb9 drivers/net/greth.c Daniel Hellstrom 2011-01-14 408 if (ctrl & GRETH_RXI) 0f73f2c5a3ebb9 drivers/net/greth.c Daniel Hellstrom 2011-01-14 409 GRETH_REGSAVE(greth->regs->control, ctrl | GRETH_TXI); d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 410 netif_stop_queue(dev); 0f73f2c5a3ebb9 drivers/net/greth.c Daniel Hellstrom 2011-01-14 411 spin_unlock_irqrestore(&greth->devlock, flags); d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 412 return NETDEV_TX_BUSY; d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 413 } d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 414 d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 415 if (netif_msg_pktdata(greth)) d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 416 greth_print_tx_packet(skb); d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 417 d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 418 d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 419 if (unlikely(skb->len > MAX_FRAME_SIZE)) { d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 420 dev->stats.tx_errors++; d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 421 goto out; d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 422 } d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 423 0f73f2c5a3ebb9 drivers/net/greth.c Daniel Hellstrom 2011-01-14 424 bdp = greth->tx_bd_base + greth->tx_next; d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 425 dma_addr = greth_read_bd(&bdp->addr); d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 426 d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 427 memcpy((unsigned char *) phys_to_virt(dma_addr), skb->data, skb->len); d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 428 d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 429 dma_sync_single_for_device(greth->dev, dma_addr, skb->len, DMA_TO_DEVICE); d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 430 0f73f2c5a3ebb9 drivers/net/greth.c Daniel Hellstrom 2011-01-14 431 status = GRETH_BD_EN | GRETH_BD_IE | (skb->len & GRETH_BD_LEN); 6af29a963cecf4 drivers/net/greth.c Daniel Hellstrom 2011-09-08 432 greth->tx_bufs_length[greth->tx_next] = skb->len & GRETH_BD_LEN; d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 433 d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 434 /* Wrap around descriptor ring */ d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 435 if (greth->tx_next == GRETH_TXBD_NUM_MASK) { d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 436 status |= GRETH_BD_WR; d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 437 } d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 438 d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 439 greth->tx_next = NEXT_TX(greth->tx_next); d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 440 greth->tx_free--; d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 441 d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 442 /* Write descriptor control word and enable transmission */ d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 443 greth_write_bd(&bdp->stat, status); 0f73f2c5a3ebb9 drivers/net/greth.c Daniel Hellstrom 2011-01-14 444 spin_lock_irqsave(&greth->devlock, flags); /*save from poll/irq*/ d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 445 greth_enable_tx(greth); 0f73f2c5a3ebb9 drivers/net/greth.c Daniel Hellstrom 2011-01-14 446 spin_unlock_irqrestore(&greth->devlock, flags); d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 447 d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 448 out: d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 449 dev_kfree_skb(skb); d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 450 return err; d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 451 } d4c41139df6e74 drivers/net/greth.c Kristoffer Glembo 2010-02-15 452
:::::: The code at line 362 was first introduced by commit :::::: bbe9e637330abe55442aebe799425e224086959f GRETH: fix opening/closing
:::::: TO: Daniel Hellstrom <daniel@gaisler.com> :::::: CC: David S. Miller <davem@davemloft.net>
--- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org [unhandled content-type:application/gzip] |  |