Re: [PATCHv3 2/2] msm: Support DEBUG_LL on MSM8660 and MSM8960

From: Stephen Boyd
Date: Tue Nov 08 2011 - 23:11:30 EST


On 11/08/11 11:08, Nicolas Pitre wrote:
>> + .macro senduart, rd, rx
>> +#ifdef CONFIG_MSM_HAS_DEBUG_UART_HS
>> + @ Write the 1 character to UARTDM_TF
>> + str \rd, [\rx, #0x70]
>> +#else
>> teq \rx, #0
>> strne \rd, [\rx, #0x0C]
>> +#endif
>> .endm
> Why testing for zero in the #else part? The upper level code should
> never call this macro with a null byte.
>

Ok I poked into the git logs (thanks Bryan). It was first introduced in
bcc0f6a ([ARM] msm: clean up iomap and devices, 2008-09-10). It seems
that debug_ll support on MSM at the time had to remove the virtual
mapping for the uart base. Thus when the MMU was enabled the addruart
macro returned 0 and the senduart macro would test for 0 so that
senduart could disable debug_ll when the MMU was enabled. Something
about "problems with the peripheral window".

Later on, the virtual mapping was added back in 6339f66 (msm: make
debugging UART (for DEBUG_LL) configurable, 2009-11-02) but the patch
forgot to remove the teq. So as it stands the teq has been useless for
two years.

--
Sent by an employee of the Qualcomm Innovation Center, Inc.
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum.

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/