FreeCalypso > hg > freecalypso-sw
diff gsm-fw/L1/stand/README @ 613:9e605ec89ed0
gsm-fw/L1/stand: starting work on our version of standalone L1
author | Michael Spacefalcon <msokolov@ivan.Harhan.ORG> |
---|---|
date | Fri, 29 Aug 2014 17:25:46 +0000 |
parents | |
children | 4d40f9a99445 |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/gsm-fw/L1/stand/README Fri Aug 29 17:25:46 2014 +0000 @@ -0,0 +1,33 @@ +In their internal development environment, TI had a way to build L1 standalone, +i.e., omitting the G23 protocol stack and other large and complex pieces of the +full firmware. Such an ability is essential for sane development, and the +abundant references to OP_L1_STANDALONE throughout the codebase confirm that TI +had it indeed. + +However, we (FreeCalypso) don't have a way to build an OP_L1_STANDALONE image +exactly the way TI did it - we don't have all of the necessary source - the +glue pieces specific to this configuration are missing. Nor do we necessarily +need to imitate what TI did in this department: it appears that TI's standalone +L1 build omitted GPF (with the exception of OS and OSX) and everything that +lives in Riviera land, but for us the situation is different: we already have +a successful build with Riviera and GPF, but no L1, thus we simply need to add +L1 to what we have. Our idea of standalone L1 simply means building without +the G23 stack, which we have yet to begin integrating. + +In the standard firmware build, there is a component called L1 PEI. It is part +of the G23 stack, and has header and library dependencies of the latter - thus +it is *not* part of the L1 code proper. However, it performs some essential +initialization steps, and runs the L1A task. We don't know how TI handled +these functions in their standalone L1 build - we don't have that part of their +source, not even in the otherwise complete LoCosto version, not even if we were +targeting LoCosto hardware. + +Our solution: we are going to lift l1_pei out of LoCosto's g23m-gsm, and hack +up a special version of it that won't have the standard complement of G23 +header and library dependencies. It is virtually certain that TI did something +different, but our hack-solution should work for our needs. + +Because our standalone L1 build is a specially stripped-down version of the +regular fw build, and not at all like TI's standalone L1, we do NOT define +OP_L1_STANDALONE. Instead we have a different preprocessor symbol: +CONFIG_L1_STANDALONE.