358
361
#define SRBM_STATUS 0x0E50
364
#define HDMI_CONTROL 0x7400
365
# define HDMI_KEEPOUT_MODE (1 << 0)
366
# define HDMI_PACKET_GEN_VERSION (1 << 4) /* 0 = r6xx compat */
367
# define HDMI_ERROR_ACK (1 << 8)
368
# define HDMI_ERROR_MASK (1 << 9)
369
#define HDMI_STATUS 0x7404
370
# define HDMI_ACTIVE_AVMUTE (1 << 0)
371
# define HDMI_AUDIO_PACKET_ERROR (1 << 16)
372
# define HDMI_VBI_PACKET_ERROR (1 << 20)
373
#define HDMI_AUDIO_PACKET_CONTROL 0x7408
374
# define HDMI_AUDIO_DELAY_EN(x) (((x) & 3) << 4)
375
# define HDMI_AUDIO_PACKETS_PER_LINE(x) (((x) & 0x1f) << 16)
376
#define HDMI_ACR_PACKET_CONTROL 0x740c
377
# define HDMI_ACR_SEND (1 << 0)
378
# define HDMI_ACR_CONT (1 << 1)
379
# define HDMI_ACR_SELECT(x) (((x) & 3) << 4)
380
# define HDMI_ACR_HW 0
381
# define HDMI_ACR_32 1
382
# define HDMI_ACR_44 2
383
# define HDMI_ACR_48 3
384
# define HDMI_ACR_SOURCE (1 << 8) /* 0 - hw; 1 - cts value */
385
# define HDMI_ACR_AUTO_SEND (1 << 12)
386
#define HDMI_VBI_PACKET_CONTROL 0x7410
387
# define HDMI_NULL_SEND (1 << 0)
388
# define HDMI_GC_SEND (1 << 4)
389
# define HDMI_GC_CONT (1 << 5) /* 0 - once; 1 - every frame */
390
#define HDMI_INFOFRAME_CONTROL0 0x7414
391
# define HDMI_AVI_INFO_SEND (1 << 0)
392
# define HDMI_AVI_INFO_CONT (1 << 1)
393
# define HDMI_AUDIO_INFO_SEND (1 << 4)
394
# define HDMI_AUDIO_INFO_CONT (1 << 5)
395
# define HDMI_MPEG_INFO_SEND (1 << 8)
396
# define HDMI_MPEG_INFO_CONT (1 << 9)
397
#define HDMI_INFOFRAME_CONTROL1 0x7418
398
# define HDMI_AVI_INFO_LINE(x) (((x) & 0x3f) << 0)
399
# define HDMI_AUDIO_INFO_LINE(x) (((x) & 0x3f) << 8)
400
# define HDMI_MPEG_INFO_LINE(x) (((x) & 0x3f) << 16)
401
#define HDMI_GENERIC_PACKET_CONTROL 0x741c
402
# define HDMI_GENERIC0_SEND (1 << 0)
403
# define HDMI_GENERIC0_CONT (1 << 1)
404
# define HDMI_GENERIC1_SEND (1 << 4)
405
# define HDMI_GENERIC1_CONT (1 << 5)
406
# define HDMI_GENERIC0_LINE(x) (((x) & 0x3f) << 16)
407
# define HDMI_GENERIC1_LINE(x) (((x) & 0x3f) << 24)
408
#define HDMI_GC 0x7428
409
# define HDMI_GC_AVMUTE (1 << 0)
410
#define AFMT_AUDIO_PACKET_CONTROL2 0x742c
411
# define AFMT_AUDIO_LAYOUT_OVRD (1 << 0)
412
# define AFMT_AUDIO_LAYOUT_SELECT (1 << 1)
413
# define AFMT_60958_CS_SOURCE (1 << 4)
414
# define AFMT_AUDIO_CHANNEL_ENABLE(x) (((x) & 0xff) << 8)
415
# define AFMT_DP_AUDIO_STREAM_ID(x) (((x) & 0xff) << 16)
416
#define AFMT_AVI_INFO0 0x7454
417
# define AFMT_AVI_INFO_CHECKSUM(x) (((x) & 0xff) << 0)
418
# define AFMT_AVI_INFO_S(x) (((x) & 3) << 8)
419
# define AFMT_AVI_INFO_B(x) (((x) & 3) << 10)
420
# define AFMT_AVI_INFO_A(x) (((x) & 1) << 12)
421
# define AFMT_AVI_INFO_Y(x) (((x) & 3) << 13)
422
# define AFMT_AVI_INFO_Y_RGB 0
423
# define AFMT_AVI_INFO_Y_YCBCR422 1
424
# define AFMT_AVI_INFO_Y_YCBCR444 2
425
# define AFMT_AVI_INFO_Y_A_B_S(x) (((x) & 0xff) << 8)
426
# define AFMT_AVI_INFO_R(x) (((x) & 0xf) << 16)
427
# define AFMT_AVI_INFO_M(x) (((x) & 0x3) << 20)
428
# define AFMT_AVI_INFO_C(x) (((x) & 0x3) << 22)
429
# define AFMT_AVI_INFO_C_M_R(x) (((x) & 0xff) << 16)
430
# define AFMT_AVI_INFO_SC(x) (((x) & 0x3) << 24)
431
# define AFMT_AVI_INFO_Q(x) (((x) & 0x3) << 26)
432
# define AFMT_AVI_INFO_EC(x) (((x) & 0x3) << 28)
433
# define AFMT_AVI_INFO_ITC(x) (((x) & 0x1) << 31)
434
# define AFMT_AVI_INFO_ITC_EC_Q_SC(x) (((x) & 0xff) << 24)
435
#define AFMT_AVI_INFO1 0x7458
436
# define AFMT_AVI_INFO_VIC(x) (((x) & 0x7f) << 0) /* don't use avi infoframe v1 */
437
# define AFMT_AVI_INFO_PR(x) (((x) & 0xf) << 8) /* don't use avi infoframe v1 */
438
# define AFMT_AVI_INFO_TOP(x) (((x) & 0xffff) << 16)
439
#define AFMT_AVI_INFO2 0x745c
440
# define AFMT_AVI_INFO_BOTTOM(x) (((x) & 0xffff) << 0)
441
# define AFMT_AVI_INFO_LEFT(x) (((x) & 0xffff) << 16)
442
#define AFMT_AVI_INFO3 0x7460
443
# define AFMT_AVI_INFO_RIGHT(x) (((x) & 0xffff) << 0)
444
# define AFMT_AVI_INFO_VERSION(x) (((x) & 3) << 24)
445
#define AFMT_MPEG_INFO0 0x7464
446
# define AFMT_MPEG_INFO_CHECKSUM(x) (((x) & 0xff) << 0)
447
# define AFMT_MPEG_INFO_MB0(x) (((x) & 0xff) << 8)
448
# define AFMT_MPEG_INFO_MB1(x) (((x) & 0xff) << 16)
449
# define AFMT_MPEG_INFO_MB2(x) (((x) & 0xff) << 24)
450
#define AFMT_MPEG_INFO1 0x7468
451
# define AFMT_MPEG_INFO_MB3(x) (((x) & 0xff) << 0)
452
# define AFMT_MPEG_INFO_MF(x) (((x) & 3) << 8)
453
# define AFMT_MPEG_INFO_FR(x) (((x) & 1) << 12)
454
#define AFMT_GENERIC0_HDR 0x746c
455
#define AFMT_GENERIC0_0 0x7470
456
#define AFMT_GENERIC0_1 0x7474
457
#define AFMT_GENERIC0_2 0x7478
458
#define AFMT_GENERIC0_3 0x747c
459
#define AFMT_GENERIC0_4 0x7480
460
#define AFMT_GENERIC0_5 0x7484
461
#define AFMT_GENERIC0_6 0x7488
462
#define AFMT_GENERIC1_HDR 0x748c
463
#define AFMT_GENERIC1_0 0x7490
464
#define AFMT_GENERIC1_1 0x7494
465
#define AFMT_GENERIC1_2 0x7498
466
#define AFMT_GENERIC1_3 0x749c
467
#define AFMT_GENERIC1_4 0x74a0
468
#define AFMT_GENERIC1_5 0x74a4
469
#define AFMT_GENERIC1_6 0x74a8
470
#define HDMI_ACR_32_0 0x74ac
471
# define HDMI_ACR_CTS_32(x) (((x) & 0xfffff) << 12)
472
#define HDMI_ACR_32_1 0x74b0
473
# define HDMI_ACR_N_32(x) (((x) & 0xfffff) << 0)
474
#define HDMI_ACR_44_0 0x74b4
475
# define HDMI_ACR_CTS_44(x) (((x) & 0xfffff) << 12)
476
#define HDMI_ACR_44_1 0x74b8
477
# define HDMI_ACR_N_44(x) (((x) & 0xfffff) << 0)
478
#define HDMI_ACR_48_0 0x74bc
479
# define HDMI_ACR_CTS_48(x) (((x) & 0xfffff) << 12)
480
#define HDMI_ACR_48_1 0x74c0
481
# define HDMI_ACR_N_48(x) (((x) & 0xfffff) << 0)
482
#define HDMI_ACR_STATUS_0 0x74c4
483
#define HDMI_ACR_STATUS_1 0x74c8
484
#define AFMT_AUDIO_INFO0 0x74cc
485
# define AFMT_AUDIO_INFO_CHECKSUM(x) (((x) & 0xff) << 0)
486
# define AFMT_AUDIO_INFO_CC(x) (((x) & 7) << 8)
487
# define AFMT_AUDIO_INFO_CHECKSUM_OFFSET(x) (((x) & 0xff) << 16)
488
#define AFMT_AUDIO_INFO1 0x74d0
489
# define AFMT_AUDIO_INFO_CA(x) (((x) & 0xff) << 0)
490
# define AFMT_AUDIO_INFO_LSV(x) (((x) & 0xf) << 11)
491
# define AFMT_AUDIO_INFO_DM_INH(x) (((x) & 1) << 15)
492
# define AFMT_AUDIO_INFO_DM_INH_LSV(x) (((x) & 0xff) << 8)
493
#define AFMT_60958_0 0x74d4
494
# define AFMT_60958_CS_A(x) (((x) & 1) << 0)
495
# define AFMT_60958_CS_B(x) (((x) & 1) << 1)
496
# define AFMT_60958_CS_C(x) (((x) & 1) << 2)
497
# define AFMT_60958_CS_D(x) (((x) & 3) << 3)
498
# define AFMT_60958_CS_MODE(x) (((x) & 3) << 6)
499
# define AFMT_60958_CS_CATEGORY_CODE(x) (((x) & 0xff) << 8)
500
# define AFMT_60958_CS_SOURCE_NUMBER(x) (((x) & 0xf) << 16)
501
# define AFMT_60958_CS_CHANNEL_NUMBER_L(x) (((x) & 0xf) << 20)
502
# define AFMT_60958_CS_SAMPLING_FREQUENCY(x) (((x) & 0xf) << 24)
503
# define AFMT_60958_CS_CLOCK_ACCURACY(x) (((x) & 3) << 28)
504
#define AFMT_60958_1 0x74d8
505
# define AFMT_60958_CS_WORD_LENGTH(x) (((x) & 0xf) << 0)
506
# define AFMT_60958_CS_ORIGINAL_SAMPLING_FREQUENCY(x) (((x) & 0xf) << 4)
507
# define AFMT_60958_CS_VALID_L(x) (((x) & 1) << 16)
508
# define AFMT_60958_CS_VALID_R(x) (((x) & 1) << 18)
509
# define AFMT_60958_CS_CHANNEL_NUMBER_R(x) (((x) & 0xf) << 20)
510
#define AFMT_AUDIO_CRC_CONTROL 0x74dc
511
# define AFMT_AUDIO_CRC_EN (1 << 0)
512
#define AFMT_RAMP_CONTROL0 0x74e0
513
# define AFMT_RAMP_MAX_COUNT(x) (((x) & 0xffffff) << 0)
514
# define AFMT_RAMP_DATA_SIGN (1 << 31)
515
#define AFMT_RAMP_CONTROL1 0x74e4
516
# define AFMT_RAMP_MIN_COUNT(x) (((x) & 0xffffff) << 0)
517
# define AFMT_AUDIO_TEST_CH_DISABLE(x) (((x) & 0xff) << 24)
518
#define AFMT_RAMP_CONTROL2 0x74e8
519
# define AFMT_RAMP_INC_COUNT(x) (((x) & 0xffffff) << 0)
520
#define AFMT_RAMP_CONTROL3 0x74ec
521
# define AFMT_RAMP_DEC_COUNT(x) (((x) & 0xffffff) << 0)
522
#define AFMT_60958_2 0x74f0
523
# define AFMT_60958_CS_CHANNEL_NUMBER_2(x) (((x) & 0xf) << 0)
524
# define AFMT_60958_CS_CHANNEL_NUMBER_3(x) (((x) & 0xf) << 4)
525
# define AFMT_60958_CS_CHANNEL_NUMBER_4(x) (((x) & 0xf) << 8)
526
# define AFMT_60958_CS_CHANNEL_NUMBER_5(x) (((x) & 0xf) << 12)
527
# define AFMT_60958_CS_CHANNEL_NUMBER_6(x) (((x) & 0xf) << 16)
528
# define AFMT_60958_CS_CHANNEL_NUMBER_7(x) (((x) & 0xf) << 20)
529
#define AFMT_STATUS 0x7600
530
# define AFMT_AUDIO_ENABLE (1 << 4)
531
# define AFMT_AZ_FORMAT_WTRIG (1 << 28)
532
# define AFMT_AZ_FORMAT_WTRIG_INT (1 << 29)
533
# define AFMT_AZ_AUDIO_ENABLE_CHG (1 << 30)
534
#define AFMT_AUDIO_PACKET_CONTROL 0x7604
535
# define AFMT_AUDIO_SAMPLE_SEND (1 << 0)
536
# define AFMT_AUDIO_TEST_EN (1 << 12)
537
# define AFMT_AUDIO_CHANNEL_SWAP (1 << 24)
538
# define AFMT_60958_CS_UPDATE (1 << 26)
539
# define AFMT_AZ_AUDIO_ENABLE_CHG_MASK (1 << 27)
540
# define AFMT_AZ_FORMAT_WTRIG_MASK (1 << 28)
541
# define AFMT_AZ_FORMAT_WTRIG_ACK (1 << 29)
542
# define AFMT_AZ_AUDIO_ENABLE_CHG_ACK (1 << 30)
543
#define AFMT_VBI_PACKET_CONTROL 0x7608
544
# define AFMT_GENERIC0_UPDATE (1 << 2)
545
#define AFMT_INFOFRAME_CONTROL0 0x760c
546
# define AFMT_AUDIO_INFO_SOURCE (1 << 6) /* 0 - sound block; 1 - hmdi regs */
547
# define AFMT_AUDIO_INFO_UPDATE (1 << 7)
548
# define AFMT_MPEG_INFO_UPDATE (1 << 10)
549
#define AFMT_GENERIC0_7 0x7610
550
/* second instance starts at 0x7800 */
551
#define HDMI_OFFSET0 (0x7400 - 0x7400)
552
#define HDMI_OFFSET1 (0x7800 - 0x7400)
360
554
#define D1GRPH_PRIMARY_SURFACE_ADDRESS 0x6110
361
555
#define D1GRPH_PRIMARY_SURFACE_ADDRESS_HIGH 0x6914
362
556
#define D2GRPH_PRIMARY_SURFACE_ADDRESS_HIGH 0x6114