[OE-core] [meta-xilinx] How to debug the value of ${TARGET_ARCH} in meta-xilinx/classes/xilinx-boot.class

Khem Raj raj.khem at gmail.com
Sun Jun 3 00:48:33 UTC 2012


On Saturday, June 2, 2012, Elvis Dowson <elvis.dowson at gmail.com> wrote:
> Hi,
>
>> On Jun 2, 2012, at 10:36 PM, Elvis Dowson wrote:
>>
>>> How can I debug the value of ${TARGET_ARCH} in
meta-xilinx/classes/xilinx-boot.class, for the following function:
>>>
>>> do_export_xparam() {
>>> bbnote "Replacing xparameters header to match hardware model"
>>> xparam=$1
>>> if [ "${TARGET_ARCH}" == "powerpc" ]; then
>>>      cpu="PPC`echo ${TARGET_CPU} | tr '[:lower:]' '[:upper:]'`"
>>> else
>>>      cpu=`echo ${TARGET_CPU} | tr '[:lower:]' '[:upper:]'`
>>> fi
>>> cp ${xparam} ${S}/board/xilinx/${XILINX_BOARD}
>>> echo "/*** Cannonical definitions ***/
>>> #define XPAR_PLB_CLOCK_FREQ_HZ XPAR_PROC_BUS_0_FREQ_HZ
>>> #define XPAR_CORE_CLOCK_FREQ_HZ XPAR_CPU_${cpu}_CORE_CLOCK_FREQ_HZ
>>> #ifndef XPAR_DDR2_SDRAM_MEM_BASEADDR
>>> # define XPAR_DDR2_SDRAM_MEM_BASEADDR XPAR_DDR_SDRAM_MPMC_BASEADDR
>>> #endif
>>> #define XPAR_PCI_0_CLOCK_FREQ_HZ    0" >>
${S}/board/xilinx/${XILINX_BOARD}/xparameters.h
>>> }
>>
>> In the above code ${TARGET_ARCH} always evaluates to "powerpc". I just
inserted ${TARGET_ARCH} in the echo statements, and saw the value in the
file.
>>
>> Now what I can't seem to figure out is why, for the following if
condition, the first branch isn't being take; the else branch is always
evaluated, and the value for cpu is always set to "440" instead of "PPC440"
>>
>> if [ "${TARGET_ARCH}" == "powerpc" ]; then
>>       cpu="PPC`echo ${TARGET_CPU} | tr '[:lower:]' '[:upper:]'`"
>> else
>>       cpu="`echo ${TARGET_CPU} | tr '[:lower:]' '[:upper:]'`"
>> fi
>
> Changing it to use a single = , instead of == solved it, but it would
help if someone could explain why. From the link below
> http://tldp.org/LDP/Bash-Beginners-Guide/html/sect_07_01.html
> apparently, using a "=" is for strict posix compilance.
>
> but I fail to see why when ${TARGET_ARCH} evaluates to "powerpc", and I
do a string comparision if [ "${TARGET_ARCH}" == "powerpc" ] it evaluates
to false, and if [ "${TARGET_ARCH}" = "powerpc" ] evaluates to true.


What's your default she I guess its not bash
>
> Best regards,
>
> Elvis Dowson
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core at lists.openembedded.org
> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openembedded.org/pipermail/openembedded-core/attachments/20120602/15b8b2f9/attachment-0002.html>


More information about the Openembedded-core mailing list