|
@@ -257,6 +257,8 @@ extern void dbg_autocolourise ( unsigned long id );
|
257
|
257
|
extern void dbg_decolourise ( void );
|
258
|
258
|
extern void dbg_hex_dump_da ( unsigned long dispaddr,
|
259
|
259
|
const void *data, unsigned long len );
|
|
260
|
+extern void dbg_pause ( void );
|
|
261
|
+extern void dbg_more ( void );
|
260
|
262
|
|
261
|
263
|
#if DEBUG_SYMBOL
|
262
|
264
|
#define DBGLVL_MAX DEBUG_SYMBOL
|
|
@@ -332,6 +334,28 @@ int __debug_disable;
|
332
|
334
|
DBG_HDA_IF ( level, _data, _data, len ); \
|
333
|
335
|
} while ( 0 )
|
334
|
336
|
|
|
337
|
+/**
|
|
338
|
+ * Prompt for key press if we are at a certain debug level
|
|
339
|
+ *
|
|
340
|
+ * @v level Debug level
|
|
341
|
+ */
|
|
342
|
+#define DBG_PAUSE_IF( level ) do { \
|
|
343
|
+ if ( DBG_ ## level ) { \
|
|
344
|
+ dbg_pause(); \
|
|
345
|
+ } \
|
|
346
|
+ } while ( 0 )
|
|
347
|
+
|
|
348
|
+/**
|
|
349
|
+ * Prompt for more output data if we are at a certain debug level
|
|
350
|
+ *
|
|
351
|
+ * @v level Debug level
|
|
352
|
+ */
|
|
353
|
+#define DBG_MORE_IF( level ) do { \
|
|
354
|
+ if ( DBG_ ## level ) { \
|
|
355
|
+ dbg_more(); \
|
|
356
|
+ } \
|
|
357
|
+ } while ( 0 )
|
|
358
|
+
|
335
|
359
|
/**
|
336
|
360
|
* Select colour for debug messages if we are at a certain debug level
|
337
|
361
|
*
|
|
@@ -380,41 +404,69 @@ int __debug_disable;
|
380
|
404
|
DBG_DC_IF ( level ); \
|
381
|
405
|
} while ( 0 )
|
382
|
406
|
|
|
407
|
+#define DBGC_PAUSE_IF( level, id ) do { \
|
|
408
|
+ DBG_AC_IF ( level, id ); \
|
|
409
|
+ DBG_PAUSE_IF ( level ); \
|
|
410
|
+ DBG_DC_IF ( level ); \
|
|
411
|
+ } while ( 0 )
|
|
412
|
+
|
|
413
|
+#define DBGC_MORE_IF( level, id ) do { \
|
|
414
|
+ DBG_AC_IF ( level, id ); \
|
|
415
|
+ DBG_MORE_IF ( level ); \
|
|
416
|
+ DBG_DC_IF ( level ); \
|
|
417
|
+ } while ( 0 )
|
|
418
|
+
|
383
|
419
|
/* Versions of the DBGxxx_IF() macros that imply DBGxxx_IF( LOG, ... )*/
|
384
|
420
|
|
385
|
|
-#define DBG( ... ) DBG_IF ( LOG, __VA_ARGS__ )
|
386
|
|
-#define DBG_HDA( ... ) DBG_HDA_IF ( LOG, __VA_ARGS__ )
|
387
|
|
-#define DBG_HD( ... ) DBG_HD_IF ( LOG, __VA_ARGS__ )
|
388
|
|
-#define DBGC( ... ) DBGC_IF ( LOG, __VA_ARGS__ )
|
389
|
|
-#define DBGC_HDA( ... ) DBGC_HDA_IF ( LOG, __VA_ARGS__ )
|
390
|
|
-#define DBGC_HD( ... ) DBGC_HD_IF ( LOG, __VA_ARGS__ )
|
|
421
|
+#define DBG( ... ) DBG_IF ( LOG, ##__VA_ARGS__ )
|
|
422
|
+#define DBG_HDA( ... ) DBG_HDA_IF ( LOG, ##__VA_ARGS__ )
|
|
423
|
+#define DBG_HD( ... ) DBG_HD_IF ( LOG, ##__VA_ARGS__ )
|
|
424
|
+#define DBG_PAUSE( ... ) DBG_PAUSE_IF ( LOG, ##__VA_ARGS__ )
|
|
425
|
+#define DBG_MORE( ... ) DBG_MORE_IF ( LOG, ##__VA_ARGS__ )
|
|
426
|
+#define DBGC( ... ) DBGC_IF ( LOG, ##__VA_ARGS__ )
|
|
427
|
+#define DBGC_HDA( ... ) DBGC_HDA_IF ( LOG, ##__VA_ARGS__ )
|
|
428
|
+#define DBGC_HD( ... ) DBGC_HD_IF ( LOG, ##__VA_ARGS__ )
|
|
429
|
+#define DBGC_PAUSE( ... ) DBGC_PAUSE_IF ( LOG, ##__VA_ARGS__ )
|
|
430
|
+#define DBGC_MORE( ... ) DBGC_MORE_IF ( LOG, ##__VA_ARGS__ )
|
391
|
431
|
|
392
|
432
|
/* Versions of the DBGxxx_IF() macros that imply DBGxxx_IF( EXTRA, ... )*/
|
393
|
433
|
|
394
|
|
-#define DBG2( ... ) DBG_IF ( EXTRA, __VA_ARGS__ )
|
395
|
|
-#define DBG2_HDA( ... ) DBG_HDA_IF ( EXTRA, __VA_ARGS__ )
|
396
|
|
-#define DBG2_HD( ... ) DBG_HD_IF ( EXTRA, __VA_ARGS__ )
|
397
|
|
-#define DBGC2( ... ) DBGC_IF ( EXTRA, __VA_ARGS__ )
|
398
|
|
-#define DBGC2_HDA( ... ) DBGC_HDA_IF ( EXTRA, __VA_ARGS__ )
|
399
|
|
-#define DBGC2_HD( ... ) DBGC_HD_IF ( EXTRA, __VA_ARGS__ )
|
|
434
|
+#define DBG2( ... ) DBG_IF ( EXTRA, ##__VA_ARGS__ )
|
|
435
|
+#define DBG2_HDA( ... ) DBG_HDA_IF ( EXTRA, ##__VA_ARGS__ )
|
|
436
|
+#define DBG2_HD( ... ) DBG_HD_IF ( EXTRA, ##__VA_ARGS__ )
|
|
437
|
+#define DBG2_PAUSE( ... ) DBG_PAUSE_IF ( EXTRA, ##__VA_ARGS__ )
|
|
438
|
+#define DBG2_MORE( ... ) DBG_MORE_IF ( EXTRA, ##__VA_ARGS__ )
|
|
439
|
+#define DBGC2( ... ) DBGC_IF ( EXTRA, ##__VA_ARGS__ )
|
|
440
|
+#define DBGC2_HDA( ... ) DBGC_HDA_IF ( EXTRA, ##__VA_ARGS__ )
|
|
441
|
+#define DBGC2_HD( ... ) DBGC_HD_IF ( EXTRA, ##__VA_ARGS__ )
|
|
442
|
+#define DBGC2_PAUSE( ... ) DBGC_PAUSE_IF ( EXTRA, ##__VA_ARGS__ )
|
|
443
|
+#define DBGC2_MORE( ... ) DBGC_MORE_IF ( EXTRA, ##__VA_ARGS__ )
|
400
|
444
|
|
401
|
445
|
/* Versions of the DBGxxx_IF() macros that imply DBGxxx_IF( PROFILE, ... )*/
|
402
|
446
|
|
403
|
|
-#define DBGP( ... ) DBG_IF ( PROFILE, __VA_ARGS__ )
|
404
|
|
-#define DBGP_HDA( ... ) DBG_HDA_IF ( PROFILE, __VA_ARGS__ )
|
405
|
|
-#define DBGP_HD( ... ) DBG_HD_IF ( PROFILE, __VA_ARGS__ )
|
406
|
|
-#define DBGCP( ... ) DBGC_IF ( PROFILE, __VA_ARGS__ )
|
407
|
|
-#define DBGCP_HDA( ... ) DBGC_HDA_IF ( PROFILE, __VA_ARGS__ )
|
408
|
|
-#define DBGCP_HD( ... ) DBGC_HD_IF ( PROFILE, __VA_ARGS__ )
|
|
447
|
+#define DBGP( ... ) DBG_IF ( PROFILE, ##__VA_ARGS__ )
|
|
448
|
+#define DBGP_HDA( ... ) DBG_HDA_IF ( PROFILE, ##__VA_ARGS__ )
|
|
449
|
+#define DBGP_HD( ... ) DBG_HD_IF ( PROFILE, ##__VA_ARGS__ )
|
|
450
|
+#define DBGP_PAUSE( ... ) DBG_PAUSE_IF ( PROFILE, ##__VA_ARGS__ )
|
|
451
|
+#define DBGP_MORE( ... ) DBG_MORE_IF ( PROFILE, ##__VA_ARGS__ )
|
|
452
|
+#define DBGCP( ... ) DBGC_IF ( PROFILE, ##__VA_ARGS__ )
|
|
453
|
+#define DBGCP_HDA( ... ) DBGC_HDA_IF ( PROFILE, ##__VA_ARGS__ )
|
|
454
|
+#define DBGCP_HD( ... ) DBGC_HD_IF ( PROFILE, ##__VA_ARGS__ )
|
|
455
|
+#define DBGCP_PAUSE( ... ) DBGC_PAUSE_IF ( PROFILE, ##__VA_ARGS__ )
|
|
456
|
+#define DBGCP_MORE( ... ) DBGC_MORE_IF ( PROFILE, ##__VA_ARGS__ )
|
409
|
457
|
|
410
|
458
|
/* Versions of the DBGxxx_IF() macros that imply DBGxxx_IF( IO, ... )*/
|
411
|
459
|
|
412
|
|
-#define DBGIO( ... ) DBG_IF ( IO, __VA_ARGS__ )
|
413
|
|
-#define DBGIO_HDA( ... ) DBG_HDA_IF ( IO, __VA_ARGS__ )
|
414
|
|
-#define DBGIO_HD( ... ) DBG_HD_IF ( IO, __VA_ARGS__ )
|
415
|
|
-#define DBGCIO( ... ) DBGC_IF ( IO, __VA_ARGS__ )
|
416
|
|
-#define DBGCIO_HDA( ... ) DBGC_HDA_IF ( IO, __VA_ARGS__ )
|
417
|
|
-#define DBGCIO_HD( ... ) DBGC_HD_IF ( IO, __VA_ARGS__ )
|
|
460
|
+#define DBGIO( ... ) DBG_IF ( IO, ##__VA_ARGS__ )
|
|
461
|
+#define DBGIO_HDA( ... ) DBG_HDA_IF ( IO, ##__VA_ARGS__ )
|
|
462
|
+#define DBGIO_HD( ... ) DBG_HD_IF ( IO, ##__VA_ARGS__ )
|
|
463
|
+#define DBGIO_PAUSE( ... ) DBG_PAUSE_IF ( IO, ##__VA_ARGS__ )
|
|
464
|
+#define DBGIO_MORE( ... ) DBG_MORE_IF ( IO, ##__VA_ARGS__ )
|
|
465
|
+#define DBGCIO( ... ) DBGC_IF ( IO, ##__VA_ARGS__ )
|
|
466
|
+#define DBGCIO_HDA( ... ) DBGC_HDA_IF ( IO, ##__VA_ARGS__ )
|
|
467
|
+#define DBGCIO_HD( ... ) DBGC_HD_IF ( IO, ##__VA_ARGS__ )
|
|
468
|
+#define DBGCIO_PAUSE( ... ) DBGC_PAUSE_IF ( IO, ##__VA_ARGS__ )
|
|
469
|
+#define DBGCIO_MORE( ... ) DBGC_MORE_IF ( IO, ##__VA_ARGS__ )
|
418
|
470
|
|
419
|
471
|
|
420
|
472
|
#if DEBUG_SYMBOL == 0
|