view blobs/patches/frame_na7_db_ir-systrace.patch @ 635:baa0a02bc676

niq32.c DTR handling restored for targets that have it TI's original TCS211 fw treated GPIO 3 as the DTR input (wired so on C-Sample and D-Sample boards, also compatible with Leonardo and FCDEV3B which have a fixed pull-down resistor on this GPIO line), and the code in niq32.c called UAF_DTRInterruptHandler() (implemented in uartfax.c) from the IQ_KeypadGPIOHandler() function. But on Openmoko's GTA02 with their official fw this GPIO is a floating input, all of the DTR handling code in uartfax.c including the interrupt logic is still there, but the hobbled TCS211-20070608 semi-src delivery which OM got from TI contained a change in niq32.c (which had been kept in FC until now) that removed the call to UAF_DTRInterruptHandler() as part of those not-quite-understood "CC test" hacks. The present change fixes this bug at a long last: if we are building fw for a target that has TI's "classic" DTR & DCD GPIO arrangement (dsample, fcmodem and gtm900), we bring back all of TI's original code in both uartfax.c and niq32.c, whereas if we are building fw for a target that does not use this classic GPIO arrangement, the code in niq32.c goes back to what we got from OM and all DTR & DCD code in uartfax.c is conditioned out. This change also removes the very last remaining bit of "CC test" bogosity from our FreeCalypso code base.
author Mychaela Falconia <falcon@freecalypso.org>
date Sun, 19 Jan 2020 01:41:35 +0000
parents acb07ce22054
children
line wrap: on
line source

# TI's original version of the pf_TaskEntry() function in the guts of GPF
# does this number once all GPF tasks have entered their main loop:
#
#    TraceMask[0] = 0;
#
# The effect of this line is that "system" trace output gets disabled;
# in particular, "system primitive" requests like querying for existing
# TRACECLASS of various entities or for the GPF version elicit no response
# whatsoever until one sends a TRACECLASS setting sysprim which restores
# the TC_SYSTEM bit in TraceMask[0].
#
# In FreeCalypso we consider this clearing of TraceMask[0] to be either
# a bug or a misfeature, and we would like to change it.  In the case of
# the GPF code in question, we do have a copy of frame.c source (the module
# where the offending pf_TaskEntry() function is implemented) which we believe
# is the same code as what's in the TCS211 version of GPF, but TCS211 is not
# set up to recompile any part of GPF from source, and there are other modules
# in the same frame_na7_db_ir.lib for which we don't have the original source
# (os_*), hence it is easier to do a binary lib patch.
#
# The present patch is a binary form of:
#
# -TraceMask[0] = 0;
# +TraceMask[0] = TC_SYSTEM;

[frame.obj]

.text 2ee 10