[OpenBIOS] devbios problems
stepan at suse.de
Sat Dec 21 16:42:14 CET 2002
* Peter Kögel <peter.koegel at web.de> [021220 11:40]:
> In sis_activate it seems that address 0x51 of the virtual kernel address
> space is accessed.
> writeb(pci_dummy & 0x7f, 0x51);
> // sis deactivate():
> writeb(pci_dummy, 0x51);
> This leads to an segmantation fault in my case. Can someone explain me what
> this code should do?
> The comment says: /* disable cache */
It should probably either read from the physical address or rather do an
inb/outb. I don't have the specs available and I cannot recall exactly
where this code comes from.
> The next thing I noticed is that the ATMEL29C010A doesn't like the
> flash_program_atmel() code.
> When I use the flash_program -code everything is fine.
> void flash_program (void)
> void flash_program_atmel (void)
> The AT29C010A data sheet says that:
> the code in flash_program() is used:
> 1. to activate data protection
> 2. ac "program"-command when data protection is activated
> the flash_program_atmel() code does switch of the data protection.
> I dont know why the flash_program_atmel() code doesn't work for me since it
> agrees with the data sheet.
> The problem is that after the write access no more flash commands can be
> executed. That means that every
> other write to the bios does fail and when I
> rmmod bios
> insmod bios.o
> then the kernel module doesn't detect the flashrom until next reboot (the
> identification command does not work).
so we probably have to reset to data protection after every write by
calling command 0xa0?
> I tried this with the EON29F002NT-flashrom which belongs to the board, but
> did not write on that, and the ATMEL.
have you tried CVS or 0.3.2? CVS should support some EON chips.
What does /proc/bios say?
The x86 isn't all that complex - it just doesn't make a lot of
sense. -- Mike Johnson, Leader of 80x86 Design at AMD
Microprocessor Report (1994)
More information about the openbios