FreeCalypso > hg > freecalypso-sw
diff nuc-fw/cfgmagic/post-target @ 88:ccde45a06737
nuc-fw: beginning of the configuration mechanism
author | Michael Spacefalcon <msokolov@ivan.Harhan.ORG> |
---|---|
date | Fri, 23 Aug 2013 02:02:59 +0000 |
parents | |
children | 45911ad957fd |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/nuc-fw/cfgmagic/post-target Fri Aug 23 02:02:59 2013 +0000 @@ -0,0 +1,86 @@ +# This shell script fragment is sourced after the selected target. +# Here we'll put code that logically goes with the target hw-related +# stuff, but which we wish to avoid duplicating in every target.* +# fragment. + +# The per-target fragment must have defined CONFIG_IRAM_SIZE, CONFIG_XRAM_SIZE +# and CONFIG_FWFLASH_SIZE. +if [ -z "$CONFIG_IRAM_SIZE" ] +then + echo "Error: target.$TARGET failed to define CONFIG_IRAM_SIZE" 1>&2 + exit 1 +fi + +if [ -z "$CONFIG_XRAM_SIZE" ] +then + echo "Error: target.$TARGET failed to define CONFIG_XRAM_SIZE" 1>&2 + exit 1 +fi + +if [ -z "$CONFIG_FWFLASH_SIZE" ] +then + echo "Error: target.$TARGET failed to define CONFIG_FWFLASH_SIZE" 1>&2 + exit 1 +fi + +# export them to C and to the m4-based ld script generation logic +export_to_c CONFIG_IRAM_SIZE +export_to_m4 CONFIG_IRAM_SIZE +export_to_c CONFIG_XRAM_SIZE +export_to_m4 CONFIG_XRAM_SIZE +export_to_c CONFIG_FWFLASH_SIZE +export_to_m4 CONFIG_FWFLASH_SIZE + +# Because we'll be using a lot of TI's code that is very liberally sprinkled +# with conditionals on their voodoo numbers for CHIPSET etc, we really have +# no choice but to continue using these nasty numbers, at least where +# possible. + +if [ -z "$DBB_type" ] +then + echo "Error: target.$TARGET failed to define DBB_type" 1>&2 + exit 1 +fi + +case "$DBB_type" in + 751992*) + # This is the only Calypso variant we currently work with, + # and we have no authoritative knowledge of the correct + # CHIPSET number - only a current best guess. + CHIPSET=10 + # let's hope for the best + ;; + *) + echo "Error: unknown DBB_type=$DBB_type" 1>&2 + exit 1 + ;; +esac +export_to_c CHIPSET + +if [ -z "$ABB_type" ] +then + echo "Error: target.$TARGET failed to define ABB_type" 1>&2 + exit 1 +fi + +case "$ABB_type" in + Iota*) + ANLG_FAM=2 + ;; + Syren*) + ANLG_FAM=3 + ;; + *) + echo "Error: unknown ABB_type=$ABB_type" 1>&2 + exit 1 + ;; +esac +export_to_c ANLG_FAM + +# Ensure that device_class is set - various feature configurations +# will certainly depend on it. +if [ -z "$device_class" ] +then + echo "Error: target.$TARGET failed to define device_class" 1>&2 + exit 1 +fi