Dear Ameet (and Andrei), I have tested the new patch for SystemACE driver. With respect to the single SystemACE driver, it works well. I can boot my linux in ML403 board. (I tried both 2.6.16-rc5 and 2.6.17.1 versions) So first congratulations and thanks for your hard work!
However, when I tried to implemented Temac (with and without SystemACE. TWO conditions.), some errors happened. Here is the compilation information: CC init/do_mounts.o LD init/mounts.o CC init/initramfs.o LD init/built-in.o LD .tmp_vmlinux1 drivers/built-in.o(.sdata+0x2c): multiple definition of `XWaitInAssert' arch/ppc/platforms/4xx/built-in.o(.sdata+0x0): first defined here drivers/built-in.o(.text+0x3e480): In function `XPacketFifoV200a_WriteDre': : multiple definition of `XPacketFifoV200a_WriteDre' arch/ppc/platforms/4xx/built-in.o(.text+0x1b14): first defined here drivers/built-in.o(.text+0x3e158): In function `XPacketFifoV200a_SelfTest': : multiple definition of `XPacketFifoV200a_SelfTest' arch/ppc/platforms/4xx/built-in.o(.text+0x17ec): first defined here drivers/built-in.o(.sbss+0x18c): multiple definition of `XAssertStatus' arch/ppc/platforms/4xx/built-in.o(.sbss+0x8): first defined here drivers/built-in.o(.text+0x3e798): In function `XPacketFifoV200a_L0Write': : multiple definition of `XPacketFifoV200a_L0Write' arch/ppc/platforms/4xx/built-in.o(.text+0x1e2c): first defined here drivers/built-in.o(.text+0x3e280): In function `XPacketFifoV200a_Read': : multiple definition of `XPacketFifoV200a_Read' arch/ppc/platforms/4xx/built-in.o(.text+0x1914): first defined here drivers/built-in.o(.text+0x3e55c): In function `XPacketFifoV200a_L0Read': : multiple definition of `XPacketFifoV200a_L0Read' arch/ppc/platforms/4xx/built-in.o(.text+0x1bf0): first defined here drivers/built-in.o(.text+0x3e380): In function `XPacketFifoV200a_Write': : multiple definition of `XPacketFifoV200a_Write' arch/ppc/platforms/4xx/built-in.o(.text+0x1a14): first defined here drivers/built-in.o(.text+0x3e0cc): In function `XAssertSetCallback': : multiple definition of `XAssertSetCallback' arch/ppc/platforms/4xx/built-in.o(.text+0x44): first defined here drivers/built-in.o(.text+0x3e9fc): In function `XPacketFifoV200a_L0WriteDre': : multiple definition of `XPacketFifoV200a_L0WriteDre' arch/ppc/platforms/4xx/built-in.o(.text+0x2090): first defined here drivers/built-in.o(.text+0x3e0dc): In function `XPacketFifoV200a_Initialize': : multiple definition of `XPacketFifoV200a_Initialize' arch/ppc/platforms/4xx/built-in.o(.text+0x1770): first defined here drivers/built-in.o(.text+0x3e088): In function `XAssert': : multiple definition of `XAssert' arch/ppc/platforms/4xx/built-in.o(.text+0x0): first defined here drivers/built-in.o(.text+0x3e0d8): In function `XNullHandler': : multiple definition of `XNullHandler' arch/ppc/platforms/4xx/built-in.o(.text+0x50): first defined here make: *** [.tmp_vmlinux1] Error 1 It looks like that your patch affect some symbols which are used by Temac. (When I use the old patch for SystemACE, there is no problem like this if I only choose Temac. ) So let's find out the problem together. Also, I don't know if this is a problem from SystemACE or Temac , I would like to invite Andrei to look at this altogether. If any suggestion, please feel free to announce. Thanks for both your help. Regards Ming >From: Ameet Patil <ammubhai at gmail.com> >To: Ming Liu <eemingliu at hotmail.com> >CC: linuxppc-embedded at ozlabs.org >Subject: Re: some problems on the SystemACE driver. >Date: Wed, 12 Jul 2006 10:54:13 +0100 > >Hi Ming, > > > I heard that you have tested this driver. Have you got this problem? > > Why there are so many strange problems for me while you have tested > > without problem? > >Yes, that is right! When I say... I have tested - "it really means I >have tested". So what's the problem? It works for me but not you? The >obvious difference: mine is a ML300 configuration and yours ML403. > >There were some files which unknowing were made dependant on ML300 >target. I have now made them compile for both targets. It should work >fine for you now (Hopefully!). Download the updated patch from the same >location. > >http://www.cs.york.ac.uk/rtslab/demos/amos/xupv2pro/patches/linuxppc-2.6.17_sysace.patch > >Since I don't have ML403 board, theres no way I can test this patch on >it. I rely on you in doing this... and thanks for letting me know the >issues. > >WARNING: There might be more issues. :-) > >Please DONOT hesitate to raise any issues with the driver. I am more >than happy to fix them. > >-Ameet > >Ming Liu wrote: > > Dear Ameet, > > Sorry to bother you again but I am totally confused on the systemACE > > driver. First let me show you the problem. > > > > 1. I downloaded the linux kernel of 2.6.17.1, also the patch for > > SystemACE driver. Applied the patch to the kernel. Replaced the > > xparameters_ml403.h with the generated file xparameters_ml300.h from > > Xilinx EDK. Make menuconfig, make dep and make zImage. Then the error > > shows like this: > > > > drivers/block/xilinx_sysace/xsysace.c:120:6: warning: > > "XPAR_XSYSACE_MEM_WIDTH" is not defined > > drivers/block/xilinx_sysace/xsysace.c: In function `XSysAce_LookupConfig': > > drivers/block/xilinx_sysace/xsysace.c:366: error: > > `XPAR_XSYSACE_NUM_INSTANCES' undeclared (first use in this function) > > drivers/block/xilinx_sysace/xsysace.c:366: error: (Each undeclared > > identifier is reported only once > > drivers/block/xilinx_sysace/xsysace.c:366: error: for each function it > > appears in.) > > make[3]: *** [drivers/block/xilinx_sysace/xsysace.o] Error 1 > > make[2]: *** [drivers/block/xilinx_sysace] Error 2 > > make[1]: *** [drivers/block] Error 2 > > make: *** [drivers] Error 2 > > > > I think this is because of the no inclusion of the xparameters header > > file. So I change #include "xparameters.h" into #include " > > /home/mingliu/linux-2.6.17.1/arch/ppc/platforms/4xx/xparameters/xparameters.h" > > in the files of xsysace.c and xsysace_g.c, using the full address to > > specify the header file. In fact, this is not a serious problem and it > > often happens. But, after the modification, another problem happened: > > GEN .version > > CHK include/linux/compile.h > > UPD include/linux/compile.h > > CC init/version.o > > LD init/built-in.o > > LD .tmp_vmlinux1 > > drivers/built-in.o(.text+0x2234a): In function `XSysAce_GetCfgAddr': > > : undefined reference to `XAssertStatus' > > drivers/built-in.o(.text+0x2235e): In function `XSysAce_GetCfgAddr': > > : undefined reference to `XAssertStatus' > > drivers/built-in.o(.text+0x22364): In function `XSysAce_GetCfgAddr': > > : undefined reference to `XAssert' > > drivers/built-in.o(.text+0x22372): In function `XSysAce_GetCfgAddr': > > : undefined reference to `XAssertStatus' > > drivers/built-in.o(.text+0x2237a): In function `XSysAce_GetCfgAddr': > > : undefined reference to `XAssertStatus' > > drivers/built-in.o(.text+0x22394): In function `XSysAce_GetCfgAddr': > > : undefined reference to `XAssert' > > drivers/built-in.o(.text+0x223a2): In function `XSysAce_GetCfgAddr': > > : undefined reference to `XAssertStatus' > > drivers/built-in.o(.text+0x223aa): In function `XSysAce_GetCfgAddr': > > : undefined reference to `XAssertStatus' > > drivers/built-in.o(.text+0x22cd6): In function `XSysAce_Initialize': > > : undefined reference to `XAssertStatus' > > drivers/built-in.o(.text+0x22cdc): In function `XSysAce_Initialize': > > : undefined reference to `XAssert' > > drivers/built-in.o(.text+0x22cea): In function `XSysAce_Initialize': > > : undefined reference to `XAssertStatus' > > > > ......( a long information to say that undefined reference to the > > XAssert things.) > > > > Also, I tried this in the kernel 2.6.16-rc5. (In fact I prefer this > > version because the temac driver is for this version. ) The same problem > > happened. I checked the source code. The problem happened in the file > > driver/block/xilinx_sysace/adapter.c, etc. Also, the XAssert things are > > defined in the file arch/ppc/platforms/4xx/xilinx_ocp/xbasic_types.c. > > (In 2.6.16 kernel, it is also defined in > > driver/xilinx_edk/xbasic_types.c. There are two copies of this file. ) I > > think the problem is, the systemACE files cannot link together with the > > xbasic_types.c file. > > I heard that you have tested this driver. Have you got this problem? Why > > there are so many strange problems for me while you have tested without > > problem? Without the CF card, I cannot try the Temac driver and my work > > is totally blocked. So I have to ask for your suggestion. Really anxious > > for your useful guidance. Thanks a lot!!!!!! > > > > Regards > > Ming > > > > _________________________________________________________________ > > ?????????????? MSN Messenger: http://messenger.msn.com/cn > > _________________________________________________________________ ???? MSN Explorer: http://explorer.msn.com/lccn/