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 <mark@xxxxxxxxxxxxxxxxxx> [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 <mark@xxxxxxxxxxxxxxxxxx> --- 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; }