What I have to do to (successfull) compile the CFE

8 posts / 0 new
Last post
wgr_br
wgr_br's picture
What I have to do to (successfull) compile the CFE

Hi,

After downloading the source code, the toolchain, I tried to follow the steps in the README file in the /bcm5354/src/cfe, I get a lot of redefinitions (in files sbextif.h and sbchipc.h) of CFE_xx constants and others. Then I get a warning of implicit declaration of function sbpci_check then the make process stops.

What possibly I'm doing wrong?

Thanks in advance for the help,

bzing2
bzing2's picture
Hi. I just had a quick check

Hi. I just had a quick check to see if I had the same problem, and I do! Where did you get your CFE sources from? (Mine are from Tomato).

It would appear that bcm5354/src/shared/hndpci.c is missing the definition of sbpci_check. I have managed to find one reference to this in sbpci.c from the DLink sources (you might need a little imagination to stick them together).

ftp://ftp.dlink.com/GPL/DWL-3150/05_16_07/src/shared/sbpci.c

Given the number of redefinitions I am guessing that things have been glued together from different sources (nothing new there!). Have you considered downloading CFE from Broadcom?

http://www.broadcom.com/products/communications_processors_downloads.php

Sorry all of this in probably not entirely helpful. However fixing the boot loader is one of the things on my list; I haven't gotten around to it yet. So if you have any success please let me know.

Slightly related: Have you looked at the JTAG for the board? Again its on my list; mainly as the recovery path to a failed replacement of the boot loader!

wgr_br
wgr_br's picture
I'd get the sources from

I'd get the sources from Netgear itself.

I Tried to remove the call for this function, only to see if its the only missing point, but I had to include the TRX function, and get a fatal link problem to a lot of functions on 'hndpmu.c' missing when linking 'sbutils' and then I get really stuck (I don't have even a little idea from were to begin to correct this). After all, I have a little knowlege of C programming, but an almost inexistent knowledge of MAKEFILES.

I think that the CFE sources from Netgear aren't ready to compile after all... Very strange...

About Broadcom, I didn't found any BCM5354 compatible CFE source code, in the site.

bzing2
bzing2's picture
Ok, honestly my advice, don't

Ok, honestly my advice, don't touch the boot loader!

I am not at all surprised that the sources do not compile out the box! To fix this your going to have to hack around with both the C and the Makefiles. I suspect you will have, as suggested, to piece together the missing functions from other sources, and then fix the makefiles to build them. The reason I suggested the Broadcom sources is because it may have provided a clean starting point.

Before you go too much further have you put any thought to what happens if your CFE compiles but doesn't work? If you reflash the boot loader and it breaks your basically stuffed; unless you have a working JTAG.

wgr_br
wgr_br's picture
I understand your concern...

I understand your concern... And yes, I have a working Jtag.

I was, looking for a working and compilable CFE code base for BCM5354, as most of them I found was for BCM5352 or don't compile successfull at all (like the Netgear's one).

bzing2
bzing2's picture
Sorry for the "concern" ... I

Sorry for the "concern" ... I am sure you understand why ;)

I am sorry to say that there is no easy answer to the code here; its just going to be painful. I will have a look later today and see if I can't get something to compile - I will keep you posted.

Now, the JTAG, that has me interested. a) Do you have the pin out? b) what are you using to talk to it? I unfortunately I have access to nothing more than a Wiggler.

wgr_br
wgr_br's picture
Let me clarify why I'm trying

Let me clarify why I'm trying to compile CFE:

I don't have a wgr614L yet; I'm trying to get one, and a WHR-G125 too; but in Brazil (where I live) its a VERY DIFFICULT job to get anything that is not made "standard" by distributors. I already have a WRT-54G v8 (more easy to get there) who have the working jtag (thru the paralell printer interface and a C code I got on the internet and modified - I think its what you call 'Wiggler' ;) ).

My intention is to use these routers as a platform (BCM5354) to develop specific applications (who requires Ethernet and/or wireless lan - like little servers, media interfaces/servers, among others), so I'm trying to learn and get control of it to let me make little hardware modifications that could be necessary.

abc
abc's picture
lida are gaining in

lida are gaining in popularity in the dieting world, but not many know what this is and what it can do. lida daidaihua is the commercial name for what is more commonly known as the daidaihua . This berry is most widely used in China, but is slowly gaining popularity around the world for weight loss purposes. Losing weight is not the only health benefit from these lida slimming either, which makes them even more useful.