linux-fbdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [patch 1/9] atyfb: Remove FIXME
@ 2006-09-03 22:06 syrjala
  2006-09-03 22:06 ` [patch 2/9] atyfb: Fix compiler warnings syrjala
                   ` (8 more replies)
  0 siblings, 9 replies; 15+ messages in thread
From: syrjala @ 2006-09-03 22:06 UTC (permalink / raw)
  To: linux-fbdev-devel; +Cc: alex.kern, Ville Syrjala

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: atyfb_remove_fixme.patch --]
[-- Type: text/plain, Size: 1030 bytes --]

atyfb has used the auxiliary register aperture for a long time.
Remove a related FIXME which was accidentally left in.

Signed-off-by: Ville Syrjala <syrjala@sci.fi>
---

 drivers/video/aty/atyfb_base.c |    5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

Index: linux-2.6.18-rc4/drivers/video/aty/atyfb_base.c
===================================================================
--- linux-2.6.18-rc4.orig/drivers/video/aty/atyfb_base.c
+++ linux-2.6.18-rc4/drivers/video/aty/atyfb_base.c
@@ -2600,9 +2600,8 @@ static int __devinit aty_init(struct fb_
 		par->pll_ops->init_pll(info, &par->pll);
 
 	/*
-	 *  Last page of 8 MB (4 MB on ISA) aperture is MMIO
-	 *  FIXME: we should use the auxiliary aperture instead so we can access
-	 *  the full 8 MB of video RAM on 8 MB boards
+	 *  Last page of 8 MB (4 MB on ISA) aperture is MMIO,
+	 *  unless the auxiliary register aperture is used.
 	 */
 
 	if (!par->aux_start &&

-- 
Ville Syrj������l������
syrjala@sci.fi
http://www.sci.fi/~syrjala/


[-- Attachment #2: Type: text/plain, Size: 373 bytes --]

-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642

[-- Attachment #3: Type: text/plain, Size: 182 bytes --]

_______________________________________________
Linux-fbdev-devel mailing list
Linux-fbdev-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linux-fbdev-devel

^ permalink raw reply	[flat|nested] 15+ messages in thread

* [patch 2/9] atyfb: Fix compiler warnings
  2006-09-03 22:06 [patch 1/9] atyfb: Remove FIXME syrjala
@ 2006-09-03 22:06 ` syrjala
  2006-09-03 22:06 ` [patch 3/9] atyfb: Fix sparse warnings syrjala
                   ` (7 subsequent siblings)
  8 siblings, 0 replies; 15+ messages in thread
From: syrjala @ 2006-09-03 22:06 UTC (permalink / raw)
  To: linux-fbdev-devel; +Cc: alex.kern, Ville Syrjala

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: atyfb_fix_compiler_warnings.patch --]
[-- Type: text/plain, Size: 2540 bytes --]

Fix some compiler warnings and remove an #ifdef.

Signed-off-by: Ville Syrjala <syrjala@sci.fi>
---

 drivers/video/aty/atyfb_base.c |   35 ++++++++++++++++++-----------------
 1 file changed, 18 insertions(+), 17 deletions(-)

Index: linux-2.6.18-rc4/drivers/video/aty/atyfb_base.c
===================================================================
--- linux-2.6.18-rc4.orig/drivers/video/aty/atyfb_base.c
+++ linux-2.6.18-rc4/drivers/video/aty/atyfb_base.c
@@ -2349,11 +2349,7 @@ static int __devinit aty_init(struct fb_
 	const char *ramname = NULL, *xtal;
 	int gtb_memsize, has_var = 0;
 	struct fb_var_screeninfo var;
-	u8 pll_ref_div;
 	u32 i;
-#if defined(CONFIG_PPC)
-	int sense;
-#endif
 
 	init_waitqueue_head(&par->vblank.wait);
 	spin_lock_init(&par->int_lock);
@@ -2463,18 +2459,21 @@ static int __devinit aty_init(struct fb_
 			par->pll_limits.mclk = 63;
 	}
 
-	if (M64_HAS(GTB_DSP)
-	    && (pll_ref_div = aty_ld_pll_ct(PLL_REF_DIV, par))) {
-		int diff1, diff2;
-		diff1 = 510 * 14 / pll_ref_div - par->pll_limits.pll_max;
-		diff2 = 510 * 29 / pll_ref_div - par->pll_limits.pll_max;
-		if (diff1 < 0)
-			diff1 = -diff1;
-		if (diff2 < 0)
-			diff2 = -diff2;
-		if (diff2 < diff1) {
-			par->ref_clk_per = 1000000000000ULL / 29498928;
-			xtal = "29.498928";
+	if (M64_HAS(GTB_DSP)) {
+		u8 pll_ref_div = aty_ld_pll_ct(PLL_REF_DIV, par);
+
+		if (pll_ref_div) {
+			int diff1, diff2;
+			diff1 = 510 * 14 / pll_ref_div - par->pll_limits.pll_max;
+			diff2 = 510 * 29 / pll_ref_div - par->pll_limits.pll_max;
+			if (diff1 < 0)
+				diff1 = -diff1;
+			if (diff2 < 0)
+				diff2 = -diff2;
+			if (diff2 < diff1) {
+				par->ref_clk_per = 1000000000000ULL / 29498928;
+				xtal = "29.498928";
+			}
 		}
 	}
 #endif /* CONFIG_FB_ATY_CT */
@@ -2667,6 +2666,7 @@ static int __devinit aty_init(struct fb_
 				has_var = 1;
 		} else {
 			if (default_vmode == VMODE_CHOOSE) {
+				int sense;
 				if (M64_HAS(G3_PB_1024x768))
 					/* G3 PowerBook with 1024x768 LCD */
 					default_vmode = VMODE_1024_768_60;
@@ -3702,6 +3702,8 @@ static int __devinit atyfb_atari_probe(v
 
 #endif /* CONFIG_ATARI */
 
+#ifdef CONFIG_PCI
+
 static void __devexit atyfb_remove(struct fb_info *info)
 {
 	struct atyfb_par *par = (struct atyfb_par *) info->par;
@@ -3749,7 +3751,6 @@ static void __devexit atyfb_remove(struc
 	framebuffer_release(info);
 }
 
-#ifdef CONFIG_PCI
 
 static void __devexit atyfb_pci_remove(struct pci_dev *pdev)
 {

-- 
Ville Syrj������l������
syrjala@sci.fi
http://www.sci.fi/~syrjala/


[-- Attachment #2: Type: text/plain, Size: 373 bytes --]

-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642

[-- Attachment #3: Type: text/plain, Size: 182 bytes --]

_______________________________________________
Linux-fbdev-devel mailing list
Linux-fbdev-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linux-fbdev-devel

^ permalink raw reply	[flat|nested] 15+ messages in thread

* [patch 3/9] atyfb: Fix sparse warnings
  2006-09-03 22:06 [patch 1/9] atyfb: Remove FIXME syrjala
  2006-09-03 22:06 ` [patch 2/9] atyfb: Fix compiler warnings syrjala
@ 2006-09-03 22:06 ` syrjala
  2006-09-03 22:06 ` [patch 4/9] atyfb: Fix blanking level transitions syrjala
                   ` (6 subsequent siblings)
  8 siblings, 0 replies; 15+ messages in thread
From: syrjala @ 2006-09-03 22:06 UTC (permalink / raw)
  To: linux-fbdev-devel; +Cc: alex.kern, Ville Syrjala

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: atyfb_fix_sparse_warnings.patch --]
[-- Type: text/plain, Size: 2902 bytes --]

Silence some sparse warnings:
* Remove casts from atari out_le32() and friends.
* Move accel functions' declarations to atyfb.h.

Signed-off-by: Ville Syrjala <syrjala@sci.fi>
---

 drivers/video/aty/atyfb.h      |   13 ++++++++++---
 drivers/video/aty/atyfb_base.c |    3 ---
 2 files changed, 10 insertions(+), 6 deletions(-)

Index: linux-2.6.18-rc4/drivers/video/aty/atyfb.h
===================================================================
--- linux-2.6.18-rc4.orig/drivers/video/aty/atyfb.h
+++ linux-2.6.18-rc4/drivers/video/aty/atyfb.h
@@ -227,7 +227,7 @@ static inline u32 aty_ld_le32(int regind
 		regindex -= 0x800;
 
 #ifdef CONFIG_ATARI
-	return in_le32((volatile u32 *)(par->ati_regbase + regindex));
+	return in_le32(par->ati_regbase + regindex);
 #else
 	return readl(par->ati_regbase + regindex);
 #endif
@@ -240,7 +240,7 @@ static inline void aty_st_le32(int regin
 		regindex -= 0x800;
 
 #ifdef CONFIG_ATARI
-	out_le32((volatile u32 *)(par->ati_regbase + regindex), val);
+	out_le32(par->ati_regbase + regindex, val);
 #else
 	writel(val, par->ati_regbase + regindex);
 #endif
@@ -253,7 +253,7 @@ static inline void aty_st_le16(int regin
 	if (regindex >= 0x400)
 		regindex -= 0x800;
 #ifdef CONFIG_ATARI
-	out_le16((volatile u16 *)(par->ati_regbase + regindex), val);
+	out_le16(par->ati_regbase + regindex, val);
 #else
 	writel(val, par->ati_regbase + regindex);
 #endif
@@ -357,3 +357,10 @@ extern void aty_reset_engine(const struc
 extern void aty_init_engine(struct atyfb_par *par, struct fb_info *info);
 extern void aty_st_pll_ct(int offset, u8 val, const struct atyfb_par *par);
 extern u8   aty_ld_pll_ct(int offset, const struct atyfb_par *par);
+
+extern void atyfb_fillrect(struct fb_info *info,
+			   const struct fb_fillrect *rect);
+extern void atyfb_copyarea(struct fb_info *info,
+			   const struct fb_copyarea *area);
+extern void atyfb_imageblit(struct fb_info *info,
+			    const struct fb_image *image);
Index: linux-2.6.18-rc4/drivers/video/aty/atyfb_base.c
===================================================================
--- linux-2.6.18-rc4.orig/drivers/video/aty/atyfb_base.c
+++ linux-2.6.18-rc4/drivers/video/aty/atyfb_base.c
@@ -240,9 +240,6 @@ static int atyfb_setcolreg(u_int regno, 
 static int atyfb_pan_display(struct fb_var_screeninfo *var, struct fb_info *info);
 static int atyfb_blank(int blank, struct fb_info *info);
 static int atyfb_ioctl(struct fb_info *info, u_int cmd, u_long arg);
-extern void atyfb_fillrect(struct fb_info *info, const struct fb_fillrect *rect);
-extern void atyfb_copyarea(struct fb_info *info, const struct fb_copyarea *area);
-extern void atyfb_imageblit(struct fb_info *info, const struct fb_image *image);
 #ifdef __sparc__
 static int atyfb_mmap(struct fb_info *info, struct vm_area_struct *vma);
 #endif

-- 
Ville Syrj������l������
syrjala@sci.fi
http://www.sci.fi/~syrjala/


[-- Attachment #2: Type: text/plain, Size: 373 bytes --]

-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642

[-- Attachment #3: Type: text/plain, Size: 182 bytes --]

_______________________________________________
Linux-fbdev-devel mailing list
Linux-fbdev-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linux-fbdev-devel

^ permalink raw reply	[flat|nested] 15+ messages in thread

* [patch 4/9] atyfb: Fix blanking level transitions
  2006-09-03 22:06 [patch 1/9] atyfb: Remove FIXME syrjala
  2006-09-03 22:06 ` [patch 2/9] atyfb: Fix compiler warnings syrjala
  2006-09-03 22:06 ` [patch 3/9] atyfb: Fix sparse warnings syrjala
@ 2006-09-03 22:06 ` syrjala
  2006-09-03 22:06 ` [patch 5/9] atyfb: Remove pointless aty_init() argument syrjala
                   ` (5 subsequent siblings)
  8 siblings, 0 replies; 15+ messages in thread
From: syrjala @ 2006-09-03 22:06 UTC (permalink / raw)
  To: linux-fbdev-devel; +Cc: alex.kern, Ville Syrjala

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: atyfb_fix_blanking_level_transitions.patch --]
[-- Type: text/plain, Size: 894 bytes --]

Fix a minor problem in blanking level transitions. Reducing the blanking level
gradually was impossible.

Signed-off-by: Ville Syrjala <syrjala@sci.fi>
---

 drivers/video/aty/atyfb_base.c |    4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

Index: linux-2.6.18-rc4/drivers/video/aty/atyfb_base.c
===================================================================
--- linux-2.6.18-rc4.orig/drivers/video/aty/atyfb_base.c
+++ linux-2.6.18-rc4/drivers/video/aty/atyfb_base.c
@@ -2821,9 +2821,9 @@ static int atyfb_blank(int blank, struct
 #endif
 
 	gen_cntl = aty_ld_le32(CRTC_GEN_CNTL, par);
+	gen_cntl &= ~0x400004c;
 	switch (blank) {
-        	case FB_BLANK_UNBLANK:
-			gen_cntl &= ~0x400004c;
+		case FB_BLANK_UNBLANK:
 			break;
 		case FB_BLANK_NORMAL:
 			gen_cntl |= 0x4000040;

-- 
Ville Syrj������l������
syrjala@sci.fi
http://www.sci.fi/~syrjala/


[-- Attachment #2: Type: text/plain, Size: 373 bytes --]

-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642

[-- Attachment #3: Type: text/plain, Size: 182 bytes --]

_______________________________________________
Linux-fbdev-devel mailing list
Linux-fbdev-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linux-fbdev-devel

^ permalink raw reply	[flat|nested] 15+ messages in thread

* [patch 5/9] atyfb: Remove pointless aty_init() argument
  2006-09-03 22:06 [patch 1/9] atyfb: Remove FIXME syrjala
                   ` (2 preceding siblings ...)
  2006-09-03 22:06 ` [patch 4/9] atyfb: Fix blanking level transitions syrjala
@ 2006-09-03 22:06 ` syrjala
  2006-09-03 22:06 ` [patch 6/9] atyfb: Fix __init and __devinit annotations syrjala
                   ` (4 subsequent siblings)
  8 siblings, 0 replies; 15+ messages in thread
From: syrjala @ 2006-09-03 22:06 UTC (permalink / raw)
  To: linux-fbdev-devel; +Cc: alex.kern, Ville Syrjala

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: atyfb_remove_pointless_aty_init_argument.patch --]
[-- Type: text/plain, Size: 2014 bytes --]

The 'name' argument of aty_init() is pointless because the bus type can
be queried from the hardware.

Signed-off-by: Ville Syrjala <syrjala@sci.fi>
---

 drivers/video/aty/atyfb_base.c |   10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

Index: linux-2.6.18-rc4/drivers/video/aty/atyfb_base.c
===================================================================
--- linux-2.6.18-rc4.orig/drivers/video/aty/atyfb_base.c
+++ linux-2.6.18-rc4/drivers/video/aty/atyfb_base.c
@@ -249,7 +249,7 @@ static int atyfb_sync(struct fb_info *in
      *  Internal routines
      */
 
-static int aty_init(struct fb_info *info, const char *name);
+static int aty_init(struct fb_info *info);
 #ifdef CONFIG_ATARI
 static int store_video_par(char *videopar, unsigned char m64_num);
 #endif
@@ -2340,7 +2340,7 @@ static int __devinit atyfb_get_timings_f
 }
 #endif /* defined(__i386__) && defined(CONFIG_FB_ATY_GENERIC_LCD) */
 
-static int __devinit aty_init(struct fb_info *info, const char *name)
+static int __devinit aty_init(struct fb_info *info)
 {
 	struct atyfb_par *par = (struct atyfb_par *) info->par;
 	const char *ramname = NULL, *xtal;
@@ -2744,7 +2744,7 @@ static int __devinit aty_init(struct fb_
 	fb_list = info;
 
 	PRINTKI("fb%d: %s frame buffer device on %s\n",
-	       info->node, info->fix.id, name);
+		info->node, info->fix.id, par->bus_type == ISA ? "ISA" : "PCI");
 	return 0;
 
 aty_init_exit:
@@ -3589,7 +3589,7 @@ static int __devinit atyfb_pci_probe(str
 	pci_set_drvdata(pdev, info);
 
 	/* Init chip & register framebuffer */
-	if (aty_init(info, "PCI"))
+	if (aty_init(info))
 		goto err_release_io;
 
 #ifdef __sparc__
@@ -3689,7 +3689,7 @@ static int __devinit atyfb_atari_probe(v
 			break;
 		}
 
-		if (aty_init(info, "ISA bus")) {
+		if (aty_init(info)) {
 			framebuffer_release(info);
 			/* This is insufficient! kernel_map has added two large chunks!! */
 			return -ENXIO;

-- 
Ville Syrj������l������
syrjala@sci.fi
http://www.sci.fi/~syrjala/


[-- Attachment #2: Type: text/plain, Size: 373 bytes --]

-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642

[-- Attachment #3: Type: text/plain, Size: 182 bytes --]

_______________________________________________
Linux-fbdev-devel mailing list
Linux-fbdev-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linux-fbdev-devel

^ permalink raw reply	[flat|nested] 15+ messages in thread

* [patch 6/9] atyfb: Fix __init and __devinit annotations
  2006-09-03 22:06 [patch 1/9] atyfb: Remove FIXME syrjala
                   ` (3 preceding siblings ...)
  2006-09-03 22:06 ` [patch 5/9] atyfb: Remove pointless aty_init() argument syrjala
@ 2006-09-03 22:06 ` syrjala
  2006-09-03 22:06 ` [patch 7/9] atyfb: Remove aty_cmap_regs syrjala
                   ` (3 subsequent siblings)
  8 siblings, 0 replies; 15+ messages in thread
From: syrjala @ 2006-09-03 22:06 UTC (permalink / raw)
  To: linux-fbdev-devel; +Cc: alex.kern, Ville Syrjala

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: atyfb_fix_init_and_devinit_annotations.patch --]
[-- Type: text/plain, Size: 2464 bytes --]

Fix some __init and __devinit annotations.

Signed-off-by: Ville Syrjala <syrjala@sci.fi>
---

 drivers/video/aty/atyfb_base.c |    8 ++++----
 drivers/video/aty/mach64_ct.c  |    8 ++++----
 2 files changed, 8 insertions(+), 8 deletions(-)

Index: linux-2.6.18-rc4/drivers/video/aty/atyfb_base.c
===================================================================
--- linux-2.6.18-rc4.orig/drivers/video/aty/atyfb_base.c
+++ linux-2.6.18-rc4/drivers/video/aty/atyfb_base.c
@@ -3177,7 +3177,7 @@ static int __devinit atyfb_setup_sparc(s
 
 #ifdef __i386__
 #ifdef CONFIG_FB_ATY_GENERIC_LCD
-static void aty_init_lcd(struct atyfb_par *par, u32 bios_base)
+static void __devinit aty_init_lcd(struct atyfb_par *par, u32 bios_base)
 {
 	u32 driv_inf_tab, sig;
 	u16 lcd_ofs;
@@ -3636,7 +3636,7 @@ err_release_mem:
 
 #ifdef CONFIG_ATARI
 
-static int __devinit atyfb_atari_probe(void)
+static int __init atyfb_atari_probe(void)
 {
 	struct atyfb_par *par;
 	struct fb_info *info;
@@ -3782,7 +3782,7 @@ static struct pci_driver atyfb_driver = 
 #endif /* CONFIG_PCI */
 
 #ifndef MODULE
-static int __devinit atyfb_setup(char *options)
+static int __init atyfb_setup(char *options)
 {
 	char *this_opt;
 
@@ -3854,7 +3854,7 @@ static int __devinit atyfb_setup(char *o
 }
 #endif  /*  MODULE  */
 
-static int __devinit atyfb_init(void)
+static int __init atyfb_init(void)
 {
 #ifndef MODULE
     char *option = NULL;
Index: linux-2.6.18-rc4/drivers/video/aty/mach64_ct.c
===================================================================
--- linux-2.6.18-rc4.orig/drivers/video/aty/mach64_ct.c
+++ linux-2.6.18-rc4/drivers/video/aty/mach64_ct.c
@@ -370,8 +370,8 @@ void aty_set_pll_ct(const struct fb_info
 #endif
 }
 
-static void __init aty_get_pll_ct(const struct fb_info *info,
-				  union aty_pll *pll)
+static void __devinit aty_get_pll_ct(const struct fb_info *info,
+				     union aty_pll *pll)
 {
 	struct atyfb_par *par = (struct atyfb_par *) info->par;
 	u8 tmp, clock;
@@ -394,8 +394,8 @@ static void __init aty_get_pll_ct(const 
 	}
 }
 
-static int __init aty_init_pll_ct(const struct fb_info *info,
-				 union aty_pll *pll)
+static int __devinit aty_init_pll_ct(const struct fb_info *info,
+				     union aty_pll *pll)
 {
 	struct atyfb_par *par = (struct atyfb_par *) info->par;
 	u8 mpost_div, xpost_div, sclk_post_div_real, sclk_fb_div, spll_cntl2;

-- 
Ville Syrj������l������
syrjala@sci.fi
http://www.sci.fi/~syrjala/


[-- Attachment #2: Type: text/plain, Size: 373 bytes --]

-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642

[-- Attachment #3: Type: text/plain, Size: 182 bytes --]

_______________________________________________
Linux-fbdev-devel mailing list
Linux-fbdev-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linux-fbdev-devel

^ permalink raw reply	[flat|nested] 15+ messages in thread

* [patch 7/9] atyfb: Remove aty_cmap_regs
  2006-09-03 22:06 [patch 1/9] atyfb: Remove FIXME syrjala
                   ` (4 preceding siblings ...)
  2006-09-03 22:06 ` [patch 6/9] atyfb: Fix __init and __devinit annotations syrjala
@ 2006-09-03 22:06 ` syrjala
  2006-09-03 22:06 ` [patch 8/9] atyfb: Improve atyfb_atari_probe() syrjala
                   ` (2 subsequent siblings)
  8 siblings, 0 replies; 15+ messages in thread
From: syrjala @ 2006-09-03 22:06 UTC (permalink / raw)
  To: linux-fbdev-devel; +Cc: alex.kern, Ville Syrjala

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: atyfb_remove_aty_cmap_regs.patch --]
[-- Type: text/plain, Size: 3462 bytes --]

Remove aty_cmap_regs. Access the LUT in the same way as other registers.

Signed-off-by: Ville Syrjala <syrjala@sci.fi>
---

 drivers/video/aty/atyfb.h      |    1 
 drivers/video/aty/atyfb_base.c |   45 ++++++++++-------------------------------
 2 files changed, 12 insertions(+), 34 deletions(-)

Index: linux-2.6.18-rc4/drivers/video/aty/atyfb_base.c
===================================================================
--- linux-2.6.18-rc4.orig/drivers/video/aty/atyfb_base.c
+++ linux-2.6.18-rc4/drivers/video/aty/atyfb_base.c
@@ -203,14 +203,6 @@ static void ATIReduceRatio(int *Numerato
      *  The Hardware parameters for each card
      */
 
-struct aty_cmap_regs {
-	u8 windex;
-	u8 lut;
-	u8 mask;
-	u8 rindex;
-	u8 cntl;
-};
-
 struct pci_mmap_map {
 	unsigned long voff;
 	unsigned long poff;
@@ -1937,17 +1929,14 @@ static void atyfb_save_palette(struct at
 		aty_st_8(DAC_CNTL, tmp, par);
 		aty_st_8(DAC_MASK, 0xff, par);
 
-		writeb(i, &par->aty_cmap_regs->rindex);
-		atyfb_save.r[enter][i] = readb(&par->aty_cmap_regs->lut);
-		atyfb_save.g[enter][i] = readb(&par->aty_cmap_regs->lut);
-		atyfb_save.b[enter][i] = readb(&par->aty_cmap_regs->lut);
-		writeb(i, &par->aty_cmap_regs->windex);
-		writeb(atyfb_save.r[1 - enter][i],
-		       &par->aty_cmap_regs->lut);
-		writeb(atyfb_save.g[1 - enter][i],
-		       &par->aty_cmap_regs->lut);
-		writeb(atyfb_save.b[1 - enter][i],
-		       &par->aty_cmap_regs->lut);
+		aty_st_8(DAC_R_INDEX, i, par);
+		atyfb_save.r[enter][i] = aty_ld_8(DAC_DATA, par);
+		atyfb_save.g[enter][i] = aty_ld_8(DAC_DATA, par);
+		atyfb_save.b[enter][i] = aty_ld_8(DAC_DATA, par);
+		aty_st_8(DAC_W_INDEX, i, par);
+		aty_st_8(DAC_DATA, atyfb_save.r[1 - enter][i], par);
+		aty_st_8(DAC_DATA, atyfb_save.g[1 - enter][i], par);
+		aty_st_8(DAC_DATA, atyfb_save.b[1 - enter][i], par);
 	}
 }
 
@@ -2351,9 +2340,6 @@ static int __devinit aty_init(struct fb_
 	init_waitqueue_head(&par->vblank.wait);
 	spin_lock_init(&par->int_lock);
 
-	par->aty_cmap_regs =
-	    (struct aty_cmap_regs __iomem *) (par->ati_regbase + 0xc0);
-
 #ifdef CONFIG_PPC_PMAC
 	/* The Apple iBook1 uses non-standard memory frequencies. We detect it
 	 * and set the frequency manually. */
@@ -2858,17 +2844,10 @@ static int atyfb_blank(int blank, struct
 static void aty_st_pal(u_int regno, u_int red, u_int green, u_int blue,
 		       const struct atyfb_par *par)
 {
-#ifdef CONFIG_ATARI
-	out_8(&par->aty_cmap_regs->windex, regno);
-	out_8(&par->aty_cmap_regs->lut, red);
-	out_8(&par->aty_cmap_regs->lut, green);
-	out_8(&par->aty_cmap_regs->lut, blue);
-#else
-	writeb(regno, &par->aty_cmap_regs->windex);
-	writeb(red, &par->aty_cmap_regs->lut);
-	writeb(green, &par->aty_cmap_regs->lut);
-	writeb(blue, &par->aty_cmap_regs->lut);
-#endif
+	aty_st_8(DAC_W_INDEX, regno, par);
+	aty_st_8(DAC_DATA, red, par);
+	aty_st_8(DAC_DATA, green, par);
+	aty_st_8(DAC_DATA, blue, par);
 }
 
     /*
Index: linux-2.6.18-rc4/drivers/video/aty/atyfb.h
===================================================================
--- linux-2.6.18-rc4.orig/drivers/video/aty/atyfb.h
+++ linux-2.6.18-rc4/drivers/video/aty/atyfb.h
@@ -126,7 +126,6 @@ union aty_pll {
      */
 
 struct atyfb_par {
-	struct aty_cmap_regs __iomem *aty_cmap_regs;
 	struct { u8 red, green, blue; } palette[256];
 	const struct aty_dac_ops *dac_ops;
 	const struct aty_pll_ops *pll_ops;

-- 
Ville Syrj������l������
syrjala@sci.fi
http://www.sci.fi/~syrjala/


[-- Attachment #2: Type: text/plain, Size: 373 bytes --]

-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642

[-- Attachment #3: Type: text/plain, Size: 182 bytes --]

_______________________________________________
Linux-fbdev-devel mailing list
Linux-fbdev-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linux-fbdev-devel

^ permalink raw reply	[flat|nested] 15+ messages in thread

* [patch 8/9] atyfb: Improve atyfb_atari_probe()
  2006-09-03 22:06 [patch 1/9] atyfb: Remove FIXME syrjala
                   ` (5 preceding siblings ...)
  2006-09-03 22:06 ` [patch 7/9] atyfb: Remove aty_cmap_regs syrjala
@ 2006-09-03 22:06 ` syrjala
  2006-09-04  9:20   ` Geert Uytterhoeven
  2006-09-03 22:06 ` [patch 9/9] atyfb: Improve power management syrjala
  2006-09-08 22:02 ` [patch 1/9] atyfb: Remove FIXME Alexander Kern
  8 siblings, 1 reply; 15+ messages in thread
From: syrjala @ 2006-09-03 22:06 UTC (permalink / raw)
  To: linux-fbdev-devel; +Cc: alex.kern, Ville Syrjala

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: atyfb_improve_atyfb_atari_probe.patch --]
[-- Type: text/plain, Size: 1733 bytes --]

Improve atyfb_atari_probe():
* Call correct_chipset() so that more par members, par->features in
  particular, get initialized.
* If probe fails iounmap() the mapped regions and continue probing for more
  adapters.

Only verified to cross-compile due to lack of hardware.

Signed-off-by: Ville Syrjala <syrjala@sci.fi>
---

 drivers/video/aty/atyfb_base.c |   23 ++++++++++++++++++++---
 1 file changed, 20 insertions(+), 3 deletions(-)

Index: linux-2.6.18-rc4/drivers/video/aty/atyfb_base.c
===================================================================
--- linux-2.6.18-rc4.orig/drivers/video/aty/atyfb_base.c
+++ linux-2.6.18-rc4/drivers/video/aty/atyfb_base.c
@@ -3621,6 +3621,7 @@ static int __init atyfb_atari_probe(void
 	struct fb_info *info;
 	int m64_num;
 	u32 clock_r;
+	int num_found = 0;
 
 	for (m64_num = 0; m64_num < mach64_count; m64_num++) {
 		if (!phys_vmembase[m64_num] || !phys_size[m64_num] ||
@@ -3668,12 +3669,28 @@ static int __init atyfb_atari_probe(void
 			break;
 		}
 
-		if (aty_init(info)) {
+		/* Fake pci_id for correct_chipset() */
+		switch (aty_ld_le32(CONFIG_CHIP_ID, par) & CFG_CHIP_TYPE) {
+		case 0x00d7:
+			par->pci_id = PCI_CHIP_MACH64GX;
+			break;
+		case 0x0057:
+			par->pci_id = PCI_CHIP_MACH64CX;
+			break;
+		default:
+			break;
+		}
+
+		if (correct_chipset(par) || aty_init(info)) {
+			iounmap(info->screen_base);
+			iounmap(par->ati_regbase);
 			framebuffer_release(info);
-			/* This is insufficient! kernel_map has added two large chunks!! */
-			return -ENXIO;
+		} else {
+			num_found++;
 		}
 	}
+
+	return num_found ? 0 : -ENXIO;
 }
 
 #endif /* CONFIG_ATARI */

-- 
Ville Syrj������l������
syrjala@sci.fi
http://www.sci.fi/~syrjala/


[-- Attachment #2: Type: text/plain, Size: 373 bytes --]

-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642

[-- Attachment #3: Type: text/plain, Size: 182 bytes --]

_______________________________________________
Linux-fbdev-devel mailing list
Linux-fbdev-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linux-fbdev-devel

^ permalink raw reply	[flat|nested] 15+ messages in thread

* [patch 9/9] atyfb: Improve power management
  2006-09-03 22:06 [patch 1/9] atyfb: Remove FIXME syrjala
                   ` (6 preceding siblings ...)
  2006-09-03 22:06 ` [patch 8/9] atyfb: Improve atyfb_atari_probe() syrjala
@ 2006-09-03 22:06 ` syrjala
  2006-09-08 22:02 ` [patch 1/9] atyfb: Remove FIXME Alexander Kern
  8 siblings, 0 replies; 15+ messages in thread
From: syrjala @ 2006-09-03 22:06 UTC (permalink / raw)
  To: linux-fbdev-devel; +Cc: alex.kern, Ville Syrjala

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: atyfb_improve_power_management.patch --]
[-- Type: text/plain, Size: 9611 bytes --]

Some register were only set in aty_init() which is not called on resume.
I added the aty_resume_chip() function to reset those registers on resume.

Susped-to-ram now works on a HP Omnibook 6000 with acpi_sleep=s3_bios.

Signed-off-by: Ville Syrjala <syrjala@sci.fi>
---

 drivers/video/aty/atyfb.h      |    2 +
 drivers/video/aty/atyfb_base.c |   61 ++++++++++++++++++++++++++---------------
 drivers/video/aty/mach64_ct.c  |   39 +++++++++++++++++---------
 3 files changed, 68 insertions(+), 34 deletions(-)

Index: linux-2.6.18-rc5-vs/drivers/video/aty/atyfb_base.c
===================================================================
--- linux-2.6.18-rc5-vs.orig/drivers/video/aty/atyfb_base.c
+++ linux-2.6.18-rc5-vs/drivers/video/aty/atyfb_base.c
@@ -242,6 +242,7 @@ static int atyfb_sync(struct fb_info *in
      */
 
 static int aty_init(struct fb_info *info);
+static void aty_resume_chip(struct fb_info *info);
 #ifdef CONFIG_ATARI
 static int store_video_par(char *videopar, unsigned char m64_num);
 #endif
@@ -1971,6 +1972,7 @@ static void atyfb_palette(int enter)
 
 #if defined(CONFIG_PM) && defined(CONFIG_PCI)
 
+#ifdef CONFIG_PPC_PMAC
 /* Power management routines. Those are used for PowerBook sleep.
  */
 static int aty_power_mgmt(int sleep, struct atyfb_par *par)
@@ -2027,21 +2029,13 @@ static int aty_power_mgmt(int sleep, str
 
 	return timeout ? 0 : -EIO;
 }
+#endif
 
 static int atyfb_pci_suspend(struct pci_dev *pdev, pm_message_t state)
 {
 	struct fb_info *info = pci_get_drvdata(pdev);
 	struct atyfb_par *par = (struct atyfb_par *) info->par;
 
-#ifndef CONFIG_PPC_PMAC
-	/* HACK ALERT ! Once I find a proper way to say to each driver
-	 * individually what will happen with it's PCI slot, I'll change
-	 * that. On laptops, the AGP slot is just unclocked, so D2 is
-	 * expected, while on desktops, the card is powered off
-	 */
-	return 0;
-#endif /* CONFIG_PPC_PMAC */
-
 	if (state.event == pdev->dev.power.power_state.event)
 		return 0;
 
@@ -2059,6 +2053,7 @@ static int atyfb_pci_suspend(struct pci_
 	par->asleep = 1;
 	par->lock_blank = 1;
 
+#ifdef CONFIG_PPC_PMAC
 	/* Set chip to "suspend" mode */
 	if (aty_power_mgmt(1, par)) {
 		par->asleep = 0;
@@ -2068,6 +2063,9 @@ static int atyfb_pci_suspend(struct pci_
 		release_console_sem();
 		return -EIO;
 	}
+#else
+	pci_set_power_state(pdev, pci_choose_state(pdev, state));
+#endif
 
 	release_console_sem();
 
@@ -2086,8 +2084,15 @@ static int atyfb_pci_resume(struct pci_d
 
 	acquire_console_sem();
 
+#ifdef CONFIG_PPC_PMAC
 	if (pdev->dev.power.power_state.event == 2)
 		aty_power_mgmt(0, par);
+#else
+	pci_set_power_state(pdev, PCI_D0);
+#endif
+
+	aty_resume_chip(info);
+
 	par->asleep = 0;
 
 	/* Restore display */
@@ -2335,7 +2340,6 @@ static int __devinit aty_init(struct fb_
 	const char *ramname = NULL, *xtal;
 	int gtb_memsize, has_var = 0;
 	struct fb_var_screeninfo var;
-	u32 i;
 
 	init_waitqueue_head(&par->vblank.wait);
 	spin_lock_init(&par->int_lock);
@@ -2466,10 +2470,10 @@ static int __devinit aty_init(struct fb_
 	if(par->pll_ops->get_pll)
 		par->pll_ops->get_pll(info, &saved_pll);
 
-	i = aty_ld_le32(MEM_CNTL, par);
+	par->mem_cntl = aty_ld_le32(MEM_CNTL, par);
 	gtb_memsize = M64_HAS(GTB_DSP);
 	if (gtb_memsize)
-		switch (i & 0xF) {	/* 0xF used instead of MEM_SIZE_ALIAS */
+		switch (par->mem_cntl & 0xF) {	/* 0xF used instead of MEM_SIZE_ALIAS */
 		case MEM_SIZE_512K:
 			info->fix.smem_len = 0x80000;
 			break;
@@ -2491,7 +2495,7 @@ static int __devinit aty_init(struct fb_
 		default:
 			info->fix.smem_len = 0x80000;
 	} else
-		switch (i & MEM_SIZE_ALIAS) {
+		switch (par->mem_cntl & MEM_SIZE_ALIAS) {
 		case MEM_SIZE_512K:
 			info->fix.smem_len = 0x80000;
 			break;
@@ -2521,20 +2525,20 @@ static int __devinit aty_init(struct fb_
 
 	if (vram) {
 		info->fix.smem_len = vram * 1024;
-		i = i & ~(gtb_memsize ? 0xF : MEM_SIZE_ALIAS);
+		par->mem_cntl &= ~(gtb_memsize ? 0xF : MEM_SIZE_ALIAS);
 		if (info->fix.smem_len <= 0x80000)
-			i |= MEM_SIZE_512K;
+			par->mem_cntl |= MEM_SIZE_512K;
 		else if (info->fix.smem_len <= 0x100000)
-			i |= MEM_SIZE_1M;
+			par->mem_cntl |= MEM_SIZE_1M;
 		else if (info->fix.smem_len <= 0x200000)
-			i |= gtb_memsize ? MEM_SIZE_2M_GTB : MEM_SIZE_2M;
+			par->mem_cntl |= gtb_memsize ? MEM_SIZE_2M_GTB : MEM_SIZE_2M;
 		else if (info->fix.smem_len <= 0x400000)
-			i |= gtb_memsize ? MEM_SIZE_4M_GTB : MEM_SIZE_4M;
+			par->mem_cntl |= gtb_memsize ? MEM_SIZE_4M_GTB : MEM_SIZE_4M;
 		else if (info->fix.smem_len <= 0x600000)
-			i |= gtb_memsize ? MEM_SIZE_6M_GTB : MEM_SIZE_6M;
+			par->mem_cntl |= gtb_memsize ? MEM_SIZE_6M_GTB : MEM_SIZE_6M;
 		else
-			i |= gtb_memsize ? MEM_SIZE_8M_GTB : MEM_SIZE_8M;
-		aty_st_le32(MEM_CNTL, i, par);
+			par->mem_cntl |= gtb_memsize ? MEM_SIZE_8M_GTB : MEM_SIZE_8M;
+		aty_st_le32(MEM_CNTL, par->mem_cntl, par);
 	}
 
 	/*
@@ -2580,6 +2584,8 @@ static int __devinit aty_init(struct fb_
 #endif
 	if(par->pll_ops->init_pll)
 		par->pll_ops->init_pll(info, &par->pll);
+	if (par->pll_ops->resume_pll)
+		par->pll_ops->resume_pll(info, &par->pll);
 
 	/*
 	 *  Last page of 8 MB (4 MB on ISA) aperture is MMIO,
@@ -2751,6 +2757,19 @@ aty_init_exit:
 	return -1;
 }
 
+static void aty_resume_chip(struct fb_info *info)
+{
+	struct atyfb_par *par = info->par;
+
+	aty_st_le32(MEM_CNTL, par->mem_cntl, par);
+
+	if (par->pll_ops->resume_pll)
+		par->pll_ops->resume_pll(info, &par->pll);
+
+	if (par->aux_start)
+		aty_st_le32(BUS_CNTL, aty_ld_le32(BUS_CNTL, par) | BUS_APER_REG_DIS, par);
+}
+
 #ifdef CONFIG_ATARI
 static int __devinit store_video_par(char *video_str, unsigned char m64_num)
 {
Index: linux-2.6.18-rc5-vs/drivers/video/aty/atyfb.h
===================================================================
--- linux-2.6.18-rc5-vs.orig/drivers/video/aty/atyfb.h
+++ linux-2.6.18-rc5-vs/drivers/video/aty/atyfb.h
@@ -185,6 +185,7 @@ struct atyfb_par {
 	int mtrr_aper;
 	int mtrr_reg;
 #endif
+	u32 mem_cntl;
 };
 
     /*
@@ -314,6 +315,7 @@ struct aty_pll_ops {
 	void (*set_pll)   (const struct fb_info * info, const union aty_pll * pll);
 	void (*get_pll)   (const struct fb_info *info, union aty_pll * pll);
 	int (*init_pll)   (const struct fb_info * info, union aty_pll * pll);
+	void (*resume_pll)(const struct fb_info *info, union aty_pll *pll);
 };
 
 extern const struct aty_pll_ops aty_pll_ati18818_1; /* ATI 18818 */
Index: linux-2.6.18-rc5-vs/drivers/video/aty/mach64_ct.c
===================================================================
--- linux-2.6.18-rc5-vs.orig/drivers/video/aty/mach64_ct.c
+++ linux-2.6.18-rc5-vs/drivers/video/aty/mach64_ct.c
@@ -398,8 +398,8 @@ static int __devinit aty_init_pll_ct(con
 				     union aty_pll *pll)
 {
 	struct atyfb_par *par = (struct atyfb_par *) info->par;
-	u8 mpost_div, xpost_div, sclk_post_div_real, sclk_fb_div, spll_cntl2;
-	u32 q, i, memcntl, trp;
+	u8 mpost_div, xpost_div, sclk_post_div_real;
+	u32 q, memcntl, trp;
 	u32 dsp_config, dsp_on_off, vga_dsp_config, vga_dsp_on_off;
 #ifdef DEBUG
 	int pllmclk, pllsclk;
@@ -575,14 +575,30 @@ static int __devinit aty_init_pll_ct(con
 			mpost_div += (q <  32*8);
 		}
 		sclk_post_div_real = postdividers[mpost_div];
-		sclk_fb_div = q * sclk_post_div_real / 8;
-		spll_cntl2 = mpost_div << 4;
+		pll->ct.sclk_fb_div = q * sclk_post_div_real / 8;
+		pll->ct.spll_cntl2 = mpost_div << 4;
 #ifdef DEBUG
-		pllsclk = (1000000 * 2 * sclk_fb_div) /
+		pllsclk = (1000000 * 2 * pll->ct.sclk_fb_div) /
 			(par->ref_clk_per * pll->ct.pll_ref_div);
 		printk("atyfb(%s): use sclk, pllsclk=%d MHz, sclk=mclk=%d MHz\n",
 			__FUNCTION__, pllsclk, pllsclk / sclk_post_div_real);
 #endif
+	}
+
+	/* Disable the extra precision pixel clock controls since we do not use them. */
+	pll->ct.ext_vpll_cntl = aty_ld_pll_ct(EXT_VPLL_CNTL, par);
+	pll->ct.ext_vpll_cntl &= ~(EXT_VPLL_EN | EXT_VPLL_VGA_EN | EXT_VPLL_INSYNC);
+
+	return 0;
+}
+
+static void aty_resume_pll_ct(const struct fb_info *info,
+			      union aty_pll *pll)
+{
+	struct atyfb_par *par = info->par;
+
+	if (par->mclk_per != par->xclk_per) {
+		int i;
 		/*
 		* This disables the sclk, crashes the computer as reported:
 		* aty_st_pll_ct(SPLL_CNTL2, 3, info);
@@ -590,8 +606,8 @@ static int __devinit aty_init_pll_ct(con
 		* So it seems the sclk must be enabled before it is used;
 		* so PLL_GEN_CNTL must be programmed *after* the sclk.
 		*/
-		aty_st_pll_ct(SCLK_FB_DIV, sclk_fb_div, par);
-		aty_st_pll_ct(SPLL_CNTL2, spll_cntl2, par);
+		aty_st_pll_ct(SCLK_FB_DIV, pll->ct.sclk_fb_div, par);
+		aty_st_pll_ct(SPLL_CNTL2, pll->ct.spll_cntl2, par);
 		/*
 		 * The sclk has been started. However, I believe the first clock
 		 * ticks it generates are not very stable. Hope this primitive loop
@@ -605,11 +621,7 @@ static int __devinit aty_init_pll_ct(con
 	aty_st_pll_ct(PLL_GEN_CNTL, pll->ct.pll_gen_cntl, par);
 	aty_st_pll_ct(MCLK_FB_DIV, pll->ct.mclk_fb_div, par);
 	aty_st_pll_ct(PLL_EXT_CNTL, pll->ct.pll_ext_cntl, par);
-	/* Disable the extra precision pixel clock controls since we do not use them. */
-	aty_st_pll_ct(EXT_VPLL_CNTL, aty_ld_pll_ct(EXT_VPLL_CNTL, par) &
-		~(EXT_VPLL_EN | EXT_VPLL_VGA_EN | EXT_VPLL_INSYNC), par);
-
-	return 0;
+	aty_st_pll_ct(EXT_VPLL_CNTL, pll->ct.ext_vpll_cntl, par);
 }
 
 static int dummy(void)
@@ -626,5 +638,6 @@ const struct aty_pll_ops aty_pll_ct = {
 	.pll_to_var	= aty_pll_to_var_ct,
 	.set_pll	= aty_set_pll_ct,
 	.get_pll	= aty_get_pll_ct,
-	.init_pll       = aty_init_pll_ct
+	.init_pll	= aty_init_pll_ct,
+	.resume_pll	= aty_resume_pll_ct,
 };

-- 
Ville Syrj������l������
syrjala@sci.fi
http://www.sci.fi/~syrjala/


[-- Attachment #2: Type: text/plain, Size: 373 bytes --]

-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642

[-- Attachment #3: Type: text/plain, Size: 182 bytes --]

_______________________________________________
Linux-fbdev-devel mailing list
Linux-fbdev-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linux-fbdev-devel

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [patch 8/9] atyfb: Improve atyfb_atari_probe()
  2006-09-03 22:06 ` [patch 8/9] atyfb: Improve atyfb_atari_probe() syrjala
@ 2006-09-04  9:20   ` Geert Uytterhoeven
  0 siblings, 0 replies; 15+ messages in thread
From: Geert Uytterhoeven @ 2006-09-04  9:20 UTC (permalink / raw)
  To: Linux Frame Buffer Device Development; +Cc: alex.kern, Ville Syrjala

On Mon, 4 Sep 2006 syrjala@sci.fi wrote:
> Improve atyfb_atari_probe():
> * Call correct_chipset() so that more par members, par->features in
>   particular, get initialized.

Thanks! This call was indeed missing for the Atari case.

Gr{oetje,eeting}s,

						Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
							    -- Linus Torvalds

-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [patch 1/9] atyfb: Remove FIXME
  2006-09-03 22:06 [patch 1/9] atyfb: Remove FIXME syrjala
                   ` (7 preceding siblings ...)
  2006-09-03 22:06 ` [patch 9/9] atyfb: Improve power management syrjala
@ 2006-09-08 22:02 ` Alexander Kern
  2006-09-09  7:46   ` Ville Syrjälä
  8 siblings, 1 reply; 15+ messages in thread
From: Alexander Kern @ 2006-09-08 22:02 UTC (permalink / raw)
  To: syrjala; +Cc: linux-fbdev-devel

Good work Ville,

have checked this patches  on my RAGE MOBILITY 
on top of 2.6.17.11(added with some fuzzies)

Signed-off-by: Alexander Kern <alex.kern@gmx.de>
for all 9 patches

Best Wishes
Mit freundlichen Grüßen

P.S. I would like to iron out the long standing issue on my laptop
I saw about for along time. I can shutdown but reboot. At least TFT goes 
black, leds go off and than nothing. Have you any infos about special 
register state for MOBILITY before reboot?

Am Montag 04 September 2006 00:06 schrieb syrjala@sci.fi:
> atyfb has used the auxiliary register aperture for a long time.
> Remove a related FIXME which was accidentally left in.
>
> Signed-off-by: Ville Syrjala <syrjala@sci.fi>
> ---
>
>  drivers/video/aty/atyfb_base.c |    5 ++---
>  1 file changed, 2 insertions(+), 3 deletions(-)
>
> Index: linux-2.6.18-rc4/drivers/video/aty/atyfb_base.c
> ===================================================================
> --- linux-2.6.18-rc4.orig/drivers/video/aty/atyfb_base.c
> +++ linux-2.6.18-rc4/drivers/video/aty/atyfb_base.c
> @@ -2600,9 +2600,8 @@ static int __devinit aty_init(struct fb_
>  		par->pll_ops->init_pll(info, &par->pll);
>
>  	/*
> -	 *  Last page of 8 MB (4 MB on ISA) aperture is MMIO
> -	 *  FIXME: we should use the auxiliary aperture instead so we can access
> -	 *  the full 8 MB of video RAM on 8 MB boards
> +	 *  Last page of 8 MB (4 MB on ISA) aperture is MMIO,
> +	 *  unless the auxiliary register aperture is used.
>  	 */
>
>  	if (!par->aux_start &&

-- 

-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
Linux-fbdev-devel mailing list
Linux-fbdev-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linux-fbdev-devel

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [patch 1/9] atyfb: Remove FIXME
  2006-09-08 22:02 ` [patch 1/9] atyfb: Remove FIXME Alexander Kern
@ 2006-09-09  7:46   ` Ville Syrjälä
  2006-09-09  8:20     ` Geert Uytterhoeven
  0 siblings, 1 reply; 15+ messages in thread
From: Ville Syrjälä @ 2006-09-09  7:46 UTC (permalink / raw)
  To: Alexander Kern; +Cc: linux-fbdev-devel

On Sat, Sep 09, 2006 at 12:02:54AM +0200, Alexander Kern wrote:
> Good work Ville,

Thanks.

> have checked this patches  on my RAGE MOBILITY 
> on top of 2.6.17.11(added with some fuzzies)
> 
> Signed-off-by: Alexander Kern <alex.kern@gmx.de>
> for all 9 patches
> 
> Best Wishes
> Mit freundlichen Grüßen
> 
> P.S. I would like to iron out the long standing issue on my laptop
> I saw about for along time. I can shutdown but reboot. At least TFT goes 
                                                ^
There should be a "not" here, right?

> black, leds go off and than nothing. Have you any infos about special 
> register state for MOBILITY before reboot?

No. My OmniBook 500 does the same thing BTW. I can shutdown but reboot 
just hangs the laptop. I'm guessing the BIOS doesn't like the state in 
which atyfb leaves the card. The reason I'm thinking it's the BIOS is 
that my OB6000, which has nearly the same hardware, reboots just fine.
I also tried all of the reboot= kernel options but none helped.

Maybe we just need to restore some of the original state before reboot. 
But I don't know if that's even possible. Do drivers get any kind of 
notification about reboot?

-- 
Ville Syrjälä
syrjala@sci.fi
http://www.sci.fi/~syrjala/

-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [patch 1/9] atyfb: Remove FIXME
  2006-09-09  7:46   ` Ville Syrjälä
@ 2006-09-09  8:20     ` Geert Uytterhoeven
  2006-09-09 12:39       ` Ville Syrjälä
  0 siblings, 1 reply; 15+ messages in thread
From: Geert Uytterhoeven @ 2006-09-09  8:20 UTC (permalink / raw)
  To: Linux Frame Buffer Device Development; +Cc: Alexander Kern

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: TEXT/PLAIN; charset=UTF-8, Size: 1839 bytes --]

On Sat, 9 Sep 2006, Ville [iso-8859-1] Syrjälä wrote:
> > have checked this patches  on my RAGE MOBILITY 
> > on top of 2.6.17.11(added with some fuzzies)
> > 
> > Signed-off-by: Alexander Kern <alex.kern@gmx.de>
> > for all 9 patches
> > 
> > Best Wishes
> > Mit freundlichen Grüßen
> > 
> > P.S. I would like to iron out the long standing issue on my laptop
> > I saw about for along time. I can shutdown but reboot. At least TFT goes 
>                                                 ^
> There should be a "not" here, right?
> 
> > black, leds go off and than nothing. Have you any infos about special 
> > register state for MOBILITY before reboot?
> 
> No. My OmniBook 500 does the same thing BTW. I can shutdown but reboot 
> just hangs the laptop. I'm guessing the BIOS doesn't like the state in 
> which atyfb leaves the card. The reason I'm thinking it's the BIOS is 
> that my OB6000, which has nearly the same hardware, reboots just fine.
> I also tried all of the reboot= kernel options but none helped.
> 
> Maybe we just need to restore some of the original state before reboot. 
> But I don't know if that's even possible. Do drivers get any kind of 
> notification about reboot?

I used to have the same problem (shutdown works, reboot hangs with black
screen) on my Vaio Z600 (Z505 in US/JP), but recent 2.6 (I use a Debian kernel)
seems to have this fixed.

But I still decided to use vgacon instead of atyfb on this laptop, as X shows
some noise when launched from atyfb.

Gr{oetje,eeting}s,

						Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
							    -- Linus Torvalds

[-- Attachment #2: Type: text/plain, Size: 373 bytes --]

-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642

[-- Attachment #3: Type: text/plain, Size: 182 bytes --]

_______________________________________________
Linux-fbdev-devel mailing list
Linux-fbdev-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linux-fbdev-devel

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [patch 1/9] atyfb: Remove FIXME
  2006-09-09  8:20     ` Geert Uytterhoeven
@ 2006-09-09 12:39       ` Ville Syrjälä
  2006-09-10  7:48         ` Geert Uytterhoeven
  0 siblings, 1 reply; 15+ messages in thread
From: Ville Syrjälä @ 2006-09-09 12:39 UTC (permalink / raw)
  To: linux-fbdev-devel; +Cc: Alexander Kern

On Sat, Sep 09, 2006 at 10:20:25AM +0200, Geert Uytterhoeven wrote:
> On Sat, 9 Sep 2006, Ville [iso-8859-1] Syrj??wrote:
> > > have checked this patches  on my RAGE MOBILITY 
> > > on top of 2.6.17.11(added with some fuzzies)
> > > 
> > > Signed-off-by: Alexander Kern <alex.kern@gmx.de>
> > > for all 9 patches
> > > 
> > > Best Wishes
> > > Mit freundlichen Gr?n
> > > 
> > > P.S. I would like to iron out the long standing issue on my laptop
> > > I saw about for along time. I can shutdown but reboot. At least TFT goes 
> >                                                 ^
> > There should be a "not" here, right?
> > 
> > > black, leds go off and than nothing. Have you any infos about special 
> > > register state for MOBILITY before reboot?
> > 
> > No. My OmniBook 500 does the same thing BTW. I can shutdown but reboot 
> > just hangs the laptop. I'm guessing the BIOS doesn't like the state in 
> > which atyfb leaves the card. The reason I'm thinking it's the BIOS is 
> > that my OB6000, which has nearly the same hardware, reboots just fine.
> > I also tried all of the reboot= kernel options but none helped.
> > 
> > Maybe we just need to restore some of the original state before reboot. 
> > But I don't know if that's even possible. Do drivers get any kind of 
> > notification about reboot?
> 
> I used to have the same problem (shutdown works, reboot hangs with black
> screen) on my Vaio Z600 (Z505 in US/JP), but recent 2.6 (I use a Debian kernel)
> seems to have this fixed.

Was that with atyfb? My OB500 reboots fine without atyfb.

-- 
Ville Syrjälä
syrjala@sci.fi
http://www.sci.fi/~syrjala/

-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: [patch 1/9] atyfb: Remove FIXME
  2006-09-09 12:39       ` Ville Syrjälä
@ 2006-09-10  7:48         ` Geert Uytterhoeven
  0 siblings, 0 replies; 15+ messages in thread
From: Geert Uytterhoeven @ 2006-09-10  7:48 UTC (permalink / raw)
  To: Linux Frame Buffer Device Development; +Cc: Alexander Kern

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: TEXT/PLAIN; charset=UTF-8, Size: 2130 bytes --]

On Sat, 9 Sep 2006, Ville [iso-8859-1] Syrjälä wrote:
> On Sat, Sep 09, 2006 at 10:20:25AM +0200, Geert Uytterhoeven wrote:
> > On Sat, 9 Sep 2006, Ville [iso-8859-1] Syrj??wrote:
> > > > have checked this patches  on my RAGE MOBILITY 
> > > > on top of 2.6.17.11(added with some fuzzies)
> > > > 
> > > > Signed-off-by: Alexander Kern <alex.kern@gmx.de>
> > > > for all 9 patches
> > > > 
> > > > Best Wishes
> > > > Mit freundlichen Gr?n
> > > > 
> > > > P.S. I would like to iron out the long standing issue on my laptop
> > > > I saw about for along time. I can shutdown but reboot. At least TFT goes 
> > >                                                 ^
> > > There should be a "not" here, right?
> > > 
> > > > black, leds go off and than nothing. Have you any infos about special 
> > > > register state for MOBILITY before reboot?
> > > 
> > > No. My OmniBook 500 does the same thing BTW. I can shutdown but reboot 
> > > just hangs the laptop. I'm guessing the BIOS doesn't like the state in 
> > > which atyfb leaves the card. The reason I'm thinking it's the BIOS is 
> > > that my OB6000, which has nearly the same hardware, reboots just fine.
> > > I also tried all of the reboot= kernel options but none helped.
> > > 
> > > Maybe we just need to restore some of the original state before reboot. 
> > > But I don't know if that's even possible. Do drivers get any kind of 
> > > notification about reboot?
> > 
> > I used to have the same problem (shutdown works, reboot hangs with black
> > screen) on my Vaio Z600 (Z505 in US/JP), but recent 2.6 (I use a Debian kernel)
> > seems to have this fixed.
> 
> Was that with atyfb? My OB500 reboots fine without atyfb.

Yes, with atyfb. On 2.4 with atyfb, reboot hangs. On recent 2.6 with atyfb,
reboot works fine.

Gr{oetje,eeting}s,

						Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
							    -- Linus Torvalds

[-- Attachment #2: Type: text/plain, Size: 373 bytes --]

-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642

[-- Attachment #3: Type: text/plain, Size: 182 bytes --]

_______________________________________________
Linux-fbdev-devel mailing list
Linux-fbdev-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linux-fbdev-devel

^ permalink raw reply	[flat|nested] 15+ messages in thread

end of thread, other threads:[~2006-09-10  7:48 UTC | newest]

Thread overview: 15+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2006-09-03 22:06 [patch 1/9] atyfb: Remove FIXME syrjala
2006-09-03 22:06 ` [patch 2/9] atyfb: Fix compiler warnings syrjala
2006-09-03 22:06 ` [patch 3/9] atyfb: Fix sparse warnings syrjala
2006-09-03 22:06 ` [patch 4/9] atyfb: Fix blanking level transitions syrjala
2006-09-03 22:06 ` [patch 5/9] atyfb: Remove pointless aty_init() argument syrjala
2006-09-03 22:06 ` [patch 6/9] atyfb: Fix __init and __devinit annotations syrjala
2006-09-03 22:06 ` [patch 7/9] atyfb: Remove aty_cmap_regs syrjala
2006-09-03 22:06 ` [patch 8/9] atyfb: Improve atyfb_atari_probe() syrjala
2006-09-04  9:20   ` Geert Uytterhoeven
2006-09-03 22:06 ` [patch 9/9] atyfb: Improve power management syrjala
2006-09-08 22:02 ` [patch 1/9] atyfb: Remove FIXME Alexander Kern
2006-09-09  7:46   ` Ville Syrjälä
2006-09-09  8:20     ` Geert Uytterhoeven
2006-09-09 12:39       ` Ville Syrjälä
2006-09-10  7:48         ` Geert Uytterhoeven

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).