asihpi - new checkpatch = more changes
PATCH 1/1 asihpi - new checkpatch = more changes
Signed-off-by Eliot Blennerhasssett <[email protected]>
* HPI version 3.09.15
* Updating to latest version of checkpatch resulted in some more warnings to clean up.
* A few whitespace cleanups
* Removed DBG_TXT and DBG_CHAR macros
---
patch attached
--
Eliot Blennerhassett
www.audioscience.com
pci/asihpi/asihpi.c +22 -20
@@ -54,11 +54,7 @@#include <linux/pci.h> #include <linux/version.h> #include <linux/init.h> -#if LINUX_VERSION_CODE >=KERNEL_VERSION (2 ,5 ,0 )#include <linux/jiffies.h> -#else -#include <linux/sched.h> -#endif #include <linux/slab.h> #include <linux/time.h> #include <linux/wait.h>
@@ -177,7 +173,8 @@ static u16 HPI_StreamHostBufferAttach(struct hpi_message hm;struct hpi_response hr; -if (!hStream)return HPI_ERROR_INVALID_OBJ ; +if (!hStream) +return HPI_ERROR_INVALID_OBJ ;if (HPI_HandleObject (hStream) ==HPI_OBJ_OSTREAM )HPI_InitMessage (&hm,HPI_OBJ_OSTREAM ,HPI_OSTREAM_HOSTBUFFER_ALLOC );
@@ -203,7 +200,8 @@ static u16 HPI_StreamHostBufferDetach(struct hpi_message hm;struct hpi_response hr; -if (!hStream)return HPI_ERROR_INVALID_OBJ ; +if (!hStream) +return HPI_ERROR_INVALID_OBJ ;if (HPI_HandleObject (hStream) ==HPI_OBJ_OSTREAM ) HPI_InitMessage(&hm, HPI_OBJ_OSTREAM,
@@ -880,9 +878,9 @@ static int snd_card_asihpi_playback_open/* struct copy so can create initializer dynamically */ runtime->hw = snd_card_asihpi_playback;/* Strictly only necessary for HPI6205 adapters */ -if ((err = -snd_pcm_hw_constraint_pow2 (runtime,0 , -SNDRV_PCM_HW_PARAM_BUFFER_SIZE )) <0 ) + err =snd_pcm_hw_constraint_pow2 (runtime,0 , +SNDRV_PCM_HW_PARAM_BUFFER_SIZE ); +if (err <0 )return err;snd_pcm_set_sync (substream);
@@ -1094,9 +1092,9 @@ static int snd_card_asihpi_capture_open( runtime->hw = snd_card_asihpi_capture;/* Strictly only necessary for HPI6205 adapters */ -if ((err = -snd_pcm_hw_constraint_pow2 (runtime,0 , -SNDRV_PCM_HW_PARAM_BUFFER_SIZE )) <0 ) + err =snd_pcm_hw_constraint_pow2 (runtime,0 , +SNDRV_PCM_HW_PARAM_BUFFER_SIZE ); +if (err <0 )return err;snd_pcm_set_sync (substream);
@@ -1164,10 +1162,10 @@ static int __devinit snd_card_asihpi_pcmstruct snd_pcm *pcm;int err; -if ((err = -snd_pcm_new (asihpi->card,"Asihpi PCM" , device, + err =snd_pcm_new (asihpi->card,"Asihpi PCM" , device, asihpi->wNumOutStreams, asihpi->wNumInStreams, - &pcm)) <0 ) + &pcm); +if (err <0 )return err;/* pointer to ops struct is stored, dont change ops afterwards! */ if (asihpi->support_mmap) {
@@ -1530,7 +1528,8 @@ static int snd_asihpi_aesebu_format_get(/* default to N/A */ ucontrol->value.enumerated.item[0 ] =0 ;/* return success but set the control to N/A */ -if (err)return 0 ; +if (err) +return 0 ;if (source ==HPI_AESEBU_FORMAT_SPDIF ) ucontrol->value.enumerated.item[0 ] =1 ;if (source ==HPI_AESEBU_FORMAT_AESEBU )
@@ -1641,7 +1640,8 @@ static int snd_asihpi_tuner_gain_info(stfor (idx =0 ; idx <3 ; idx++) { err =HPI_ControlQuery (phSubSys, hControl,HPI_TUNER_GAIN , idx,0 , &gainRange[idx]); -if (err !=0 )return err; +if (err !=0 ) +return err; } uinfo->type =SNDRV_CTL_ELEM_TYPE_INTEGER ;
@@ -1693,7 +1693,8 @@ static int asihpi_tuner_band_query(strucfor (idx =0 ; idx < len; idx++) { err =HPI_ControlQuery (phSubSys, hControl ,HPI_TUNER_BAND , idx,0 , &bandList[idx]); -if (err !=0 )break ; +if (err !=0 ) +break ; }return idx;
@@ -1792,7 +1793,8 @@ static int snd_asihpi_tuner_freq_info(st err =HPI_ControlQuery (phSubSys, hControl,HPI_TUNER_FREQ , idx, tunerBands[band_iter], &tempFreqRange[idx]); -if (err !=0 )return err; +if (err !=0 ) +return err; }/* skip band with bogus stepping */
@@ -2306,7 +2308,7 @@ static int snd_asihpi_clklocal_get(strucu32 hControl = kcontrol->private_value;u32 dwRate; -HPI_SampleClock_GetSampleRate (phSubSys, hControl, &dwRate); +HPI_SampleClock_GetLocalRate (phSubSys, hControl, &dwRate); ucontrol->value.integer.value[0 ] = dwRate;return 0 ; }
pci/asihpi/hpi.h +6 -2
@@ -46,7 +46,7 @@ i.e 3.05.02 is a development version#define HPI_VER_RELEASE (v) (v & 0xFF)/* Use single digits for versions less that 10 to avoid octal. */ -#define HPI_VER HPI_VERSION_CONSTRUCTOR(3L, 9, 14) +#define HPI_VER HPI_VERSION_CONSTRUCTOR(3L, 9, 15)#ifdef _DOX_ONLY_/*****************************************************************************/
@@ -187,6 +187,8 @@ extern "C" {#define HPI_ADAPTER_ASI1711 0x1711/** ASI1721 - Quad AM/FM+RDS tuner module */ #define HPI_ADAPTER_ASI1721 0x1721 +/** ASI1722 - Quad FM+RDS tuner module (based on ASI1721 h/w) */ +#define HPI_ADAPTER_ASI1722 0x1722/** ASI1731 - Quad TV tuner module */ #define HPI_ADAPTER_ASI1731 0x1731/*ASI2214 - USB 2.0 1xanalog in, 4 x analog out, 1 x AES in/out */
@@ -406,8 +408,10 @@ OBSOLETE - OEM 4 play PCM, MPEG*/#define HPI_ADAPTER_ASI8801 0x8801#define HPI_ADAPTER_FAMILY_ASI8900 0x8900 +/** OEM FM+RDS, 2 module tuner card */ +#define HPI_ADAPTER_ASI8920 0x8920/** 2 module tuner card */ -#define HPI_ADAPTER_ASI8920 0x8920 +#define HPI_ADAPTER_ASI8921 0x8921/** Used in DLL to indicate device not present */ #define HPI_ADAPTER_ILLEGAL 0xFFFF
pci/asihpi/hpi6000.c +117 -117
343 lines not on this page · raw message
pci/asihpi/hpi6000.h +8 -8
@@ -57,13 +57,13 @@ struct hpi_hif_6000 { (adapterinfo &0xff ) /* Command/status exchanged between host and DSP */ -#define HPI_HIF_IDLE 0 -#define HPI_HIF_SEND_MSG 1 -#define HPI_HIF_GET_RESP 2 -#define HPI_HIF_DATA_MASK 0x10 -#define HPI_HIF_SEND_DATA 0x13 -#define HPI_HIF_GET_DATA 0x14 -#define HPI_HIF_SEND_DONE 5 -#define HPI_HIF_RESET 9 +#define HPI_HIF_IDLE 0 +#define HPI_HIF_SEND_MSG 1 +#define HPI_HIF_GET_RESP 2 +#define HPI_HIF_DATA_MASK 0x10 +#define HPI_HIF_SEND_DATA 0x13 +#define HPI_HIF_GET_DATA 0x14 +#define HPI_HIF_SEND_DONE 5 +#define HPI_HIF_RESET 9#endif /* _HPI6000_H_ */
pci/asihpi/hpi6205.c +9 -7
@@ -1,4 +1,3 @@ -/****************************************************************************** AudioScience HPI driver
@@ -1673,7 +1672,8 @@ static u32 BootLoader_ReadMem32(u32 dwData =0 ;__iomem u32 *pData; -if (nDSPIndex ==0 ) {/* DSP 0 is always C6205 */ +if (nDSPIndex ==0 ) { +/* DSP 0 is always C6205 */ if ((dwAddress >=0x01800000 ) & (dwAddress <0x02000000 )) {/* BAR1 register access */ pData = pao->Pci.apMemBase[1] +
@@ -1694,7 +1694,8 @@ static u32 BootLoader_ReadMem32( dwAddress /sizeof (u32); } dwData =ioread32 (pData); - }else if (nDSPIndex ==1 ) {/* DSP 1 is a C6713 */ + }else if (nDSPIndex ==1 ) { +/* DSP 1 is a C6713 */ u32 dwLsb;BootLoader_WriteMem32 (pao,0 ,HPIAL_ADDR , dwAddress);BootLoader_WriteMem32 (pao,0 ,HPIAH_ADDR , dwAddress >>16 );
@@ -1739,7 +1740,8 @@ static u16 BootLoader_WriteMem32( dwAddress /sizeof (u32); }iowrite32 (dwData, pData); - }else if (nDSPIndex ==1 ) {/* DSP 1 is a C6713 */ + }else if (nDSPIndex ==1 ) { +/* DSP 1 is a C6713 */ BootLoader_WriteMem32 (pao,0 ,HPIAL_ADDR , dwAddress);BootLoader_WriteMem32 (pao,0 ,HPIAH_ADDR , dwAddress >>16 );
@@ -1970,7 +1972,7 @@ static u16 BootLoader_TestMemory(/*for(i=0; i<dwLength; i++) */ i =0 ; { - dwTestAddr = dwStartAddress + (u32 )i *4 ; + dwTestAddr = dwStartAddress + i *4 ; dwTestData =0x00000001 ;for (j =0 ; j <32 ; j++) { BootLoader_WriteMem32(pao, nDSPIndex, dwTestAddr,
@@ -1993,7 +1995,7 @@ static u16 BootLoader_TestMemory(/* write a zero to the next word in memory before we read */ /* the previous write to make sure every memory location is unique */ for (i =0 ; i <100 ; i++) { - dwTestAddr = dwStartAddress + (u32 )i *4 ; + dwTestAddr = dwStartAddress + i *4 ; dwTestData =0xA5A55A5A ;BootLoader_WriteMem32 (pao, nDSPIndex, dwTestAddr, dwTestData);BootLoader_WriteMem32 (pao, nDSPIndex, dwTestAddr +4 ,0 );
@@ -2011,7 +2013,7 @@ static u16 BootLoader_TestMemory(/* zero out entire memory block */ for (i =0 ; i < dwLength; i++) { - dwTestAddr = dwStartAddress + (u32 )i *4 ; + dwTestAddr = dwStartAddress + i *4 ;BootLoader_WriteMem32 (pao, nDSPIndex, dwTestAddr,0x0 ); }return (0 );/*success! */
pci/asihpi/hpicmn.c +6 -7
@@ -100,18 +100,17 @@ struct hpi_adapter_obj *HpiFindAdapter(if (wAdapterIndex >=HPI_MAX_ADAPTERS ) {HPI_DEBUG_LOG (VERBOSE , -DBG_TEXT ("FindAdapter invalid index %d " ), - wAdapterIndex); +"FindAdapter invalid index %d " , wAdapterIndex);return NULL ; } pao = &adapters.adapter[wAdapterIndex];if (pao->wAdapterType !=0 ) { -HPI_DEBUG_LOG (VERBOSE ,DBG_TEXT ("Found adapter index %d\n" ), +HPI_DEBUG_LOG (VERBOSE ,"Found adapter index %d\n" , wAdapterIndex);return (pao); }else { -HPI_DEBUG_LOG (VERBOSE ,DBG_TEXT ("No adapter index %d\n" ), +HPI_DEBUG_LOG (VERBOSE ,"No adapter index %d\n" , wAdapterIndex);return (NULL ); }
@@ -154,7 +153,7 @@ static void SubSysGetAdapters(short i;struct hpi_adapter_obj *pao =NULL ; -HPI_DEBUG_LOG (VERBOSE ,DBG_TEXT ("SubSysGetAdapters\n" )); +HPI_DEBUG_LOG (VERBOSE ,"SubSysGetAdapters\n" );/* for each adapter, place it's type in the position of the array */ /* corresponding to it's adapter number */
@@ -286,8 +285,8 @@ short HpiCheckControlCache(break ; }if (found ==0 ) - HPI_DEBUG_LOG(VERBOSE, DBG_TEXT("Adap %d, Control %d, ") -DBG_TEXT ("Control type %d, Cached %d\n" ), +HPI_DEBUG_LOG (VERBOSE ,"Adap %d, Control %d, " +"Control type %d, Cached %d\n" , phm->wAdapterIndex, pC->ControlIndex, pC->ControlType, found);
pci/asihpi/hpidebug.c +18 -22
@@ -31,7 +31,7 @@ void HPI_DebugInit( void ) { -printk (DBG_TEXT ("Debug Start\n" )); +printk (KERN_INFO "Debug Start\n" ); } int HPI_DebugLevelSet(
@@ -57,12 +57,12 @@ int HPI_DebugLevelGet(#include <stdarg.h> void hpi_debug_printf ( -DBG_CHAR * fmt, +char *fmt, ... ) {va_list arglist; -DBG_CHAR buffer[128 ]; +char buffer[128 ];va_start (arglist, fmt);
@@ -84,7 +84,7 @@ static struct treenode nodename = { \ ARRAY_SIZE(tmp_strarray_##nodename) \ }; -#define get_treenode_elem (node_ptr, idx, type) \ +#define get_treenode_elem (node_ptr, idx, type) \ (&(*((type *)(node_ptr)->array)[idx]))make_treenode_from_array (hpi_subsys_strings,HPI_SUBSYS_STRINGS )
@@ -94,7 +94,7 @@ make_treenode_from_array(hpi_subsys_stri make_treenode_from_array(hpi_mixer_strings, HPI_MIXER_STRINGS)make_treenode_from_array (hpi_node_strings, { - DBG_TEXT("NODE is invalid object")}) + "NODE is invalid object"}) make_treenode_from_array(hpi_control_strings, HPI_CONTROL_STRINGS)make_treenode_from_array (hpi_nvmemory_strings,HPI_OBJ_STRINGS )
@@ -124,7 +124,7 @@ make_treenode_from_array(hpi_subsys_stricompile_time_assert (HPI_OBJ_MAXINDEX ==14 , obj_list_doesnt_match); -static DBG_CHAR *hpi_function_string ( +static char *hpi_function_string (unsigned int function ) {
@@ -136,20 +136,20 @@ static DBG_CHAR *hpi_function_string(if (object ==0 || object ==HPI_OBJ_NODE || object > hpi_function_strings.numElements) -return DBG_TEXT ("Invalid object" ); +return "Invalid object" ; tmp =get_treenode_elem (&hpi_function_strings, object -1 , struct treenode *);if (function ==0 || function > tmp->numElements) -return DBG_TEXT ("Invalid function" ); - - return get_treenode_elem(tmp, function - 1, DBG_CHAR *); +return "Invalid function" ; + + return get_treenode_elem(tmp, function - 1, char *); }void hpi_debug_message (struct hpi_message *phm, -DBG_CHAR * szFileline +char *szFileline ) {if (phm) {
@@ -185,20 +185,17 @@ void hpi_debug_message(default :break ; } -printk (DBG_TEXT - ("%s Adapter %d %s param x%08x \n" ), +printk ("%s Adapter %d %s param x%08x \n" , szFileline, phm->wAdapterIndex,hpi_function_string (phm-> wFunction), (wAttrib <<16 ) + wIndex); }else { -printk (DBG_TEXT - ("Adap=%d, Invalid Obj=%d, Func=%d\n" ), +printk ("Adap=%d, Invalid Obj=%d, Func=%d\n" , phm->wAdapterIndex, phm->wObject, phm->wFunction); } }else -printk (DBG_TEXT - ("NULL message pointer to hpi_debug_message!\n" )); +printk ("NULL message pointer to hpi_debug_message!\n" ); } void hpi_debug_data(
@@ -217,12 +214,11 @@ void hpi_debug_data( lines =8 ;for (i =0 , j =0 ; j < lines; j++) { -printk (DBG_TEXT ("%p:" ), (pdata + i)); +printk (KERN_DEBUG "%p:" , (pdata + i));for (k =0 ; k < cols && i < len; i++, k++) -printk (DBG_TEXT ("%s%04x" ), - k ==0 ?"" :" " , pdata[i]); - -printk (DBG_TEXT ("\n" )); +printk ("%s%04x" , k ==0 ?"" :" " , pdata[i]); + +printk ("\n" ); } }
pci/asihpi/hpidebug.h +219 -231
540 lines not on this page · raw message
pci/asihpi/hpidspcd.c +1 -1
@@ -133,7 +133,7 @@ void HpiDspCode_Rewind(struct dsp_code *psDspCode ) { -/* Go back to start of data, after header */ +/* Go back to start of data, after header */ psDspCode->dwWordCount =sizeof (struct code_header ) /sizeof (u32); }
pci/asihpi/hpifunc.c +3 -3
@@ -3668,14 +3668,14 @@ u16 HPI_FormatCreate(break ;case HPI_FORMAT_PCM16_SIGNED :case HPI_FORMAT_PCM16_BIGENDIAN : - Format.dwBitRate = (u32 )wChannels *dwSampleRate *2 ; + Format.dwBitRate = wChannels * dwSampleRate *2 ;break ;case HPI_FORMAT_PCM32_SIGNED :case HPI_FORMAT_PCM32_FLOAT : - Format.dwBitRate = (u32 )wChannels *dwSampleRate *4 ; + Format.dwBitRate = wChannels * dwSampleRate *4 ;break ;case HPI_FORMAT_PCM8_UNSIGNED : - Format.dwBitRate = (u32 )wChannels *dwSampleRate; + Format.dwBitRate = wChannels * dwSampleRate;break ;default : Format.dwBitRate =0 ;
pci/asihpi/hpimod.c +3 -3
@@ -75,7 +75,7 @@ module_param(bufsize, int,S_IRUGO );/* Allow the debug level to be changed after module load. -E.g. echo 2 > /sys/module/asihpi/parameters/hpiDebugLevel +E.g. echo 2 > /sys/module/asihpi/parameters/hpiDebugLevel */ module_param (hpiDebugLevel, int, S_IRUGO | S_IWUSR
@@ -194,7 +194,7 @@ static int asihpi_hpi_ioctl(get_user (phm, &phpi_ioctl_data->phm);get_user (phr, &phpi_ioctl_data->phr); -/* Now read the message size and data from user space. */ +/* Now read the message size and data from user space. */ /* get_user(hm.wSize, (u16 __user *)phm); */ uncopied_bytes =copy_from_user (&hm, phm,sizeof (hm));if (uncopied_bytes)
@@ -588,7 +588,7 @@ static int __init hpimod_init(return -EIO ; } -if (!major)/* Use dynamically allocated major number. */ +if (!major)/* Use dynamically allocated major number. */ major = chrdev_registered;/* would like to create device in "sound" class
pci/asihpi/hpimsgx.c +5 -6
@@ -73,7 +73,7 @@ static inline void HW_EntryPoint(if (phm->wAdapterIndex <HPI_MAX_ADAPTERS ) { ep = (HPI_HandlerFunc *) hpi_entry_points[phm->wAdapterIndex];if (ep) { -HPI_DEBUG_MESSAGE (phm); +HPI_DEBUG_MESSAGE (DEBUG , phm);ep (phm, phr);HPI_DEBUG_RESPONSE (phr);return ;
@@ -419,7 +419,7 @@ void HPI_MessageEx(void *hOwner ) { -HPI_DEBUG_MESSAGE (phm); +HPI_DEBUG_MESSAGE (DEBUG , phm);if (phm->wType !=HPI_TYPE_MESSAGE ) { HPI_InitResponse(phr, phm->wObject, phm->wFunction,
@@ -465,8 +465,7 @@ void HPI_MessageEx(void *ep =NULL ;char *ep_name; - hpi_debug_message(phm, HPI_DEBUG_FLAG_DEBUG - FILE_LINE DBG_TEXT("DEBUG ")); +HPI_DEBUG_MESSAGE (ERROR , phm); ep = hpi_entry_points[phm->wAdapterIndex];
@@ -480,7 +479,7 @@ void HPI_MessageEx( ep_name ="unknown" ;HPI_DEBUG_LOG (ERROR , -DBG_TEXT ("HPI %s Response - error# %d\n" ), +"HPI %s Response - error# %d\n" , ep_name, phr->wError);if (hpiDebugLevel >=HPI_DEBUG_LEVEL_VERBOSE )
@@ -898,7 +897,7 @@ static u16 HPIMSGX_Init(HPI_LookupEntryPointFunction (phm->u.s.Resource.r.Pci);if (entry_point_func) { -HPI_DEBUG_MESSAGE (phm); +HPI_DEBUG_MESSAGE (DEBUG , phm);entry_point_func (phm, &hr); }else { phr->wError =HPI_ERROR_PROCESSING_MESSAGE ;
pci/asihpi/hpimsgx.h +1 -1
@@ -32,7 +32,7 @@ extern "C" {/* *INDENT-ON* */ #endif -#define HPIMSGX_ALLADAPTERS (0xFFFF) +#define HPIMSGX_ALLADAPTERS (0xFFFF) void HPI_MessageEx( struct hpi_message *phm,
pci/asihpi/hpios_linux_kernel.c +4 -4
@@ -26,7 +26,7 @@ HPI Operating System function implementa#if LINUX_VERSION_CODE >=KERNEL_VERSION (2 ,6 ,14 )void HpiOs_DelayMicroSeconds ( -uint32_t dwNumMicroSec +u32 dwNumMicroSec ) {if ((usecs_to_jiffies (dwNumMicroSec) >1 ) && !in_interrupt ()) {
@@ -41,7 +41,7 @@ void HpiOs_DelayMicroSeconds( }#else void HpiOs_DelayMicroSeconds ( -uint32_t dwNumMicroSec +u32 dwNumMicroSec ) {if ((dwNumMicroSec /1000 >=1000000 /HZ ) && !in_interrupt ()) {
@@ -91,8 +91,8 @@ u16 HpiOs_LockedMem_Alloc( } } -uint16_t HpiOs_LockedMem_Free ( -struct consistent_dma_area * pMemArea +u16 HpiOs_LockedMem_Free ( +struct consistent_dma_area *pMemArea ) {if (pMemArea->size) {
pci/asihpi/hpios_linux_kernel.h +1 -1
@@ -72,7 +72,7 @@ struct consistent_dma_area {static inline u16 HpiOs_LockedMem_GetPhysAddr (struct consistent_dma_area *LockedMemHandle, -uint32_t * pPhysicalAddr +u32 *pPhysicalAddr ) { *pPhysicalAddr = LockedMemHandle->dma_handle;
pci/asihpi/hpipci.h +4 -4
@@ -25,7 +25,7 @@ HPI PCI interface function definitions#define _HPIPCI_H_/* PCI config reg defines */ -#define HPIPCI_CDID 0x0/* Vendor/Device Id */ +#define HPIPCI_CDID 0x0/* Vendor/Device Id */ #define HPIPCI_CSTR 0x0004#define HPIPCI_CCMR 0x0004#define HPIPCI_CCCR 0x0008
@@ -39,9 +39,9 @@ HPI PCI interface function definitions#define HPIPCI_CILP 0x00FC/* bits in command register */ -#define HPIPCI_CCMR_MSE 0x00000002 -#define HPIPCI_CCMR_BM 0x00000004 -#define HPIPCI_CCMR_PERR 0x0000040 +#define HPIPCI_CCMR_MSE 0x00000002 +#define HPIPCI_CCMR_BM 0x00000004 +#define HPIPCI_CCMR_PERR 0x0000040/* NOTE : HpiPci function defintions moved to hpios.h */ #endif /* _HPIPCI_H_ */
_______________________________________________
Alsa-devel mailing list
[email protected]
http://mailman.alsa-project.org/mailman/listinfo/alsa-devel
Takashi Iwai
AppliedAt Thu, 13 Mar 2008 13:24:44 +1300,
Quoted 8 lines · Eliot Blennerhassett
Signed-off-by Eliot Blennerhasssett <[email protected]>* HPI version 3.09.15
* Updating to latest version of checkpatch resulted in some more warnings to clean up.
* A few whitespace cleanups
* RemovedDBG_TXTandDBG_CHARmacros
Applied to HG tree now. Thanks.
Takashi