Subversion Repositories Kolibri OS

Rev

Rev 3192 | Rev 5078 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 3192 Rev 3764
Line 43... Line 43...
43
 
43
 
44
#define CAYMAN_GB_ADDR_CONFIG_GOLDEN       0x02011003
44
#define CAYMAN_GB_ADDR_CONFIG_GOLDEN       0x02011003
Line 45... Line 45...
45
#define ARUBA_GB_ADDR_CONFIG_GOLDEN        0x12010001
45
#define ARUBA_GB_ADDR_CONFIG_GOLDEN        0x12010001
-
 
46
 
-
 
47
#define DMIF_ADDR_CONFIG  				0xBD4
-
 
48
 
-
 
49
/* DCE6 only */
46
 
50
#define DMIF_ADDR_CALC  				0xC00
47
#define DMIF_ADDR_CONFIG  				0xBD4
51
 
48
#define	SRBM_GFX_CNTL				        0x0E44
52
#define	SRBM_GFX_CNTL				        0x0E44
49
#define		RINGID(x)					(((x) & 0x3) << 0)
53
#define		RINGID(x)					(((x) & 0x3) << 0)
-
 
54
#define		VMID(x)						(((x) & 0x7) << 0)
-
 
55
#define	SRBM_STATUS				        0x0E50
-
 
56
#define		RLC_RQ_PENDING 				(1 << 3)
-
 
57
#define		GRBM_RQ_PENDING 			(1 << 5)
-
 
58
#define		VMC_BUSY 				(1 << 8)
-
 
59
#define		MCB_BUSY 				(1 << 9)
-
 
60
#define		MCB_NON_DISPLAY_BUSY 			(1 << 10)
-
 
61
#define		MCC_BUSY 				(1 << 11)
-
 
62
#define		MCD_BUSY 				(1 << 12)
-
 
63
#define		SEM_BUSY 				(1 << 14)
Line 50... Line 64...
50
#define		VMID(x)						(((x) & 0x7) << 0)
64
#define		RLC_BUSY 				(1 << 15)
51
#define	SRBM_STATUS				        0x0E50
65
#define		IH_BUSY 				(1 << 17)
52
 
66
 
53
#define	SRBM_SOFT_RESET				        0x0E60
67
#define	SRBM_SOFT_RESET				        0x0E60
Line 66... Line 80...
66
#define		SOFT_RESET_DMA				(1 << 20)
80
#define		SOFT_RESET_DMA				(1 << 20)
67
#define		SOFT_RESET_TST				(1 << 21)
81
#define		SOFT_RESET_TST				(1 << 21)
68
#define		SOFT_RESET_REGBB		       	(1 << 22)
82
#define		SOFT_RESET_REGBB			(1 << 22)
69
#define		SOFT_RESET_ORB				(1 << 23)
83
#define		SOFT_RESET_ORB				(1 << 23)
Line -... Line 84...
-
 
84
 
-
 
85
#define	SRBM_STATUS2				        0x0EC4
-
 
86
#define		DMA_BUSY 				(1 << 5)
-
 
87
#define		DMA1_BUSY 				(1 << 6)
70
 
88
 
71
#define VM_CONTEXT0_REQUEST_RESPONSE			0x1470
89
#define VM_CONTEXT0_REQUEST_RESPONSE			0x1470
72
#define		REQUEST_TYPE(x)					(((x) & 0xf) << 0)
90
#define		REQUEST_TYPE(x)					(((x) & 0xf) << 0)
73
#define		RESPONSE_TYPE_MASK				0x000000F0
91
#define		RESPONSE_TYPE_MASK				0x000000F0
74
#define		RESPONSE_TYPE_SHIFT				4
92
#define		RESPONSE_TYPE_SHIFT				4
Line 470... Line 488...
470
#define VGT_EVENT_INITIATOR                             0x28a90
488
#define VGT_EVENT_INITIATOR                             0x28a90
471
#       define CACHE_FLUSH_AND_INV_EVENT_TS                     (0x14 << 0)
489
#       define CACHE_FLUSH_AND_INV_EVENT_TS                     (0x14 << 0)
472
#       define CACHE_FLUSH_AND_INV_EVENT                        (0x16 << 0)
490
#       define CACHE_FLUSH_AND_INV_EVENT                        (0x16 << 0)
Line 473... Line 491...
473
 
491
 
-
 
492
/*
-
 
493
 * UVD
-
 
494
 */
-
 
495
#define UVD_SEMA_ADDR_LOW				0xEF00
-
 
496
#define UVD_SEMA_ADDR_HIGH				0xEF04
-
 
497
#define UVD_SEMA_CMD					0xEF08
-
 
498
#define UVD_UDEC_ADDR_CONFIG				0xEF4C
-
 
499
#define UVD_UDEC_DB_ADDR_CONFIG				0xEF50
-
 
500
#define UVD_UDEC_DBW_ADDR_CONFIG			0xEF54
-
 
501
#define UVD_RBC_RB_RPTR					0xF690
-
 
502
#define UVD_RBC_RB_WPTR					0xF694
-
 
503
 
474
/*
504
/*
475
 * PM4
505
 * PM4
476
 */
-
 
477
#define	PACKET_TYPE0	0
-
 
478
#define	PACKET_TYPE1	1
-
 
479
#define	PACKET_TYPE2	2
-
 
480
#define	PACKET_TYPE3	3
-
 
481
 
-
 
482
#define CP_PACKET_GET_TYPE(h) (((h) >> 30) & 3)
-
 
483
#define CP_PACKET_GET_COUNT(h) (((h) >> 16) & 0x3FFF)
-
 
484
#define CP_PACKET0_GET_REG(h) (((h) & 0xFFFF) << 2)
-
 
485
#define CP_PACKET3_GET_OPCODE(h) (((h) >> 8) & 0xFF)
506
 */
486
#define PACKET0(reg, n)	((PACKET_TYPE0 << 30) |				\
507
#define PACKET0(reg, n)	((RADEON_PACKET_TYPE0 << 30) |			\
487
			 (((reg) >> 2) & 0xFFFF) |			\
508
			 (((reg) >> 2) & 0xFFFF) |			\
488
			 ((n) & 0x3FFF) << 16)
509
			 ((n) & 0x3FFF) << 16)
489
#define CP_PACKET2			0x80000000
510
#define CP_PACKET2			0x80000000
490
#define		PACKET2_PAD_SHIFT		0
511
#define		PACKET2_PAD_SHIFT		0
Line 491... Line 512...
491
#define		PACKET2_PAD_MASK		(0x3fffffff << 0)
512
#define		PACKET2_PAD_MASK		(0x3fffffff << 0)
Line 492... Line 513...
492
 
513
 
493
#define PACKET2(v)	(CP_PACKET2 | REG_SET(PACKET2_PAD, (v)))
514
#define PACKET2(v)	(CP_PACKET2 | REG_SET(PACKET2_PAD, (v)))
494
 
515
 
Line 495... Line 516...
495
#define PACKET3(op, n)	((PACKET_TYPE3 << 30) |				\
516
#define PACKET3(op, n)	((RADEON_PACKET_TYPE3 << 30) |			\
496
			 (((op) & 0xFF) << 8) |				\
517
			 (((op) & 0xFF) << 8) |				\
Line 661... Line 682...
661
 
682
 
662
#define DMA_IB_PACKET(cmd, vmid, n)	((((cmd) & 0xF) << 28) |	\
683
#define DMA_IB_PACKET(cmd, vmid, n)	((((cmd) & 0xF) << 28) |	\
663
					 (((vmid) & 0xF) << 20) |	\
684
					 (((vmid) & 0xF) << 20) |	\
Line -... Line 685...
-
 
685
					 (((n) & 0xFFFFF) << 0))
-
 
686
 
-
 
687
#define DMA_PTE_PDE_PACKET(n)		((2 << 28) |			\
-
 
688
					 (1 << 26) |			\
-
 
689
					 (1 << 21) |			\
664
					 (((n) & 0xFFFFF) << 0))
690
					 (((n) & 0xFFFFF) << 0))
665
 
691
 
666
/* async DMA Packet types */
692
/* async DMA Packet types */
667
#define	DMA_PACKET_WRITE				  0x2
693
#define	DMA_PACKET_WRITE				  0x2
668
#define	DMA_PACKET_COPY					  0x3
694
#define	DMA_PACKET_COPY					  0x3