Lines Matching refs:io_port
3758 static void trms1040_wait_30us(unsigned long io_port) in trms1040_wait_30us() argument
3761 outb(5, io_port + TRM_S1040_GEN_TIMER); in trms1040_wait_30us()
3762 while (!(inb(io_port + TRM_S1040_GEN_STATUS) & GTIMEOUT)) in trms1040_wait_30us()
3775 static void trms1040_write_cmd(unsigned long io_port, u8 cmd, u8 addr) in trms1040_write_cmd() argument
3786 outb(send_data, io_port + TRM_S1040_GEN_NVRAM); in trms1040_write_cmd()
3787 trms1040_wait_30us(io_port); in trms1040_write_cmd()
3789 io_port + TRM_S1040_GEN_NVRAM); in trms1040_write_cmd()
3790 trms1040_wait_30us(io_port); in trms1040_write_cmd()
3799 outb(send_data, io_port + TRM_S1040_GEN_NVRAM); in trms1040_write_cmd()
3800 trms1040_wait_30us(io_port); in trms1040_write_cmd()
3802 io_port + TRM_S1040_GEN_NVRAM); in trms1040_write_cmd()
3803 trms1040_wait_30us(io_port); in trms1040_write_cmd()
3805 outb(NVR_SELECT, io_port + TRM_S1040_GEN_NVRAM); in trms1040_write_cmd()
3806 trms1040_wait_30us(io_port); in trms1040_write_cmd()
3820 static void trms1040_set_data(unsigned long io_port, u8 addr, u8 byte) in trms1040_set_data() argument
3826 trms1040_write_cmd(io_port, 0x05, addr); in trms1040_set_data()
3834 outb(send_data, io_port + TRM_S1040_GEN_NVRAM); in trms1040_set_data()
3835 trms1040_wait_30us(io_port); in trms1040_set_data()
3836 outb((send_data | NVR_CLOCK), io_port + TRM_S1040_GEN_NVRAM); in trms1040_set_data()
3837 trms1040_wait_30us(io_port); in trms1040_set_data()
3839 outb(NVR_SELECT, io_port + TRM_S1040_GEN_NVRAM); in trms1040_set_data()
3840 trms1040_wait_30us(io_port); in trms1040_set_data()
3843 outb(0, io_port + TRM_S1040_GEN_NVRAM); in trms1040_set_data()
3844 trms1040_wait_30us(io_port); in trms1040_set_data()
3846 outb(NVR_SELECT, io_port + TRM_S1040_GEN_NVRAM); in trms1040_set_data()
3847 trms1040_wait_30us(io_port); in trms1040_set_data()
3851 outb((NVR_SELECT | NVR_CLOCK), io_port + TRM_S1040_GEN_NVRAM); in trms1040_set_data()
3852 trms1040_wait_30us(io_port); in trms1040_set_data()
3854 outb(NVR_SELECT, io_port + TRM_S1040_GEN_NVRAM); in trms1040_set_data()
3855 trms1040_wait_30us(io_port); in trms1040_set_data()
3857 if (inb(io_port + TRM_S1040_GEN_NVRAM) & NVR_BITIN) in trms1040_set_data()
3862 outb(0, io_port + TRM_S1040_GEN_NVRAM); in trms1040_set_data()
3874 static void trms1040_write_all(struct NvRamType *eeprom, unsigned long io_port) in trms1040_write_all() argument
3880 outb((inb(io_port + TRM_S1040_GEN_CONTROL) | EN_EEPROM), in trms1040_write_all()
3881 io_port + TRM_S1040_GEN_CONTROL); in trms1040_write_all()
3884 trms1040_write_cmd(io_port, 0x04, 0xFF); in trms1040_write_all()
3885 outb(0, io_port + TRM_S1040_GEN_NVRAM); in trms1040_write_all()
3886 trms1040_wait_30us(io_port); in trms1040_write_all()
3890 trms1040_set_data(io_port, addr, *b_eeprom); in trms1040_write_all()
3893 trms1040_write_cmd(io_port, 0x04, 0x00); in trms1040_write_all()
3894 outb(0, io_port + TRM_S1040_GEN_NVRAM); in trms1040_write_all()
3895 trms1040_wait_30us(io_port); in trms1040_write_all()
3898 outb((inb(io_port + TRM_S1040_GEN_CONTROL) & ~EN_EEPROM), in trms1040_write_all()
3899 io_port + TRM_S1040_GEN_CONTROL); in trms1040_write_all()
3914 static u8 trms1040_get_data(unsigned long io_port, u8 addr) in trms1040_get_data() argument
3921 trms1040_write_cmd(io_port, 0x06, addr); in trms1040_get_data()
3925 outb((NVR_SELECT | NVR_CLOCK), io_port + TRM_S1040_GEN_NVRAM); in trms1040_get_data()
3926 trms1040_wait_30us(io_port); in trms1040_get_data()
3927 outb(NVR_SELECT, io_port + TRM_S1040_GEN_NVRAM); in trms1040_get_data()
3930 read_byte = inb(io_port + TRM_S1040_GEN_NVRAM); in trms1040_get_data()
3935 trms1040_wait_30us(io_port); in trms1040_get_data()
3939 outb(0, io_port + TRM_S1040_GEN_NVRAM); in trms1040_get_data()
3952 static void trms1040_read_all(struct NvRamType *eeprom, unsigned long io_port) in trms1040_read_all() argument
3958 outb((inb(io_port + TRM_S1040_GEN_CONTROL) | EN_EEPROM), in trms1040_read_all()
3959 io_port + TRM_S1040_GEN_CONTROL); in trms1040_read_all()
3963 *b_eeprom = trms1040_get_data(io_port, addr); in trms1040_read_all()
3966 outb((inb(io_port + TRM_S1040_GEN_CONTROL) & ~EN_EEPROM), in trms1040_read_all()
3967 io_port + TRM_S1040_GEN_CONTROL); in trms1040_read_all()
3982 static void check_eeprom(struct NvRamType *eeprom, unsigned long io_port) in check_eeprom() argument
3990 trms1040_read_all(eeprom, io_port); /* read eeprom */ in check_eeprom()
4036 trms1040_write_all(eeprom, io_port); in check_eeprom()
4241 host->io_port = acb->io_port_base; in adapter_init_scsi_host()
4322 static int adapter_init(struct AdapterCtlBlk *acb, unsigned long io_port, in adapter_init() argument
4325 if (!request_region(io_port, io_port_len, DC395X_NAME)) { in adapter_init()
4326 dprintkl(KERN_ERR, "Failed to reserve IO region 0x%lx\n", io_port); in adapter_init()
4330 acb->io_port_base = io_port; in adapter_init()
4342 check_eeprom(&acb->eeprom, io_port); in adapter_init()