From ce40261012d39e1096442ef48c45b305c8d69dbd Mon Sep 17 00:00:00 2001 From: Alex Deucher Date: Sat, 4 Oct 2008 20:43:21 -0400 Subject: radeon: Add support for HD2100 IGP (RS740) --- shared-core/radeon_drv.h | 1 + 1 file changed, 1 insertion(+) (limited to 'shared-core/radeon_drv.h') diff --git a/shared-core/radeon_drv.h b/shared-core/radeon_drv.h index 65569db9..8471d103 100644 --- a/shared-core/radeon_drv.h +++ b/shared-core/radeon_drv.h @@ -127,6 +127,7 @@ enum radeon_family { CHIP_RS400, CHIP_RS480, CHIP_RS690, + CHIP_RS740, CHIP_RV515, CHIP_R520, CHIP_RV530, -- cgit v1.2.3 From 5a36cce3499c48fe1bf137b26b2a5e8a383d0332 Mon Sep 17 00:00:00 2001 From: Mihail Zenkov Date: Mon, 6 Oct 2008 00:49:15 -0400 Subject: radeon: fix missing bit from rs740 patch See bug 17908 --- shared-core/radeon_drv.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'shared-core/radeon_drv.h') diff --git a/shared-core/radeon_drv.h b/shared-core/radeon_drv.h index 8471d103..5e188bfc 100644 --- a/shared-core/radeon_drv.h +++ b/shared-core/radeon_drv.h @@ -1233,7 +1233,8 @@ do { \ #define IGP_WRITE_MCIND( addr, val ) \ do { \ - if ((dev_priv->flags & RADEON_FAMILY_MASK) == CHIP_RS690) \ + if (((dev_priv->flags & RADEON_FAMILY_MASK) == CHIP_RS690) || \ + ((dev_priv->flags & RADEON_FAMILY_MASK) == CHIP_RS740)) \ RS690_WRITE_MCIND( addr, val ); \ else \ RS480_WRITE_MCIND( addr, val ); \ -- cgit v1.2.3 From 4b98f6d74ffb119174237d30356ed3e2724b27da Mon Sep 17 00:00:00 2001 From: Alex Deucher Date: Mon, 6 Oct 2008 03:08:27 -0400 Subject: radeon: fix bus master enabled bits on newer asics --- shared-core/radeon_drv.h | 15 +++++++++++++++ 1 file changed, 15 insertions(+) (limited to 'shared-core/radeon_drv.h') diff --git a/shared-core/radeon_drv.h b/shared-core/radeon_drv.h index 5e188bfc..f3b65310 100644 --- a/shared-core/radeon_drv.h +++ b/shared-core/radeon_drv.h @@ -123,6 +123,7 @@ enum radeon_family { CHIP_RV350, CHIP_RV380, CHIP_R420, + CHIP_R423, CHIP_RV410, CHIP_RS400, CHIP_RS480, @@ -432,7 +433,20 @@ extern int r300_do_cp_cmdbuf(struct drm_device *dev, # define RADEON_SCISSOR_2_ENABLE (1 << 30) #define RADEON_BUS_CNTL 0x0030 +/* r1xx, r2xx, r300, r(v)350, r420, rs480 */ # define RADEON_BUS_MASTER_DIS (1 << 6) +/* rs400, rs690, rs740 */ +# define RS400_BUS_MASTER_DIS (1 << 14) +# define RS400_MSI_REARM (1 << 20) + +#define RV370_BUS_CNTL 0x004c +/* rv370, rv380, rv410, r423, r430, r480, r5xx */ +# define RV370_PMI_BM_DIS (1 << 5) +# define RV370_PMI_INT_DIS (1 << 6) + +#define RADEON_MSI_REARM_EN 0x0160 +/* rv370, rv380, rv410, r423, r430, r480, r5xx */ +# define RADEON_MSI_REARM_EN (1 << 0) #define RADEON_CLOCK_CNTL_DATA 0x000c # define RADEON_PLL_WR_EN (1 << 7) @@ -912,6 +926,7 @@ extern int r300_do_cp_cmdbuf(struct drm_device *dev, #define RADEON_AIC_CNTL 0x01d0 # define RADEON_PCIGART_TRANSLATE_EN (1 << 0) +# define RS480_MSI_REARM (1 << 3) #define RADEON_AIC_STAT 0x01d4 #define RADEON_AIC_PT_BASE 0x01d8 #define RADEON_AIC_LO_ADDR 0x01dc -- cgit v1.2.3 From 6f9dfa098fed73895f4ad32f9274ffaa163d3efb Mon Sep 17 00:00:00 2001 From: Alex Deucher Date: Mon, 6 Oct 2008 12:01:11 -0400 Subject: radeon: fix duplicate define in my last commit That's what I get for committing at 3 AM. --- shared-core/radeon_drv.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'shared-core/radeon_drv.h') diff --git a/shared-core/radeon_drv.h b/shared-core/radeon_drv.h index f3b65310..f897820c 100644 --- a/shared-core/radeon_drv.h +++ b/shared-core/radeon_drv.h @@ -446,7 +446,7 @@ extern int r300_do_cp_cmdbuf(struct drm_device *dev, #define RADEON_MSI_REARM_EN 0x0160 /* rv370, rv380, rv410, r423, r430, r480, r5xx */ -# define RADEON_MSI_REARM_EN (1 << 0) +# define RV370_MSI_REARM_EN (1 << 0) #define RADEON_CLOCK_CNTL_DATA 0x000c # define RADEON_PLL_WR_EN (1 << 7) -- cgit v1.2.3 From 728d8e226f1bc12f50f710cc96bbb2a25f72ada3 Mon Sep 17 00:00:00 2001 From: Alex Deucher Date: Mon, 6 Oct 2008 12:12:49 -0400 Subject: radeon: add comment to clarify bus mastering on PCIE chips --- shared-core/radeon_drv.h | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) (limited to 'shared-core/radeon_drv.h') diff --git a/shared-core/radeon_drv.h b/shared-core/radeon_drv.h index f897820c..86fb6db0 100644 --- a/shared-core/radeon_drv.h +++ b/shared-core/radeon_drv.h @@ -432,20 +432,30 @@ extern int r300_do_cp_cmdbuf(struct drm_device *dev, # define RADEON_SCISSOR_1_ENABLE (1 << 29) # define RADEON_SCISSOR_2_ENABLE (1 << 30) +/* + * PCIE radeons (rv370/rv380, rv410, r423/r430/r480, r5xx) + * don't have an explicit bus mastering disable bit. It's handled + * by the PCI D-states. PMI_BM_DIS disables D-state bus master + * handling, not bus mastering itself. + */ #define RADEON_BUS_CNTL 0x0030 -/* r1xx, r2xx, r300, r(v)350, r420, rs480 */ +/* r1xx, r2xx, r300, r(v)350, r420/r481, rs480 */ # define RADEON_BUS_MASTER_DIS (1 << 6) -/* rs400, rs690, rs740 */ +/* rs400, rs690/rs740 */ # define RS400_BUS_MASTER_DIS (1 << 14) # define RS400_MSI_REARM (1 << 20) +/* see RS480_MSI_REARM in AIC_CNTL for rs480 */ + +#define RADEON_BUS_CNTL1 0x0034 +# define RADEON_PMI_BM_DIS (1 << 2) +# define RADEON_PMI_INT_DIS (1 << 3) #define RV370_BUS_CNTL 0x004c -/* rv370, rv380, rv410, r423, r430, r480, r5xx */ # define RV370_PMI_BM_DIS (1 << 5) # define RV370_PMI_INT_DIS (1 << 6) #define RADEON_MSI_REARM_EN 0x0160 -/* rv370, rv380, rv410, r423, r430, r480, r5xx */ +/* rv370/rv380, rv410, r423/r430/r480, r5xx */ # define RV370_MSI_REARM_EN (1 << 0) #define RADEON_CLOCK_CNTL_DATA 0x000c -- cgit v1.2.3 From 848f00d77381d8b442c096476302796f8fe122fa Mon Sep 17 00:00:00 2001 From: Alex Deucher Date: Mon, 27 Oct 2008 12:59:39 -0400 Subject: radeon: fix some fallout from the busmaster disable cleanup rs400 is just like rs480. I mixed up the internal chipset names for rs600 and rs400. --- shared-core/radeon_drv.h | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) (limited to 'shared-core/radeon_drv.h') diff --git a/shared-core/radeon_drv.h b/shared-core/radeon_drv.h index 86fb6db0..dd2b71ae 100644 --- a/shared-core/radeon_drv.h +++ b/shared-core/radeon_drv.h @@ -439,11 +439,11 @@ extern int r300_do_cp_cmdbuf(struct drm_device *dev, * handling, not bus mastering itself. */ #define RADEON_BUS_CNTL 0x0030 -/* r1xx, r2xx, r300, r(v)350, r420/r481, rs480 */ +/* r1xx, r2xx, r300, r(v)350, r420/r481, rs400/rs480 */ # define RADEON_BUS_MASTER_DIS (1 << 6) -/* rs400, rs690/rs740 */ -# define RS400_BUS_MASTER_DIS (1 << 14) -# define RS400_MSI_REARM (1 << 20) +/* rs600/rs690/rs740 */ +# define RS600_BUS_MASTER_DIS (1 << 14) +# define RS600_MSI_REARM (1 << 20) /* see RS480_MSI_REARM in AIC_CNTL for rs480 */ #define RADEON_BUS_CNTL1 0x0034 @@ -936,7 +936,7 @@ extern int r300_do_cp_cmdbuf(struct drm_device *dev, #define RADEON_AIC_CNTL 0x01d0 # define RADEON_PCIGART_TRANSLATE_EN (1 << 0) -# define RS480_MSI_REARM (1 << 3) +# define RS400_MSI_REARM (1 << 3) #define RADEON_AIC_STAT 0x01d4 #define RADEON_AIC_PT_BASE 0x01d8 #define RADEON_AIC_LO_ADDR 0x01dc -- cgit v1.2.3