Lines Matching refs:sio_data
102 void (*sio_outb)(struct nct6775_sio_data *sio_data, int reg, int val);
103 int (*sio_inb)(struct nct6775_sio_data *sio_data, int reg);
104 void (*sio_select)(struct nct6775_sio_data *sio_data, int ld);
105 int (*sio_enter)(struct nct6775_sio_data *sio_data);
106 void (*sio_exit)(struct nct6775_sio_data *sio_data);
176 static int superio_wmi_inb(struct nct6775_sio_data *sio_data, int reg) in superio_wmi_inb() argument
180 nct6775_asuswmi_evaluate_method(ASUSWMI_METHODID_RSIO, sio_data->ld, in superio_wmi_inb()
185 static void superio_wmi_outb(struct nct6775_sio_data *sio_data, int reg, int val) in superio_wmi_outb() argument
187 nct6775_asuswmi_evaluate_method(ASUSWMI_METHODID_WSIO, sio_data->ld, in superio_wmi_outb()
191 static void superio_wmi_select(struct nct6775_sio_data *sio_data, int ld) in superio_wmi_select() argument
193 sio_data->ld = ld; in superio_wmi_select()
196 static int superio_wmi_enter(struct nct6775_sio_data *sio_data) in superio_wmi_enter() argument
201 static void superio_wmi_exit(struct nct6775_sio_data *sio_data) in superio_wmi_exit() argument
205 static void superio_outb(struct nct6775_sio_data *sio_data, int reg, int val) in superio_outb() argument
207 int ioreg = sio_data->sioreg; in superio_outb()
213 static int superio_inb(struct nct6775_sio_data *sio_data, int reg) in superio_inb() argument
215 int ioreg = sio_data->sioreg; in superio_inb()
221 static void superio_select(struct nct6775_sio_data *sio_data, int ld) in superio_select() argument
223 int ioreg = sio_data->sioreg; in superio_select()
229 static int superio_enter(struct nct6775_sio_data *sio_data) in superio_enter() argument
231 int ioreg = sio_data->sioreg; in superio_enter()
245 static void superio_exit(struct nct6775_sio_data *sio_data) in superio_exit() argument
247 int ioreg = sio_data->sioreg; in superio_exit()
356 static void nct6791_enable_io_mapping(struct nct6775_sio_data *sio_data) in nct6791_enable_io_mapping() argument
360 val = sio_data->sio_inb(sio_data, NCT6791_REG_HM_IO_SPACE_LOCK_ENABLE); in nct6791_enable_io_mapping()
363 sio_data->sio_outb(sio_data, NCT6791_REG_HM_IO_SPACE_LOCK_ENABLE, in nct6791_enable_io_mapping()
402 struct nct6775_sio_data *sio_data = dev_get_platdata(dev); in nct6775_resume() local
409 err = sio_data->sio_enter(sio_data); in nct6775_resume()
413 sio_data->sio_select(sio_data, NCT6775_LD_HWM); in nct6775_resume()
414 reg = sio_data->sio_inb(sio_data, SIO_REG_ENABLE); in nct6775_resume()
416 sio_data->sio_outb(sio_data, SIO_REG_ENABLE, data->sio_reg_enable); in nct6775_resume()
422 nct6791_enable_io_mapping(sio_data); in nct6775_resume()
424 sio_data->sio_exit(sio_data); in nct6775_resume()
483 nct6775_check_fan_inputs(struct nct6775_data *data, struct nct6775_sio_data *sio_data) in nct6775_check_fan_inputs() argument
491 sio_data->sio_select(sio_data, NCT6775_LD_HWM); in nct6775_check_fan_inputs()
492 data->sio_reg_enable = sio_data->sio_inb(sio_data, SIO_REG_ENABLE); in nct6775_check_fan_inputs()
496 int cr2c = sio_data->sio_inb(sio_data, 0x2c); in nct6775_check_fan_inputs()
502 fan4pin = !(sio_data->sio_inb(sio_data, 0x2A) & 0x80); in nct6775_check_fan_inputs()
504 bool gpok = sio_data->sio_inb(sio_data, 0x27) & 0x80; in nct6775_check_fan_inputs()
520 sio_data->sio_outb(sio_data, SIO_REG_ENABLE, in nct6775_check_fan_inputs()
529 fan3pin = !(sio_data->sio_inb(sio_data, 0x24) & 0x40); in nct6775_check_fan_inputs()
534 fan4pin = sio_data->sio_inb(sio_data, 0x1C) & 0x01; in nct6775_check_fan_inputs()
539 fan5pin = sio_data->sio_inb(sio_data, 0x1C) & 0x02; in nct6775_check_fan_inputs()
544 int cr24 = sio_data->sio_inb(sio_data, 0x24); in nct6775_check_fan_inputs()
549 int cr1a = sio_data->sio_inb(sio_data, 0x1a); in nct6775_check_fan_inputs()
550 int cr1b = sio_data->sio_inb(sio_data, 0x1b); in nct6775_check_fan_inputs()
551 int cr24 = sio_data->sio_inb(sio_data, 0x24); in nct6775_check_fan_inputs()
552 int cr2a = sio_data->sio_inb(sio_data, 0x2a); in nct6775_check_fan_inputs()
553 int cr2b = sio_data->sio_inb(sio_data, 0x2b); in nct6775_check_fan_inputs()
554 int cr2f = sio_data->sio_inb(sio_data, 0x2f); in nct6775_check_fan_inputs()
570 int cr1a = sio_data->sio_inb(sio_data, 0x1a); in nct6775_check_fan_inputs()
571 int cr1b = sio_data->sio_inb(sio_data, 0x1b); in nct6775_check_fan_inputs()
572 int cr1c = sio_data->sio_inb(sio_data, 0x1c); in nct6775_check_fan_inputs()
573 int cr1d = sio_data->sio_inb(sio_data, 0x1d); in nct6775_check_fan_inputs()
574 int cr2a = sio_data->sio_inb(sio_data, 0x2a); in nct6775_check_fan_inputs()
575 int cr2b = sio_data->sio_inb(sio_data, 0x2b); in nct6775_check_fan_inputs()
576 int cr2d = sio_data->sio_inb(sio_data, 0x2d); in nct6775_check_fan_inputs()
577 int cr2f = sio_data->sio_inb(sio_data, 0x2f); in nct6775_check_fan_inputs()
584 sio_data->sio_select(sio_data, NCT6775_LD_12); in nct6775_check_fan_inputs()
585 cre0 = sio_data->sio_inb(sio_data, 0xe0); in nct6775_check_fan_inputs()
586 creb = sio_data->sio_inb(sio_data, 0xeb); in nct6775_check_fan_inputs()
587 cred = sio_data->sio_inb(sio_data, 0xed); in nct6775_check_fan_inputs()
723 struct nct6775_sio_data *sio_data = data->driver_data; in clear_caseopen() local
739 ret = sio_data->sio_enter(sio_data); in clear_caseopen()
745 sio_data->sio_select(sio_data, NCT6775_LD_ACPI); in clear_caseopen()
746 reg = sio_data->sio_inb(sio_data, NCT6775_REG_CR_CASEOPEN_CLR[nr]); in clear_caseopen()
748 sio_data->sio_outb(sio_data, NCT6775_REG_CR_CASEOPEN_CLR[nr], reg); in clear_caseopen()
750 sio_data->sio_outb(sio_data, NCT6775_REG_CR_CASEOPEN_CLR[nr], reg); in clear_caseopen()
751 sio_data->sio_exit(sio_data); in clear_caseopen()
817 struct nct6775_sio_data *sio_data = data->driver_data; in nct6775_platform_probe_init() local
819 err = sio_data->sio_enter(sio_data); in nct6775_platform_probe_init()
823 cr2a = sio_data->sio_inb(sio_data, 0x2a); in nct6775_platform_probe_init()
849 sio_data->sio_select(sio_data, NCT6775_LD_VID); in nct6775_platform_probe_init()
850 data->vid = sio_data->sio_inb(sio_data, 0xe3); in nct6775_platform_probe_init()
857 sio_data->sio_select(sio_data, NCT6775_LD_HWM); in nct6775_platform_probe_init()
858 tmp = sio_data->sio_inb(sio_data, in nct6775_platform_probe_init()
882 sio_data->sio_outb(sio_data, NCT6775_REG_CR_FAN_DEBOUNCE, in nct6775_platform_probe_init()
887 nct6775_check_fan_inputs(data, sio_data); in nct6775_platform_probe_init()
889 sio_data->sio_exit(sio_data); in nct6775_platform_probe_init()
911 struct nct6775_sio_data *sio_data = dev_get_platdata(dev); in nct6775_platform_probe() local
916 if (sio_data->access == access_direct) { in nct6775_platform_probe()
926 data->kind = sio_data->kind; in nct6775_platform_probe()
927 data->sioreg = sio_data->sioreg; in nct6775_platform_probe()
929 if (sio_data->access == access_direct) { in nct6775_platform_probe()
938 data->driver_data = sio_data; in nct6775_platform_probe()
953 static int __init nct6775_find(int sioaddr, struct nct6775_sio_data *sio_data) in nct6775_find() argument
959 sio_data->access = access_direct; in nct6775_find()
960 sio_data->sioreg = sioaddr; in nct6775_find()
962 err = sio_data->sio_enter(sio_data); in nct6775_find()
966 val = (sio_data->sio_inb(sio_data, SIO_REG_DEVID) << 8) | in nct6775_find()
967 sio_data->sio_inb(sio_data, SIO_REG_DEVID + 1); in nct6775_find()
973 sio_data->kind = nct6106; in nct6775_find()
976 sio_data->kind = nct6116; in nct6775_find()
979 sio_data->kind = nct6775; in nct6775_find()
982 sio_data->kind = nct6776; in nct6775_find()
985 sio_data->kind = nct6779; in nct6775_find()
988 sio_data->kind = nct6791; in nct6775_find()
991 sio_data->kind = nct6792; in nct6775_find()
994 sio_data->kind = nct6793; in nct6775_find()
997 sio_data->kind = nct6795; in nct6775_find()
1000 sio_data->kind = nct6796; in nct6775_find()
1003 sio_data->kind = nct6797; in nct6775_find()
1006 sio_data->kind = nct6798; in nct6775_find()
1011 sio_data->sio_exit(sio_data); in nct6775_find()
1016 sio_data->sio_select(sio_data, NCT6775_LD_HWM); in nct6775_find()
1017 val = (sio_data->sio_inb(sio_data, SIO_REG_ADDR) << 8) in nct6775_find()
1018 | sio_data->sio_inb(sio_data, SIO_REG_ADDR + 1); in nct6775_find()
1022 sio_data->sio_exit(sio_data); in nct6775_find()
1027 val = sio_data->sio_inb(sio_data, SIO_REG_ENABLE); in nct6775_find()
1030 sio_data->sio_outb(sio_data, SIO_REG_ENABLE, val | 0x01); in nct6775_find()
1033 if (sio_data->kind == nct6791 || sio_data->kind == nct6792 || in nct6775_find()
1034 sio_data->kind == nct6793 || sio_data->kind == nct6795 || in nct6775_find()
1035 sio_data->kind == nct6796 || sio_data->kind == nct6797 || in nct6775_find()
1036 sio_data->kind == nct6798) in nct6775_find()
1037 nct6791_enable_io_mapping(sio_data); in nct6775_find()
1039 sio_data->sio_exit(sio_data); in nct6775_find()
1041 nct6775_sio_names[sio_data->kind], sioaddr, addr); in nct6775_find()
1203 struct nct6775_sio_data sio_data; in sensors_nct6775_platform_init() local
1236 sio_data.sio_outb = superio_outb; in sensors_nct6775_platform_init()
1237 sio_data.sio_inb = superio_inb; in sensors_nct6775_platform_init()
1238 sio_data.sio_select = superio_select; in sensors_nct6775_platform_init()
1239 sio_data.sio_enter = superio_enter; in sensors_nct6775_platform_init()
1240 sio_data.sio_exit = superio_exit; in sensors_nct6775_platform_init()
1242 address = nct6775_find(sioaddr[i], &sio_data); in sensors_nct6775_platform_init()
1248 sio_data.access = access; in sensors_nct6775_platform_init()
1251 sio_data.sio_outb = superio_wmi_outb; in sensors_nct6775_platform_init()
1252 sio_data.sio_inb = superio_wmi_inb; in sensors_nct6775_platform_init()
1253 sio_data.sio_select = superio_wmi_select; in sensors_nct6775_platform_init()
1254 sio_data.sio_enter = superio_wmi_enter; in sensors_nct6775_platform_init()
1255 sio_data.sio_exit = superio_wmi_exit; in sensors_nct6775_platform_init()
1264 err = platform_device_add_data(pdev[i], &sio_data, in sensors_nct6775_platform_init()
1269 if (sio_data.access == access_direct) { in sensors_nct6775_platform_init()