Skip to contentSkip to conversation

fbdev: Various mach64 changes

PATCH In review Antonino A. Daplas 2 participants 3 messages Oct 20, 2004 – Oct 22, 2004 Framebuffer layer

lore
Share & tools
lore
#0 lore raw

PATCH 3/5 fbdev: Various mach64 changes

Alexander Kern <[email protected]>
[PATCH] port Daniel Mantione 2.4 driver to 2.6 [PATCH] add more pci_id number
[PATCH] add accelerated imgblit
[PATCH] revert SDRAM_MAGIC_PLL to old behaviour [PATCH] do a "from BIOS" initialisation only by __i386__

Arnaud FONTAINE <[email protected]>
[PATCH atyfb] correction for 3D Rage Mobility L

Geert Uytterhoeven <[email protected]>
[PATCH atyfb] Atari Atyfb fixes
[PATCH atyfb] Atyfb on Mach64 GX or Atari
[PATCH 468] m68k sparse floating point

James Simmons <[email protected]>
[PATCH add] port to framebuffer_alloc api

Nicolas Souchu <[email protected]>
[PATCH] I do not found a copy, but it was incorporated too

Ville Syrjälä <[email protected]>
[PATCH] fix pan with doublescan
[PATCH] another double scan fix
[PATCH] disable linear aperture register access [PATCH] Memory type correction
[PATCH] atyfb (2.6): Fix mmio_start
[PATCH] atyfb (2.6): Fix mem_refresh_rate for Mobility [PATCH] atyfb (2.6): Add RGB565 support
[PATCH] atyfb: Blank LCD by turning off backlight voltage [PATCH] atyfb: Rage LT LCD register access [PATCH] atyfb: vblank irq support
[PATCH] atyfb: MTRR support

---

 drivers/video/Kconfig             |   19
 drivers/video/aty/ati_ids.h       |    1
 drivers/video/aty/atyfb.h         |  207 +-
 drivers/video/aty/atyfb_base.c    | 3576 ++++++++++++++++++++++++--------------
 drivers/video/aty/mach64_accel.c  |  212 ++
 drivers/video/aty/mach64_ct.c     |  731 +++++--
 drivers/video/aty/mach64_cursor.c |  309 +--
 drivers/video/aty/mach64_gx.c     |   20
 drivers/video/aty/xlinit.c        |   68
 include/video/mach64.h            |  351 +++
 10 files changed, 3680 insertions(+), 1814 deletions(-)
drivers/video/Kconfig +13 -6
diff -Nru a/drivers/video/Kconfig b/drivers/video/Kconfig
@@ -750,6 +750,19 @@
 	  framebuffer device.  The ATI product support page for these boards
 	  is at <http://support.ati.com/products/pc/mach64/>.
 
+config FB_ATY_GENERIC_LCD
+	bool "Mach64 generic LCD support (EXPERIMENTAL)"
+	depends on FB_ATY_CT
+	help
+	  Say Y if you have a laptop with an ATI Rage LT PRO, Rage Mobility,
+	  Rage XC, or Rage XL chipset.
+
+config FB_ATY_XL_INIT
+	bool "Rage XL No-BIOS Init support"
+	depends on FB_ATY_CT
+	help
+	  Say Y here to support booting a Rage XL without BIOS support.
+
 config FB_ATY_GX
 	bool "Mach64 GX support" if PCI
 	depends on FB_ATY
@@ -760,12 +773,6 @@
 	  framebuffer device.  The ATI product support page for these boards
 	  is at
 	  <http://support.ati.com/products/pc/mach64/graphics_xpression.html>.
-
-config FB_ATY_XL_INIT
-	bool "  Rage XL No-BIOS Init support" if FB_ATY_CT
-	depends on FB_ATY
-	help
-	  Say Y here to support booting a Rage XL without BIOS support.
 
 config FB_SIS
 	tristate "SiS acceleration"
drivers/video/aty/ati_ids.h +1 -0
diff -Nru a/drivers/video/aty/ati_ids.h b/drivers/video/aty/ati_ids.h
@@ -64,6 +64,7 @@
 #define PCI_CHIP_MACH64LQ		0x4C51
 #define PCI_CHIP_MACH64LR		0x4C52
 #define PCI_CHIP_MACH64LS		0x4C53
+#define PCI_CHIP_MACH64LT		0x4C54
 #define PCI_CHIP_RADEON_LW		0x4C57
 #define PCI_CHIP_RADEON_LX		0x4C58
 #define PCI_CHIP_RADEON_LY		0x4C59
drivers/video/aty/atyfb.h +144 -63

330 lines not on this page · raw message

drivers/video/aty/atyfb_base.c +2315 -1261

2,632 lines not on this page · raw message

drivers/video/aty/mach64_accel.c +192 -20

212 lines not on this page · raw message

drivers/video/aty/mach64_ct.c +533 -198

731 lines not on this page · raw message

drivers/video/aty/mach64_cursor.c +153 -156

309 lines not on this page · raw message

drivers/video/aty/mach64_gx.c +10 -10
diff -Nru a/drivers/video/aty/mach64_gx.c b/drivers/video/aty/mach64_gx.c

Lines of this file are not shown. View the raw message.

drivers/video/aty/xlinit.c +34 -34

68 lines not on this page · raw message

include/video/mach64.h +285 -66

351 lines not on this page · raw message

The rest of this diff is not shown. View the raw message.

-------------------------------------------------------
This SF.net email is sponsored by: IT Product Guide on ITManagersJournal Use IT products in your business? Tell us what you think of them. Give us Your Opinions, Get Free ThinkGeek Gift Certificates! Click to find out more
http://productguide.itmanagersjournal.com/guidepromo.tmpl

Part of the diff is not shown here. View the raw message.

#1 lore raw
Quoted 22 lines · Antonino A. Daplas

Alexander Kern <[email protected]>
[PATCH] port Daniel Mantione 2.4 driver to 2.6 [PATCH] add more pci_id number
[PATCH] add accelerated imgblit
[PATCH] revert SDRAM_MAGIC_PLL to old behaviour [PATCH] do a "from BIOS" initialisation only by __i386__

Arnaud FONTAINE <[email protected]> [PATCH atyfb] correction for 3D Rage Mobility L

Geert Uytterhoeven <[email protected]>
[PATCH atyfb] Atari Atyfb fixes
[PATCH atyfb] Atyfb on Mach64 GX or Atari
[PATCH 468] m68k sparse floating point

James Simmons <[email protected]>
[PATCH add] port to framebuffer_alloc api

Nicolas Souchu <[email protected]>
[PATCH] I do not found a copy, but it was incorporated too

Quoted 12 lines

Ville Syrjälä <[email protected]>
[PATCH] fix pan with doublescan
[PATCH] another double scan fix
[PATCH] disable linear aperture register access [PATCH] Memory type correction
[PATCH] atyfb (2.6): Fix mmio_start
[PATCH] atyfb (2.6): Fix mem_refresh_rate for Mobility [PATCH] atyfb (2.6): Add RGB565 support
[PATCH] atyfb: Blank LCD by turning off backlight voltage [PATCH] atyfb: Rage LT LCD register access [PATCH] atyfb: vblank irq support
[PATCH] atyfb: MTRR support

This patch is fairly screwed on sparc64. I fixed a few things, below, but it's still treating ->ati_regbase as a scalar and not a pointer, so I'll toss that one back to your guys.

An incremental patch against 2.6.9-mm1 would be appreciated. Hopefully I'll get that out the door tonight.

drivers/video/aty/atyfb_base.c: In function `atyfb_setup_sparc':
drivers/video/aty/atyfb_base.c:2769: warning: assignment makes pointer from integer without a cast drivers/video/aty/atyfb_base.c: In function `atyfb_pci_probe':
drivers/video/aty/atyfb_base.c:3399: error: invalid operands to binary &

---

 25-sparc64-akpm/drivers/video/aty/atyfb_base.c |    8 +++++---
 1 files changed, 5 insertions(+), 3 deletions(-)
drivers/video/aty/atyfb_base.c renamed from drivers/video/aty/atyfb_base.c~fbdev-various-mach64-changes-sparc64-fix +5 -3
diff -puN drivers/video/aty/atyfb_base.c~fbdev-various-mach64-changes-sparc64-fix drivers/video/aty/atyfb_base.c
@@ -2746,9 +2746,11 @@ static int atyfb_setcolreg(u_int regno, 
 
 #ifdef __sparc__
 
-static int __devinit atyfb_setup_sparc(struct pci_dev *pdev, struct fb_indo *info, unsigned long addr)
+extern void (*prom_palette) (int);
+
+static int __devinit atyfb_setup_sparc(struct pci_dev *pdev,
+			struct fb_info *info, unsigned long addr)
 {
-	extern void (*prom_palette) (int);
 	extern int con_is_present(void);
 
 	struct atyfb_par *par = info->par;
@@ -2782,7 +2784,7 @@ static int __devinit atyfb_setup_sparc(s
 	j = i + 4;
 
 	par->mmap_map = kmalloc(j * sizeof(*par->mmap_map), GFP_ATOMIC);
-	if (!_par->mmap_map) {
+	if (!par->mmap_map) {
 		PRINTKE("atyfb_setup_sparc() can't alloc mmap_map\n");
 		return -ENOMEM;
 	}

_

-------------------------------------------------------
This SF.net email is sponsored by: IT Product Guide on ITManagersJournal Use IT products in your business? Tell us what you think of them. Give us Your Opinions, Get Free ThinkGeek Gift Certificates! Click to find out more
http://productguide.itmanagersjournal.com/guidepromo.tmpl

#2 lore raw

Actually, I'll use the below patch just to make it compile.

---

 25-sparc64-akpm/drivers/video/aty/atyfb_base.c |   12 +++++++-----
 1 files changed, 7 insertions(+), 5 deletions(-)
drivers/video/aty/atyfb_base.c renamed from drivers/video/aty/atyfb_base.c~fbdev-various-mach64-changes-sparc64-fix +7 -5
diff -puN drivers/video/aty/atyfb_base.c~fbdev-various-mach64-changes-sparc64-fix drivers/video/aty/atyfb_base.c
@@ -2746,9 +2746,11 @@ static int atyfb_setcolreg(u_int regno, 
 
 #ifdef __sparc__
 
-static int __devinit atyfb_setup_sparc(struct pci_dev *pdev, struct fb_indo *info, unsigned long addr)
+extern void (*prom_palette) (int);
+
+static int __devinit atyfb_setup_sparc(struct pci_dev *pdev,
+			struct fb_info *info, unsigned long addr)
 {
-	extern void (*prom_palette) (int);
 	extern int con_is_present(void);
 
 	struct atyfb_par *par = info->par;
@@ -2764,7 +2766,7 @@ static int __devinit atyfb_setup_sparc(s
 	/*
 	 * Map memory-mapped registers.
 	 */
-	par->ati_regbase = addr + 0x7ffc00UL;
+	par->ati_regbase = (void *)addr + 0x7ffc00UL;
 	info->fix.mmio_start = addr + 0x7ffc00UL;
 
 	/*
@@ -2782,7 +2784,7 @@ static int __devinit atyfb_setup_sparc(s
 	j = i + 4;
 
 	par->mmap_map = kmalloc(j * sizeof(*par->mmap_map), GFP_ATOMIC);
-	if (!_par->mmap_map) {
+	if (!par->mmap_map) {
 		PRINTKE("atyfb_setup_sparc() can't alloc mmap_map\n");
 		return -ENOMEM;
 	}
@@ -3394,7 +3396,7 @@ static int __devinit atyfb_pci_probe(str
 	par->mmap_map[0].prot_mask = _PAGE_CACHE;
 	par->mmap_map[0].prot_flag = _PAGE_E;
 	par->mmap_map[1].voff = par->mmap_map[0].voff + info->fix.smem_len;
-	par->mmap_map[1].poff = par->ati_regbase & PAGE_MASK;
+	par->mmap_map[1].poff = (long)par->ati_regbase & PAGE_MASK;
 	par->mmap_map[1].size = PAGE_SIZE;
 	par->mmap_map[1].prot_mask = _PAGE_CACHE;
 	par->mmap_map[1].prot_flag = _PAGE_E;

_

-------------------------------------------------------
This SF.net email is sponsored by: IT Product Guide on ITManagersJournal Use IT products in your business? Tell us what you think of them. Give us Your Opinions, Get Free ThinkGeek Gift Certificates! Click to find out more
http://productguide.itmanagersjournal.com/guidepromo.tmpl