Hi David,

This patch should remove the last of the prom_printf/prom_halt code from the driver directories with two exceptions.

If you do not have any issues with the changes, please can you apply them.

I looked at the remaining two files containing prom_printf (drivers/serial/dz.c - only used for debugging, and drivers/video/console/promcon.c - used to display info) and can see no inapropriate uses of prom_printf.

Is I understant it, prom_printf/prom_halt should only be used for debugging code and only where printk/panic does not have the desired effect when used on a kernel booted with -p.

Regards
        Mark Fortescue.
From: Mark Fortescue <[EMAIL PROTECTED]>

[SPARC32] Remove prom_printf and prom_halt

prom_printf and prom_halt should only be used as a last resort. If a system is
failing very early on in boot, the -p parameter can (and should) be used so
that generic driver code does not get plouted with architecture specific code.

Signed-off-by: Mark Fortescue <[EMAIL PROTECTED]>
---
I only have a CG3 and have been using a similar patch for some time. I made
the changes back in 2.6.8.1 when trying to find out why the CG3 console was
broaken. Black on Black is very dificult to read :).

diff --git a/drivers/video/bw2.c b/drivers/video/bw2.c
index 718b9f8..8fa38df 100644
--- a/drivers/video/bw2.c
+++ b/drivers/video/bw2.c
@@ -269,9 +269,7 @@ static void __devinit bw2_do_default_mode(struct bw2_par 
*par,
                return;
 
        default:
-               prom_printf("bw2: can't handle SR %02x\n",
-                           status);
-               prom_halt();
+               panic("bw2: can't handle SR %02x\n", status);
        }
        for ( ; *p; p += 2) {
                u8 __iomem *regp = &((u8 __iomem *)par->regs)[p[0]];
diff --git a/drivers/video/cg3.c b/drivers/video/cg3.c
index 5741b46..03189d8 100644
--- a/drivers/video/cg3.c
+++ b/drivers/video/cg3.c
@@ -332,9 +332,7 @@ static void __devinit cg3_do_default_mode(struct cg3_par 
*par)
                        else
                                type = CG3_AT_66HZ;
                } else {
-                       prom_printf("cgthree: can't handle SR %02x\n",
-                                   status);
-                       prom_halt();
+                       panic("cgthree: can't handle SR %02x\n", status);
                        return;
                }
        }
diff --git a/drivers/video/cyber2000fb.c b/drivers/video/cyber2000fb.c
index 30ede6e..85c73e1 100644
--- a/drivers/video/cyber2000fb.c
+++ b/drivers/video/cyber2000fb.c
@@ -1512,7 +1512,7 @@ static int cyberpro_pci_enable_mmio(struct cfb_info *cfb)
 
        iop = ioremap(0x3000000, 0x5000);
        if (iop == NULL) {
-               prom_printf("iga5000: cannot map I/O\n");
+               printk("iga5000: cannot map I/O\n");
                return -ENOMEM;
        }
 

Reply via email to