Messages in this thread | | | Date | Wed, 15 Jan 2003 21:11:04 -0300 | From | Gabriel Gomiz <> | Subject | NCR 7452/3 POS - Retail CMOS NVRAM Driver |
| |
I say Hi to the greatests hackers!
I'm trying to build a kernel module driver to be able to access the CMOS NVRAM that the NCR 7452/3 POS (Point of Sale) has built-in on the motherboard. All the information that I could get from the manufacturers is that the memory works at I/O address 0x100. But later I found out that you can configure the I/O address using switches on the motherboard to one of the following ranges of addresses: 0x100-0x10F DEFAULT 0x120-0x12F 0x140-0x14F 0x160-0x16F
The memory chips that NCR uses are: 1) NEC D43256BGU - NCR POS Model 7452-1011 The chip is 256KB, but NCR says they use only 128KB 2) NEC D431000AGW - NCR POS Model 7453-1011 The chip is 1MB, but NCR says they use only 128KB
I've made a simple kernel module (based on drivers/char/nvram.c) to see if I can _test_ the memory (to see if it is there and read/write some bytes from 0x100 I/O Port) and I'm getting some confusing results. In the end the module does the following:
#ifndef NVRAM_PORT #define NVRAM_PORT(x) (0x100 + (x)) #endif
#define NVRAM_READ(addr) ({ \ outb_p((addr),NVRAM_PORT(0)); \ inb_p(NVRAM_PORT(1)); \ })
#define NVRAM_WRITE(val, addr) ({ \ outb_p((addr),NVRAM_PORT(0)); \ outb_p((val),NVRAM_PORT(1)); \ })
The questions are:
* Has anyone worked with this kind of NVRAM before? * Do you know how can the memory be programmed? Maybe you can enlight me with something... :)
I have some more details of the module and the tests I've been doing to send if someone is interested.
OBS: If this message is considered highly off-topic, please can you point me in the right direction to ask this questions? (Maybe linux-mtd???)
Many thanks in advance
-- .^. Gabriel Gomiz - Red Hat Certified Engineer (RHCE) /V\ // \\ /( )\ ^^-^^ s/Window[$s]/LINUX!!/g or die;
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |