Lines Matching refs:io_port
3808 static void trms1040_wait_30us(unsigned long io_port) in trms1040_wait_30us() argument
3811 outb(5, io_port + TRM_S1040_GEN_TIMER); in trms1040_wait_30us()
3812 while (!(inb(io_port + TRM_S1040_GEN_STATUS) & GTIMEOUT)) in trms1040_wait_30us()
3825 static void trms1040_write_cmd(unsigned long io_port, u8 cmd, u8 addr) in trms1040_write_cmd() argument
3836 outb(send_data, io_port + TRM_S1040_GEN_NVRAM); in trms1040_write_cmd()
3837 trms1040_wait_30us(io_port); in trms1040_write_cmd()
3839 io_port + TRM_S1040_GEN_NVRAM); in trms1040_write_cmd()
3840 trms1040_wait_30us(io_port); in trms1040_write_cmd()
3849 outb(send_data, io_port + TRM_S1040_GEN_NVRAM); in trms1040_write_cmd()
3850 trms1040_wait_30us(io_port); in trms1040_write_cmd()
3852 io_port + TRM_S1040_GEN_NVRAM); in trms1040_write_cmd()
3853 trms1040_wait_30us(io_port); in trms1040_write_cmd()
3855 outb(NVR_SELECT, io_port + TRM_S1040_GEN_NVRAM); in trms1040_write_cmd()
3856 trms1040_wait_30us(io_port); in trms1040_write_cmd()
3870 static void trms1040_set_data(unsigned long io_port, u8 addr, u8 byte) in trms1040_set_data() argument
3876 trms1040_write_cmd(io_port, 0x05, addr); in trms1040_set_data()
3884 outb(send_data, io_port + TRM_S1040_GEN_NVRAM); in trms1040_set_data()
3885 trms1040_wait_30us(io_port); in trms1040_set_data()
3886 outb((send_data | NVR_CLOCK), io_port + TRM_S1040_GEN_NVRAM); in trms1040_set_data()
3887 trms1040_wait_30us(io_port); in trms1040_set_data()
3889 outb(NVR_SELECT, io_port + TRM_S1040_GEN_NVRAM); in trms1040_set_data()
3890 trms1040_wait_30us(io_port); in trms1040_set_data()
3893 outb(0, io_port + TRM_S1040_GEN_NVRAM); in trms1040_set_data()
3894 trms1040_wait_30us(io_port); in trms1040_set_data()
3896 outb(NVR_SELECT, io_port + TRM_S1040_GEN_NVRAM); in trms1040_set_data()
3897 trms1040_wait_30us(io_port); in trms1040_set_data()
3901 outb((NVR_SELECT | NVR_CLOCK), io_port + TRM_S1040_GEN_NVRAM); in trms1040_set_data()
3902 trms1040_wait_30us(io_port); in trms1040_set_data()
3904 outb(NVR_SELECT, io_port + TRM_S1040_GEN_NVRAM); in trms1040_set_data()
3905 trms1040_wait_30us(io_port); in trms1040_set_data()
3907 if (inb(io_port + TRM_S1040_GEN_NVRAM) & NVR_BITIN) in trms1040_set_data()
3912 outb(0, io_port + TRM_S1040_GEN_NVRAM); in trms1040_set_data()
3924 static void trms1040_write_all(struct NvRamType *eeprom, unsigned long io_port) in trms1040_write_all() argument
3930 outb((inb(io_port + TRM_S1040_GEN_CONTROL) | EN_EEPROM), in trms1040_write_all()
3931 io_port + TRM_S1040_GEN_CONTROL); in trms1040_write_all()
3934 trms1040_write_cmd(io_port, 0x04, 0xFF); in trms1040_write_all()
3935 outb(0, io_port + TRM_S1040_GEN_NVRAM); in trms1040_write_all()
3936 trms1040_wait_30us(io_port); in trms1040_write_all()
3940 trms1040_set_data(io_port, addr, *b_eeprom); in trms1040_write_all()
3943 trms1040_write_cmd(io_port, 0x04, 0x00); in trms1040_write_all()
3944 outb(0, io_port + TRM_S1040_GEN_NVRAM); in trms1040_write_all()
3945 trms1040_wait_30us(io_port); in trms1040_write_all()
3948 outb((inb(io_port + TRM_S1040_GEN_CONTROL) & ~EN_EEPROM), in trms1040_write_all()
3949 io_port + TRM_S1040_GEN_CONTROL); in trms1040_write_all()
3964 static u8 trms1040_get_data(unsigned long io_port, u8 addr) in trms1040_get_data() argument
3971 trms1040_write_cmd(io_port, 0x06, addr); in trms1040_get_data()
3975 outb((NVR_SELECT | NVR_CLOCK), io_port + TRM_S1040_GEN_NVRAM); in trms1040_get_data()
3976 trms1040_wait_30us(io_port); in trms1040_get_data()
3977 outb(NVR_SELECT, io_port + TRM_S1040_GEN_NVRAM); in trms1040_get_data()
3980 read_byte = inb(io_port + TRM_S1040_GEN_NVRAM); in trms1040_get_data()
3985 trms1040_wait_30us(io_port); in trms1040_get_data()
3989 outb(0, io_port + TRM_S1040_GEN_NVRAM); in trms1040_get_data()
4002 static void trms1040_read_all(struct NvRamType *eeprom, unsigned long io_port) in trms1040_read_all() argument
4008 outb((inb(io_port + TRM_S1040_GEN_CONTROL) | EN_EEPROM), in trms1040_read_all()
4009 io_port + TRM_S1040_GEN_CONTROL); in trms1040_read_all()
4013 *b_eeprom = trms1040_get_data(io_port, addr); in trms1040_read_all()
4016 outb((inb(io_port + TRM_S1040_GEN_CONTROL) & ~EN_EEPROM), in trms1040_read_all()
4017 io_port + TRM_S1040_GEN_CONTROL); in trms1040_read_all()
4032 static void check_eeprom(struct NvRamType *eeprom, unsigned long io_port) in check_eeprom() argument
4040 trms1040_read_all(eeprom, io_port); /* read eeprom */ in check_eeprom()
4086 trms1040_write_all(eeprom, io_port); in check_eeprom()
4291 host->io_port = acb->io_port_base; in adapter_init_scsi_host()
4371 static int adapter_init(struct AdapterCtlBlk *acb, unsigned long io_port, in adapter_init() argument
4374 if (!request_region(io_port, io_port_len, DC395X_NAME)) { in adapter_init()
4375 dprintkl(KERN_ERR, "Failed to reserve IO region 0x%lx\n", io_port); in adapter_init()
4379 acb->io_port_base = io_port; in adapter_init()
4391 check_eeprom(&acb->eeprom, io_port); in adapter_init()