Re: [PATCH net-next v8 0/4] net: Add Keystone NetCP ethernet driver support

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




On 01/28/2015 01:20 PM, Murali Karicheri wrote:
On 01/28/2015 12:43 PM, Murali Karicheri wrote:
On 01/28/2015 11:49 AM, Murali Karicheri wrote:
On 01/27/2015 05:28 PM, Arnd Bergmann wrote:
On Tuesday 20 January 2015 10:53:36 Murali Karicheri wrote:
On 01/19/2015 03:11 PM, David Miller wrote:
From: Murali Karicheri<m-karicheri2@xxxxxx>
Date: Thu, 15 Jan 2015 19:10:03 -0500

The Network Coprocessor (NetCP) is a hardware accelerator that
processes
Ethernet packets. NetCP has a gigabit Ethernet (GbE) subsystem with
a ethernet
switch sub-module to send and receive packets. NetCP also includes
a packet
accelerator (PA) module to perform packet classification operations
such as
header matching, and packet modification operations such as checksum
generation. NetCP can also optionally include a Security
Accelerator(SA)
capable of performing IPSec operations on ingress/egress packets.

Keystone SoC's also have a 10 Gigabit Ethernet Subsystem (XGbE)
which
includes a 3-port Ethernet switch sub-module capable of 10Gb/s and
1Gb/s rates per Ethernet port.

Both GBE and XGBE network processors supported using common
driver. It
is also designed to handle future variants of NetCP.

Series applied to net-next, thanks.
David,

Thanks a lot for applying this series. This helps us move forward to
work on the next set of patches.

Hi Murali,

Building an ARM 'allmodconfig' kernel now runs into two separate
problems
from your driver:

- you have two module_init() instances in one module, which conflict.

- you have two files that are linked into more than one module, so
building
both TI_CPSW and TI_KEYSTONE_NETCP in the same kernel fails.

The answer to both of these is probably to have separate loadable
modules,
but you might be able to come up with a different solution.
Arnd,

Thanks for letting us know. We will look into this.

How do I reproduce this? Is there a defconfig used for allmodconfig? I
am unable to find one. Any details to reproduce this will be useful.

Ok I think I found it.

I did this with next-next branch and it seems to work. I will make
kernel build to reproduce this.

make ARCH=arm allmodconfig
make uImage;

I am building it now.
Arnd,

I see allmodconfig configure NetCP driver as module. My uImage build
from net-next branch went through fine. I am building modules right now
and should show error as you have pointed out. Let me know if you any
issues on how I am working to reproduce the issue (wrong branch, wrong
/incomplete commands etc. I have my CROSS_COMPILE and ARCH set in my
env). Want to reproduce this so as to make sure my fix is addressing
this. Hope I am on the right track.

Reproduced this. Following errors seen when building the modules.

  LD [M]  drivers/net/ethernet/ti/keystone_netcp.o
drivers/net/ethernet/ti/netcp_ethss.o: In function `init_module':
netcp_ethss.c:(.init.text+0x0): multiple definition of `init_module'
drivers/net/ethernet/ti/netcp_core.o:netcp_core.c:(.init.text+0x0): first defined here
drivers/net/ethernet/ti/netcp_ethss.o: In function `cleanup_module':
netcp_ethss.c:(.exit.text+0x0): multiple definition of `cleanup_module'
drivers/net/ethernet/ti/netcp_core.o:netcp_core.c:(.exit.text+0x0): first defined here
make[4]: *** [drivers/net/ethernet/ti/keystone_netcp.o] Error 1


BTW, I had to disable cpsw_ale.c to get to build keystone NetCP. I am assuming someone from TI is addressing this.

drivers/net/ethernet/ti/cpsw_ale.c: In function ‘cpsw_ale_start’:
drivers/net/ethernet/ti/cpsw_ale.c:759:2: error: ‘KBUILD_MODNAME’ undeclared (first use in this function) drivers/net/ethernet/ti/cpsw_ale.c:759:2: note: each undeclared identifier is reported only once for each function it appears in

Murali


Thanks

Murali

Murali
Thanks.

Murali

Arnd








--
Murali Karicheri
Linux Kernel, Texas Instruments
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]
  Powered by Linux