I would change dev_initalize to following void dev_initialize(void) { struct device *dev;
printk_info("Initializing devices...\n"); #if CONFIG_CONSOLE_VGA == 1 for (dev = all_devices; dev; dev = dev->next) { if (dev->enabled && !dev->initialized && dev->ops && dev->ops->init) { if( dev->on_mainboard && (dev->rom_address!=0)) continue; printk_debug("%s init\n", dev_path(dev)); dev->initialized = 1; dev->ops->init(dev); } } #endif for (dev = all_devices; dev; dev = dev->next) { if (dev->enabled && !dev->initialized && dev->ops && dev->ops->init) { printk_debug("%s init\n", dev_path(dev)); dev->initialized = 1; dev->ops->init(dev); } } printk_info("Devices initialized\n"); }
-----Original Message----- From: YhLu Sent: Thursday, January 13, 2005 6:51 PM To: Li-Ta Lo Cc: Sagiv Yefet; LinuxBIOS Subject: RE: Running with VGA
It seems after if after cpu init do the onboard vga init, it will work.
The CPU init only do the init ECC and clear that after 1M. ... Werid! And it is not wiped out after power off.
YH
-----Original Message----- From: Li-Ta Lo [mailto:ollie@lanl.gov] Sent: Thursday, January 13, 2005 3:15 PM To: YhLu Cc: Sagiv Yefet; LinuxBIOS Subject: RE: Running with VGA
On Thu, 2005-01-13 at 16:23, YhLu wrote:
S2892 has onboard atirage xl S2895 has no onboard.
With exactly the same chip and BIOS? Then probably the order of calling device::init() does matter.
Ollie
-----Original Message----- From: Li-Ta Lo [mailto:ollie@lanl.gov] Sent: Thursday, January 13, 2005 3:10 PM To: YhLu Cc: Sagiv Yefet; LinuxBIOS Subject: RE: Running with VGA
On Thu, 2005-01-13 at 15:45, YhLu wrote:
No, no problem.
Same addon card (ati rage xl) (pci) on S2895 works well.
I am confused. Are you using S2895 or S2892? And is the rage xl on board or as an addon card?
Ollie
_______________________________________________ Linuxbios mailing list Linuxbios@clustermatic.org http://www.clustermatic.org/mailman/listinfo/linuxbios
On Thu, 2005-01-13 at 20:00, YhLu wrote:
I would change dev_initalize to following void dev_initialize(void) { struct device *dev;
printk_info("Initializing devices...\n");
#if CONFIG_CONSOLE_VGA == 1 for (dev = all_devices; dev; dev = dev->next) { if (dev->enabled && !dev->initialized && dev->ops && dev->ops->init) { if( dev->on_mainboard && (dev->rom_address!=0)) continue; printk_debug("%s init\n", dev_path(dev)); dev->initialized = 1; dev->ops->init(dev); } } #endif for (dev = all_devices; dev; dev = dev->next) { if (dev->enabled && !dev->initialized && dev->ops && dev->ops->init) { printk_debug("%s init\n", dev_path(dev)); dev->initialized = 1; dev->ops->init(dev); } } printk_info("Devices initialized\n"); }
If we really have to do that, I think we should change the init order to "top to down" instead of "first to last" in the device tree.
Ollie
-----Original Message----- From: YhLu Sent: Thursday, January 13, 2005 6:51 PM To: Li-Ta Lo Cc: Sagiv Yefet; LinuxBIOS Subject: RE: Running with VGA
It seems after if after cpu init do the onboard vga init, it will work.
The CPU init only do the init ECC and clear that after 1M. ... Werid! And it is not wiped out after power off.
YH
-----Original Message----- From: Li-Ta Lo [mailto:ollie@lanl.gov] Sent: Thursday, January 13, 2005 3:15 PM To: YhLu Cc: Sagiv Yefet; LinuxBIOS Subject: RE: Running with VGA
On Thu, 2005-01-13 at 16:23, YhLu wrote:
S2892 has onboard atirage xl S2895 has no onboard.
With exactly the same chip and BIOS? Then probably the order of calling device::init() does matter.
Ollie
-----Original Message----- From: Li-Ta Lo [mailto:ollie@lanl.gov] Sent: Thursday, January 13, 2005 3:10 PM To: YhLu Cc: Sagiv Yefet; LinuxBIOS Subject: RE: Running with VGA
On Thu, 2005-01-13 at 15:45, YhLu wrote:
No, no problem.
Same addon card (ati rage xl) (pci) on S2895 works well.
I am confused. Are you using S2895 or S2892? And is the rage xl on board or as an addon card?
Ollie
Linuxbios mailing list Linuxbios@clustermatic.org http://www.clustermatic.org/mailman/listinfo/linuxbios