On Saturday, 20 October 2012 08:07:35 UTC+3, Like Learn wrote:
> My task is to analyze a legacy firmware project using Qualcomm MDM9X00
> baseband chip with thousands of files (literally) to fix a bug. There is no
> design documents about the project.
Nice task. You have something interesting to do. No documentation and likely no
unit-tests means that you should carefully consider twice before you change
one character in such code.
> The project is qriting in C++, halve of them are commented in Doxygen
> format, while the other halve not.
That is half better than no design documentation whatsoever.
> I don't have the hardware to run the firmware or debugging. The only thing
> I have is a list of debugging outputs of the printfs in firmware collected
> by the client.
Then your client is eager to pay for at least 10 times less efficient
development process than normal? That instead of giving you some little
device for debugging? It is likely someting like mobile phone so transport can't be too expensive. Excellent news! Both rich and stupid clients! That
is most golden treasure imaginable.
> I spent one day today and even couldn't find out where the firmware starts.
> Obviously it was not the main function. The comments are not in pure
> English, frustrated. Any tip to find out the starting line of an ARM
> project?
Why they did choose you as developer? There is nothing worse
than stupid managers. Run perhaps? If not then compile it into binary and
examine that. It has to start somehow and there is nothing magic about it.
Other option is to just to do whatever you like and week later to tell that
you tried hard but it seems that you are not qualified enough for the work.
> BTW, any suggestion for debugging tools toward Qualcomm MDM9x00? I believe
> it belongs to ARM family and has multiple-processors.
It is mobile wireless modem chip. I suspect that the
software is not for that chip but for some other embedded processor that uses it as a modem.
|