sio_data         1371 drivers/hwmon/f71805f.c 	struct f71805f_sio_data *sio_data = dev_get_platdata(&pdev->dev);
sio_data         1395 drivers/hwmon/f71805f.c 	data->name = names[sio_data->kind];
sio_data         1401 drivers/hwmon/f71805f.c 	switch (sio_data->kind) {
sio_data         1407 drivers/hwmon/f71805f.c 		if (sio_data->fnsel1 & 0x01)
sio_data         1409 drivers/hwmon/f71805f.c 		if (sio_data->fnsel1 & 0x02)
sio_data         1506 drivers/hwmon/f71805f.c 				     const struct f71805f_sio_data *sio_data)
sio_data         1533 drivers/hwmon/f71805f.c 	err = platform_device_add_data(pdev, sio_data,
sio_data         1555 drivers/hwmon/f71805f.c 			       struct f71805f_sio_data *sio_data)
sio_data         1577 drivers/hwmon/f71805f.c 		sio_data->kind = f71805f;
sio_data         1580 drivers/hwmon/f71805f.c 		sio_data->kind = f71872f;
sio_data         1581 drivers/hwmon/f71805f.c 		sio_data->fnsel1 = superio_inb(sioaddr, SIO_REG_FNSEL1);
sio_data         1603 drivers/hwmon/f71805f.c 		names[sio_data->kind], *address,
sio_data         1615 drivers/hwmon/f71805f.c 	struct f71805f_sio_data sio_data;
sio_data         1617 drivers/hwmon/f71805f.c 	if (f71805f_find(0x2e, &address, &sio_data)
sio_data         1618 drivers/hwmon/f71805f.c 	 && f71805f_find(0x4e, &address, &sio_data))
sio_data         1626 drivers/hwmon/f71805f.c 	err = f71805f_device_add(address, &sio_data);
sio_data         2332 drivers/hwmon/f71882fg.c 	struct f71882fg_sio_data *sio_data = dev_get_platdata(&pdev->dev);
sio_data         2333 drivers/hwmon/f71882fg.c 	int nr_fans = f71882fg_nr_fans[sio_data->type];
sio_data         2334 drivers/hwmon/f71882fg.c 	int nr_temps = f71882fg_nr_temps[sio_data->type];
sio_data         2345 drivers/hwmon/f71882fg.c 	data->type = sio_data->type;
sio_data         2615 drivers/hwmon/f71882fg.c static int __init f71882fg_find(int sioaddr, struct f71882fg_sio_data *sio_data)
sio_data         2633 drivers/hwmon/f71882fg.c 		sio_data->type = f71808e;
sio_data         2636 drivers/hwmon/f71882fg.c 		sio_data->type = f71808a;
sio_data         2639 drivers/hwmon/f71882fg.c 		sio_data->type = f71858fg;
sio_data         2642 drivers/hwmon/f71882fg.c 		sio_data->type = f71862fg;
sio_data         2645 drivers/hwmon/f71882fg.c 		sio_data->type = f71868a;
sio_data         2648 drivers/hwmon/f71882fg.c 		sio_data->type = f71869;
sio_data         2651 drivers/hwmon/f71882fg.c 		sio_data->type = f71869a;
sio_data         2654 drivers/hwmon/f71882fg.c 		sio_data->type = f71882fg;
sio_data         2657 drivers/hwmon/f71882fg.c 		sio_data->type = f71889fg;
sio_data         2660 drivers/hwmon/f71882fg.c 		sio_data->type = f71889ed;
sio_data         2663 drivers/hwmon/f71882fg.c 		sio_data->type = f71889a;
sio_data         2666 drivers/hwmon/f71882fg.c 		sio_data->type = f8000;
sio_data         2669 drivers/hwmon/f71882fg.c 		sio_data->type = f81768d;
sio_data         2672 drivers/hwmon/f71882fg.c 		sio_data->type = f81865f;
sio_data         2675 drivers/hwmon/f71882fg.c 		sio_data->type = f81866a;
sio_data         2684 drivers/hwmon/f71882fg.c 	if (sio_data->type == f71858fg)
sio_data         2705 drivers/hwmon/f71882fg.c 		f71882fg_names[sio_data->type],	(unsigned int)address,
sio_data         2713 drivers/hwmon/f71882fg.c 				      const struct f71882fg_sio_data *sio_data)
sio_data         2737 drivers/hwmon/f71882fg.c 	err = platform_device_add_data(f71882fg_pdev, sio_data,
sio_data         2762 drivers/hwmon/f71882fg.c 	struct f71882fg_sio_data sio_data;
sio_data         2764 drivers/hwmon/f71882fg.c 	memset(&sio_data, 0, sizeof(sio_data));
sio_data         2766 drivers/hwmon/f71882fg.c 	address = f71882fg_find(0x2e, &sio_data);
sio_data         2768 drivers/hwmon/f71882fg.c 		address = f71882fg_find(0x4e, &sio_data);
sio_data         2776 drivers/hwmon/f71882fg.c 	err = f71882fg_device_add(address, &sio_data);
sio_data         2388 drivers/hwmon/it87.c 			    struct it87_sio_data *sio_data)
sio_data         2404 drivers/hwmon/it87.c 		sio_data->type = it87;
sio_data         2407 drivers/hwmon/it87.c 		sio_data->type = it8712;
sio_data         2411 drivers/hwmon/it87.c 		sio_data->type = it8716;
sio_data         2414 drivers/hwmon/it87.c 		sio_data->type = it8718;
sio_data         2417 drivers/hwmon/it87.c 		sio_data->type = it8720;
sio_data         2420 drivers/hwmon/it87.c 		sio_data->type = it8721;
sio_data         2423 drivers/hwmon/it87.c 		sio_data->type = it8728;
sio_data         2426 drivers/hwmon/it87.c 		sio_data->type = it8732;
sio_data         2429 drivers/hwmon/it87.c 		sio_data->type = it8792;
sio_data         2432 drivers/hwmon/it87.c 		sio_data->type = it8771;
sio_data         2435 drivers/hwmon/it87.c 		sio_data->type = it8772;
sio_data         2438 drivers/hwmon/it87.c 		sio_data->type = it8781;
sio_data         2441 drivers/hwmon/it87.c 		sio_data->type = it8782;
sio_data         2444 drivers/hwmon/it87.c 		sio_data->type = it8783;
sio_data         2447 drivers/hwmon/it87.c 		sio_data->type = it8786;
sio_data         2450 drivers/hwmon/it87.c 		sio_data->type = it8790;
sio_data         2454 drivers/hwmon/it87.c 		sio_data->type = it8603;
sio_data         2457 drivers/hwmon/it87.c 		sio_data->type = it8620;
sio_data         2460 drivers/hwmon/it87.c 		sio_data->type = it8622;
sio_data         2463 drivers/hwmon/it87.c 		sio_data->type = it8628;
sio_data         2485 drivers/hwmon/it87.c 	sio_data->sioaddr = sioaddr;
sio_data         2486 drivers/hwmon/it87.c 	sio_data->revision = superio_inb(sioaddr, DEVREV) & 0x0f;
sio_data         2488 drivers/hwmon/it87.c 		it87_devices[sio_data->type].suffix,
sio_data         2489 drivers/hwmon/it87.c 		*address, sio_data->revision);
sio_data         2491 drivers/hwmon/it87.c 	config = &it87_devices[sio_data->type];
sio_data         2495 drivers/hwmon/it87.c 		sio_data->internal |= BIT(1);
sio_data         2498 drivers/hwmon/it87.c 	sio_data->internal |= BIT(2);
sio_data         2502 drivers/hwmon/it87.c 		sio_data->internal |= BIT(3); /* in9 is AVCC */
sio_data         2504 drivers/hwmon/it87.c 		sio_data->skip_in |= BIT(9);
sio_data         2507 drivers/hwmon/it87.c 		sio_data->skip_pwm |= BIT(3) | BIT(4) | BIT(5);
sio_data         2509 drivers/hwmon/it87.c 		sio_data->skip_pwm |= BIT(5);
sio_data         2512 drivers/hwmon/it87.c 		sio_data->skip_vid = 1;
sio_data         2515 drivers/hwmon/it87.c 	if (sio_data->type == it87) {
sio_data         2518 drivers/hwmon/it87.c 		sio_data->beep_pin = superio_inb(sioaddr,
sio_data         2520 drivers/hwmon/it87.c 	} else if (sio_data->type == it8783) {
sio_data         2533 drivers/hwmon/it87.c 			sio_data->skip_fan |= BIT(2);
sio_data         2536 drivers/hwmon/it87.c 			sio_data->skip_pwm |= BIT(2);
sio_data         2540 drivers/hwmon/it87.c 			sio_data->skip_fan |= BIT(1);
sio_data         2542 drivers/hwmon/it87.c 			sio_data->skip_pwm |= BIT(1);
sio_data         2546 drivers/hwmon/it87.c 			sio_data->skip_in |= BIT(5); /* No VIN5 */
sio_data         2550 drivers/hwmon/it87.c 			sio_data->skip_in |= BIT(6); /* No VIN6 */
sio_data         2574 drivers/hwmon/it87.c 				sio_data->need_in7_reroute = true;
sio_data         2582 drivers/hwmon/it87.c 			sio_data->internal |= BIT(0);
sio_data         2584 drivers/hwmon/it87.c 			sio_data->internal |= BIT(1);
sio_data         2586 drivers/hwmon/it87.c 		sio_data->beep_pin = superio_inb(sioaddr,
sio_data         2588 drivers/hwmon/it87.c 	} else if (sio_data->type == it8603) {
sio_data         2597 drivers/hwmon/it87.c 			sio_data->skip_pwm |= BIT(2);
sio_data         2599 drivers/hwmon/it87.c 			sio_data->skip_fan |= BIT(2);
sio_data         2604 drivers/hwmon/it87.c 			sio_data->skip_pwm |= BIT(1);
sio_data         2606 drivers/hwmon/it87.c 			sio_data->skip_fan |= BIT(1);
sio_data         2608 drivers/hwmon/it87.c 		sio_data->skip_in |= BIT(5); /* No VIN5 */
sio_data         2609 drivers/hwmon/it87.c 		sio_data->skip_in |= BIT(6); /* No VIN6 */
sio_data         2611 drivers/hwmon/it87.c 		sio_data->beep_pin = superio_inb(sioaddr,
sio_data         2613 drivers/hwmon/it87.c 	} else if (sio_data->type == it8620 || sio_data->type == it8628) {
sio_data         2621 drivers/hwmon/it87.c 			sio_data->skip_pwm |= BIT(4);
sio_data         2626 drivers/hwmon/it87.c 			sio_data->skip_fan |= BIT(3);
sio_data         2628 drivers/hwmon/it87.c 			sio_data->skip_fan |= BIT(4);
sio_data         2633 drivers/hwmon/it87.c 			sio_data->skip_pwm |= BIT(2);
sio_data         2635 drivers/hwmon/it87.c 			sio_data->skip_fan |= BIT(2);
sio_data         2640 drivers/hwmon/it87.c 			sio_data->skip_pwm |= BIT(3);
sio_data         2645 drivers/hwmon/it87.c 			sio_data->skip_pwm |= BIT(1);
sio_data         2647 drivers/hwmon/it87.c 			sio_data->skip_fan |= BIT(1);
sio_data         2650 drivers/hwmon/it87.c 			sio_data->skip_pwm |= BIT(5);
sio_data         2651 drivers/hwmon/it87.c 			sio_data->skip_fan |= BIT(5);
sio_data         2657 drivers/hwmon/it87.c 			sio_data->internal |= BIT(0);
sio_data         2659 drivers/hwmon/it87.c 			sio_data->skip_in |= BIT(9);
sio_data         2661 drivers/hwmon/it87.c 		sio_data->beep_pin = superio_inb(sioaddr,
sio_data         2663 drivers/hwmon/it87.c 	} else if (sio_data->type == it8622) {
sio_data         2671 drivers/hwmon/it87.c 			sio_data->skip_fan |= BIT(3);
sio_data         2673 drivers/hwmon/it87.c 			sio_data->skip_pwm |= BIT(3);
sio_data         2678 drivers/hwmon/it87.c 			sio_data->skip_pwm |= BIT(2);
sio_data         2680 drivers/hwmon/it87.c 			sio_data->skip_fan |= BIT(2);
sio_data         2682 drivers/hwmon/it87.c 			sio_data->skip_pwm |= BIT(4);
sio_data         2684 drivers/hwmon/it87.c 			sio_data->skip_fan |= BIT(4);
sio_data         2689 drivers/hwmon/it87.c 			sio_data->skip_pwm |= BIT(1);
sio_data         2691 drivers/hwmon/it87.c 			sio_data->skip_fan |= BIT(1);
sio_data         2696 drivers/hwmon/it87.c 			sio_data->skip_in |= BIT(9);
sio_data         2698 drivers/hwmon/it87.c 		sio_data->beep_pin = superio_inb(sioaddr,
sio_data         2709 drivers/hwmon/it87.c 			switch (sio_data->type) {
sio_data         2712 drivers/hwmon/it87.c 					sio_data->skip_fan |= BIT(3);
sio_data         2714 drivers/hwmon/it87.c 					sio_data->skip_fan |= BIT(4);
sio_data         2720 drivers/hwmon/it87.c 					sio_data->skip_fan |= BIT(3);
sio_data         2722 drivers/hwmon/it87.c 					sio_data->skip_fan |= BIT(4);
sio_data         2730 drivers/hwmon/it87.c 		if (!sio_data->skip_vid) {
sio_data         2734 drivers/hwmon/it87.c 				sio_data->skip_vid = 1;
sio_data         2740 drivers/hwmon/it87.c 			sio_data->skip_pwm |= BIT(2);
sio_data         2742 drivers/hwmon/it87.c 			sio_data->skip_fan |= BIT(2);
sio_data         2747 drivers/hwmon/it87.c 			sio_data->skip_pwm |= BIT(1);
sio_data         2749 drivers/hwmon/it87.c 			sio_data->skip_fan |= BIT(1);
sio_data         2751 drivers/hwmon/it87.c 		if ((sio_data->type == it8718 || sio_data->type == it8720) &&
sio_data         2752 drivers/hwmon/it87.c 		    !(sio_data->skip_vid))
sio_data         2753 drivers/hwmon/it87.c 			sio_data->vid_value = superio_inb(sioaddr,
sio_data         2758 drivers/hwmon/it87.c 		uart6 = sio_data->type == it8782 && (reg & BIT(2));
sio_data         2774 drivers/hwmon/it87.c 		if ((sio_data->type == it8720 || uart6) && !(reg & BIT(1))) {
sio_data         2777 drivers/hwmon/it87.c 			sio_data->need_in7_reroute = true;
sio_data         2781 drivers/hwmon/it87.c 			sio_data->internal |= BIT(0);
sio_data         2783 drivers/hwmon/it87.c 			sio_data->internal |= BIT(1);
sio_data         2795 drivers/hwmon/it87.c 			sio_data->skip_in |= BIT(5) | BIT(6);
sio_data         2796 drivers/hwmon/it87.c 			sio_data->skip_temp |= BIT(2);
sio_data         2799 drivers/hwmon/it87.c 		sio_data->beep_pin = superio_inb(sioaddr,
sio_data         2802 drivers/hwmon/it87.c 	if (sio_data->beep_pin)
sio_data         2820 drivers/hwmon/it87.c 			sio_data->skip_pwm = BIT(1);
sio_data         2867 drivers/hwmon/it87.c 	struct it87_sio_data *sio_data = dev_get_platdata(&pdev->dev);
sio_data         2871 drivers/hwmon/it87.c 	mask = 0x70 & ~(sio_data->skip_fan << 4);
sio_data         2909 drivers/hwmon/it87.c 	struct it87_sio_data *sio_data = dev_get_platdata(&pdev->dev);
sio_data         2963 drivers/hwmon/it87.c 	data->has_fan &= ~sio_data->skip_fan;
sio_data         2970 drivers/hwmon/it87.c 			sio_data->skip_pwm |= BIT(4);
sio_data         2972 drivers/hwmon/it87.c 			sio_data->skip_pwm |= BIT(5);
sio_data         3039 drivers/hwmon/it87.c 	struct it87_sio_data *sio_data = dev_get_platdata(dev);
sio_data         3057 drivers/hwmon/it87.c 	data->sioaddr = sio_data->sioaddr;
sio_data         3058 drivers/hwmon/it87.c 	data->type = sio_data->type;
sio_data         3059 drivers/hwmon/it87.c 	data->features = it87_devices[sio_data->type].features;
sio_data         3060 drivers/hwmon/it87.c 	data->peci_mask = it87_devices[sio_data->type].peci_mask;
sio_data         3061 drivers/hwmon/it87.c 	data->old_peci_mask = it87_devices[sio_data->type].old_peci_mask;
sio_data         3069 drivers/hwmon/it87.c 		if (sio_data->revision >= 0x03) {
sio_data         3075 drivers/hwmon/it87.c 		if (sio_data->revision >= 0x08) {
sio_data         3102 drivers/hwmon/it87.c 		if (sio_data->internal & BIT(0))
sio_data         3104 drivers/hwmon/it87.c 		if (sio_data->internal & BIT(1))
sio_data         3106 drivers/hwmon/it87.c 		if (sio_data->internal & BIT(2))
sio_data         3108 drivers/hwmon/it87.c 		if (sio_data->internal & BIT(3))
sio_data         3110 drivers/hwmon/it87.c 	} else if (sio_data->type == it8781 || sio_data->type == it8782 ||
sio_data         3111 drivers/hwmon/it87.c 		   sio_data->type == it8783) {
sio_data         3112 drivers/hwmon/it87.c 		if (sio_data->internal & BIT(0))
sio_data         3114 drivers/hwmon/it87.c 		if (sio_data->internal & BIT(1))
sio_data         3119 drivers/hwmon/it87.c 	if (sio_data->skip_temp & BIT(2)) {
sio_data         3120 drivers/hwmon/it87.c 		if (sio_data->type == it8782 &&
sio_data         3125 drivers/hwmon/it87.c 	data->in_internal = sio_data->internal;
sio_data         3126 drivers/hwmon/it87.c 	data->need_in7_reroute = sio_data->need_in7_reroute;
sio_data         3127 drivers/hwmon/it87.c 	data->has_in = 0x3ff & ~sio_data->skip_in;
sio_data         3149 drivers/hwmon/it87.c 	data->has_beep = !!sio_data->beep_pin;
sio_data         3154 drivers/hwmon/it87.c 	if (!sio_data->skip_vid) {
sio_data         3158 drivers/hwmon/it87.c 		data->vid = sio_data->vid_value;
sio_data         3169 drivers/hwmon/it87.c 		data->has_pwm &= ~sio_data->skip_pwm;
sio_data         3177 drivers/hwmon/it87.c 					it87_devices[sio_data->type].name,
sio_data         3252 drivers/hwmon/it87.c 				  const struct it87_sio_data *sio_data)
sio_data         3277 drivers/hwmon/it87.c 	err = platform_device_add_data(pdev, sio_data,
sio_data         3301 drivers/hwmon/it87.c 	struct it87_sio_data sio_data;
sio_data         3311 drivers/hwmon/it87.c 		memset(&sio_data, 0, sizeof(struct it87_sio_data));
sio_data         3313 drivers/hwmon/it87.c 		err = it87_find(sioaddr[i], &isa_address[i], &sio_data);
sio_data         3323 drivers/hwmon/it87.c 		err = it87_device_add(i, isa_address[i], &sio_data);
sio_data         3333 drivers/hwmon/it87.c 		if (sio_data.type == it87)
sio_data         1191 drivers/hwmon/nct6683.c 	struct nct6683_sio_data *sio_data = dev->platform_data;
sio_data         1207 drivers/hwmon/nct6683.c 	data->kind = sio_data->kind;
sio_data         1208 drivers/hwmon/nct6683.c 	data->sioreg = sio_data->sioreg;
sio_data         1338 drivers/hwmon/nct6683.c static int __init nct6683_find(int sioaddr, struct nct6683_sio_data *sio_data)
sio_data         1353 drivers/hwmon/nct6683.c 		sio_data->kind = nct6683;
sio_data         1380 drivers/hwmon/nct6683.c 		nct6683_chip_names[sio_data->kind], sioaddr, addr);
sio_data         1381 drivers/hwmon/nct6683.c 	sio_data->sioreg = sioaddr;
sio_data         1400 drivers/hwmon/nct6683.c 	struct nct6683_sio_data sio_data;
sio_data         1419 drivers/hwmon/nct6683.c 		address = nct6683_find(sioaddr[i], &sio_data);
sio_data         1431 drivers/hwmon/nct6683.c 		err = platform_device_add_data(pdev[i], &sio_data,
sio_data         3794 drivers/hwmon/nct6775.c 	struct nct6775_sio_data *sio_data = dev_get_platdata(dev);
sio_data         3818 drivers/hwmon/nct6775.c 	data->kind = sio_data->kind;
sio_data         3819 drivers/hwmon/nct6775.c 	data->sioreg = sio_data->sioreg;
sio_data         4505 drivers/hwmon/nct6775.c 	err = superio_enter(sio_data->sioreg);
sio_data         4509 drivers/hwmon/nct6775.c 	cr2a = superio_inb(sio_data->sioreg, 0x2a);
sio_data         4535 drivers/hwmon/nct6775.c 		superio_select(sio_data->sioreg, NCT6775_LD_VID);
sio_data         4536 drivers/hwmon/nct6775.c 		data->vid = superio_inb(sio_data->sioreg, 0xe3);
sio_data         4543 drivers/hwmon/nct6775.c 		superio_select(sio_data->sioreg, NCT6775_LD_HWM);
sio_data         4544 drivers/hwmon/nct6775.c 		tmp = superio_inb(sio_data->sioreg,
sio_data         4568 drivers/hwmon/nct6775.c 		superio_outb(sio_data->sioreg, NCT6775_REG_CR_FAN_DEBOUNCE,
sio_data         4576 drivers/hwmon/nct6775.c 	superio_exit(sio_data->sioreg);
sio_data         4725 drivers/hwmon/nct6775.c static int __init nct6775_find(int sioaddr, struct nct6775_sio_data *sio_data)
sio_data         4742 drivers/hwmon/nct6775.c 		sio_data->kind = nct6106;
sio_data         4745 drivers/hwmon/nct6775.c 		sio_data->kind = nct6116;
sio_data         4748 drivers/hwmon/nct6775.c 		sio_data->kind = nct6775;
sio_data         4751 drivers/hwmon/nct6775.c 		sio_data->kind = nct6776;
sio_data         4754 drivers/hwmon/nct6775.c 		sio_data->kind = nct6779;
sio_data         4757 drivers/hwmon/nct6775.c 		sio_data->kind = nct6791;
sio_data         4760 drivers/hwmon/nct6775.c 		sio_data->kind = nct6792;
sio_data         4763 drivers/hwmon/nct6775.c 		sio_data->kind = nct6793;
sio_data         4766 drivers/hwmon/nct6775.c 		sio_data->kind = nct6795;
sio_data         4769 drivers/hwmon/nct6775.c 		sio_data->kind = nct6796;
sio_data         4772 drivers/hwmon/nct6775.c 		sio_data->kind = nct6797;
sio_data         4775 drivers/hwmon/nct6775.c 		sio_data->kind = nct6798;
sio_data         4802 drivers/hwmon/nct6775.c 	if (sio_data->kind == nct6791 || sio_data->kind == nct6792 ||
sio_data         4803 drivers/hwmon/nct6775.c 	    sio_data->kind == nct6793 || sio_data->kind == nct6795 ||
sio_data         4804 drivers/hwmon/nct6775.c 	    sio_data->kind == nct6796 || sio_data->kind == nct6797 ||
sio_data         4805 drivers/hwmon/nct6775.c 	    sio_data->kind == nct6798)
sio_data         4810 drivers/hwmon/nct6775.c 		nct6775_sio_names[sio_data->kind], sioaddr, addr);
sio_data         4811 drivers/hwmon/nct6775.c 	sio_data->sioreg = sioaddr;
sio_data         4830 drivers/hwmon/nct6775.c 	struct nct6775_sio_data sio_data;
sio_data         4845 drivers/hwmon/nct6775.c 		address = nct6775_find(sioaddr[i], &sio_data);
sio_data         4857 drivers/hwmon/nct6775.c 		err = platform_device_add_data(pdev[i], &sio_data,
sio_data          961 drivers/hwmon/pc87427.c 	struct pc87427_sio_data *sio_data = dev_get_platdata(dev);
sio_data          973 drivers/hwmon/pc87427.c 		if (!(sio_data->has_fanin & (1 << i)))	/* Not wired */
sio_data          984 drivers/hwmon/pc87427.c 			if (!(sio_data->has_fanin & (1 << i)))	/* Not wired */
sio_data          990 drivers/hwmon/pc87427.c 		data->fan_enabled = sio_data->has_fanin;
sio_data          995 drivers/hwmon/pc87427.c 		if (!(sio_data->has_fanout & (1 << i)))	/* Not wired */
sio_data         1053 drivers/hwmon/pc87427.c 	struct pc87427_sio_data *sio_data = dev_get_platdata(&pdev->dev);
sio_data         1062 drivers/hwmon/pc87427.c 	data->address[0] = sio_data->address[0];
sio_data         1063 drivers/hwmon/pc87427.c 	data->address[1] = sio_data->address[1];
sio_data         1137 drivers/hwmon/pc87427.c static int __init pc87427_device_add(const struct pc87427_sio_data *sio_data)
sio_data         1147 drivers/hwmon/pc87427.c 		if (!sio_data->address[i])
sio_data         1149 drivers/hwmon/pc87427.c 		res[res_count].start = sio_data->address[i];
sio_data         1150 drivers/hwmon/pc87427.c 		res[res_count].end = sio_data->address[i] + REGION_LENGTH - 1;
sio_data         1173 drivers/hwmon/pc87427.c 	err = platform_device_add_data(pdev, sio_data,
sio_data         1194 drivers/hwmon/pc87427.c static int __init pc87427_find(int sioaddr, struct pc87427_sio_data *sio_data)
sio_data         1212 drivers/hwmon/pc87427.c 		sio_data->address[i] = 0;
sio_data         1237 drivers/hwmon/pc87427.c 		sio_data->address[i] = val;
sio_data         1241 drivers/hwmon/pc87427.c 	if (!sio_data->address[0] && !sio_data->address[1]) {
sio_data         1247 drivers/hwmon/pc87427.c 	sio_data->has_fanin = (1 << 2) | (1 << 3);	/* FANIN2, FANIN3 */
sio_data         1251 drivers/hwmon/pc87427.c 		sio_data->has_fanin |= (1 << 0);	/* FANIN0 */
sio_data         1253 drivers/hwmon/pc87427.c 		sio_data->has_fanin |= (1 << 4);	/* FANIN4 */
sio_data         1257 drivers/hwmon/pc87427.c 		sio_data->has_fanin |= (1 << 1);	/* FANIN1 */
sio_data         1261 drivers/hwmon/pc87427.c 		sio_data->has_fanin |= (1 << 7);	/* FANIN7 */
sio_data         1264 drivers/hwmon/pc87427.c 		sio_data->has_fanin |= (1 << 5);	/* FANIN5 */
sio_data         1267 drivers/hwmon/pc87427.c 		sio_data->has_fanin |= (1 << 6);	/* FANIN6 */
sio_data         1270 drivers/hwmon/pc87427.c 	sio_data->has_fanout = (1 << 0);		/* FANOUT0 */
sio_data         1272 drivers/hwmon/pc87427.c 		sio_data->has_fanout |= (1 << 3);	/* FANOUT3 */
sio_data         1277 drivers/hwmon/pc87427.c 			sio_data->has_fanout |= (1 << 1); /* FANOUT1 */
sio_data         1279 drivers/hwmon/pc87427.c 			sio_data->has_fanout |= (1 << 2); /* FANOUT2 */
sio_data         1285 drivers/hwmon/pc87427.c 		sio_data->has_fanout |= (1 << 1);	/* FANOUT1 */
sio_data         1287 drivers/hwmon/pc87427.c 		sio_data->has_fanout |= (1 << 2);	/* FANOUT2 */
sio_data         1297 drivers/hwmon/pc87427.c 	struct pc87427_sio_data sio_data;
sio_data         1299 drivers/hwmon/pc87427.c 	if (pc87427_find(0x2e, &sio_data)
sio_data         1300 drivers/hwmon/pc87427.c 	 && pc87427_find(0x4e, &sio_data))
sio_data         1308 drivers/hwmon/pc87427.c 	err = pc87427_device_add(&sio_data);
sio_data          528 drivers/hwmon/smsc47m1.c static int __init smsc47m1_find(struct smsc47m1_sio_data *sio_data)
sio_data          557 drivers/hwmon/smsc47m1.c 		sio_data->type = smsc47m1;
sio_data          561 drivers/hwmon/smsc47m1.c 		sio_data->type = smsc47m1;
sio_data          565 drivers/hwmon/smsc47m1.c 		sio_data->type = smsc47m1;
sio_data          569 drivers/hwmon/smsc47m1.c 		sio_data->type = smsc47m1;
sio_data          579 drivers/hwmon/smsc47m1.c 		sio_data->type = smsc47m2;
sio_data          599 drivers/hwmon/smsc47m1.c 	sio_data->activate = superio_inb(SUPERIO_REG_ACT);
sio_data          600 drivers/hwmon/smsc47m1.c 	if ((sio_data->activate & 0x01) == 0) {
sio_data          602 drivers/hwmon/smsc47m1.c 		superio_outb(SUPERIO_REG_ACT, sio_data->activate | 0x01);
sio_data          610 drivers/hwmon/smsc47m1.c static void smsc47m1_restore(const struct smsc47m1_sio_data *sio_data)
sio_data          612 drivers/hwmon/smsc47m1.c 	if ((sio_data->activate & 0x01) == 0) {
sio_data          616 drivers/hwmon/smsc47m1.c 			superio_outb(SUPERIO_REG_ACT, sio_data->activate);
sio_data          710 drivers/hwmon/smsc47m1.c 	struct smsc47m1_sio_data *sio_data = dev_get_platdata(dev);
sio_data          722 drivers/hwmon/smsc47m1.c 	err = smsc47m1_handle_resources(res->start, sio_data->type,
sio_data          732 drivers/hwmon/smsc47m1.c 	data->type = sio_data->type;
sio_data          733 drivers/hwmon/smsc47m1.c 	data->name = names[sio_data->type];
sio_data          861 drivers/hwmon/smsc47m1.c 				      const struct smsc47m1_sio_data *sio_data)
sio_data          871 drivers/hwmon/smsc47m1.c 	err = smsc47m1_handle_resources(address, sio_data->type, CHECK, NULL);
sio_data          888 drivers/hwmon/smsc47m1.c 	err = platform_device_add_data(pdev, sio_data,
sio_data          913 drivers/hwmon/smsc47m1.c 	struct smsc47m1_sio_data sio_data;
sio_data          915 drivers/hwmon/smsc47m1.c 	err = smsc47m1_find(&sio_data);
sio_data          921 drivers/hwmon/smsc47m1.c 	err = smsc47m1_device_add(address, &sio_data);
sio_data          933 drivers/hwmon/smsc47m1.c 	smsc47m1_restore(&sio_data);
sio_data          669 drivers/hwmon/w83627ehf.c 	struct w83627ehf_sio_data *sio_data = dev_get_platdata(dev);
sio_data          671 drivers/hwmon/w83627ehf.c 	if (sio_data->kind == nct6776)
sio_data          673 drivers/hwmon/w83627ehf.c 	else if (sio_data->kind == nct6775)
sio_data          720 drivers/hwmon/w83627ehf.c 	struct w83627ehf_sio_data *sio_data = dev_get_platdata(dev);
sio_data          722 drivers/hwmon/w83627ehf.c 	if (sio_data->kind == nct6776)
sio_data          724 drivers/hwmon/w83627ehf.c 	else if (sio_data->kind == nct6775)
sio_data          777 drivers/hwmon/w83627ehf.c 	struct w83627ehf_sio_data *sio_data = dev_get_platdata(dev);
sio_data          779 drivers/hwmon/w83627ehf.c 	if (sio_data->kind == nct6775 || sio_data->kind == nct6776)
sio_data          788 drivers/hwmon/w83627ehf.c 	struct w83627ehf_sio_data *sio_data = dev_get_platdata(dev);
sio_data          833 drivers/hwmon/w83627ehf.c 			    && (reg >= 0xff || (sio_data->kind == nct6775
sio_data         1388 drivers/hwmon/w83627ehf.c 	struct w83627ehf_sio_data *sio_data = dev_get_platdata(dev);
sio_data         1402 drivers/hwmon/w83627ehf.c 	if (sio_data->kind == nct6776 && nr && val != 1)
sio_data         1444 drivers/hwmon/w83627ehf.c 	struct w83627ehf_sio_data *sio_data = dev_get_platdata(dev);
sio_data         1458 drivers/hwmon/w83627ehf.c 	if (sio_data->kind == nct6776 && val == 4)
sio_data         1463 drivers/hwmon/w83627ehf.c 	if (sio_data->kind == nct6775 || sio_data->kind == nct6776) {
sio_data         1523 drivers/hwmon/w83627ehf.c 	struct w83627ehf_sio_data *sio_data = dev_get_platdata(dev);
sio_data         1538 drivers/hwmon/w83627ehf.c 	if (sio_data->kind == nct6775 || sio_data->kind == nct6776) {
sio_data         1540 drivers/hwmon/w83627ehf.c 		if (sio_data->kind == nct6776 && val > 7)
sio_data         1954 drivers/hwmon/w83627ehf.c w83627ehf_check_fan_inputs(const struct w83627ehf_sio_data *sio_data,
sio_data         1960 drivers/hwmon/w83627ehf.c 	if (sio_data->kind == w83627uhg) {
sio_data         1967 drivers/hwmon/w83627ehf.c 	if (sio_data->kind == nct6775) {
sio_data         1970 drivers/hwmon/w83627ehf.c 		fan4pin = !(superio_inb(sio_data->sioreg, 0x2A) & 0x80);
sio_data         1973 drivers/hwmon/w83627ehf.c 	} else if (sio_data->kind == nct6776) {
sio_data         1974 drivers/hwmon/w83627ehf.c 		bool gpok = superio_inb(sio_data->sioreg, 0x27) & 0x80;
sio_data         1976 drivers/hwmon/w83627ehf.c 		superio_select(sio_data->sioreg, W83627EHF_LD_HWM);
sio_data         1977 drivers/hwmon/w83627ehf.c 		regval = superio_inb(sio_data->sioreg, SIO_REG_ENABLE);
sio_data         1982 drivers/hwmon/w83627ehf.c 			fan3pin = !(superio_inb(sio_data->sioreg, 0x24) & 0x40);
sio_data         1987 drivers/hwmon/w83627ehf.c 			fan4pin = !!(superio_inb(sio_data->sioreg, 0x1C) & 0x01);
sio_data         1992 drivers/hwmon/w83627ehf.c 			fan5pin = !!(superio_inb(sio_data->sioreg, 0x1C) & 0x02);
sio_data         1995 drivers/hwmon/w83627ehf.c 	} else if (sio_data->kind == w83667hg || sio_data->kind == w83667hg_b) {
sio_data         1997 drivers/hwmon/w83627ehf.c 		fan4pin = superio_inb(sio_data->sioreg, 0x27) & 0x40;
sio_data         1998 drivers/hwmon/w83627ehf.c 		fan5pin = superio_inb(sio_data->sioreg, 0x27) & 0x20;
sio_data         2002 drivers/hwmon/w83627ehf.c 		fan4pin = !(superio_inb(sio_data->sioreg, 0x29) & 0x06);
sio_data         2003 drivers/hwmon/w83627ehf.c 		fan5pin = !(superio_inb(sio_data->sioreg, 0x24) & 0x02);
sio_data         2011 drivers/hwmon/w83627ehf.c 	if (sio_data->kind == nct6775 || sio_data->kind == nct6776) {
sio_data         2041 drivers/hwmon/w83627ehf.c 	struct w83627ehf_sio_data *sio_data = dev_get_platdata(dev);
sio_data         2066 drivers/hwmon/w83627ehf.c 	data->name = w83627ehf_device_names[sio_data->kind];
sio_data         2071 drivers/hwmon/w83627ehf.c 	data->in_num = (sio_data->kind == w83627ehf) ? 10 : 9;
sio_data         2073 drivers/hwmon/w83627ehf.c 	switch (sio_data->kind) {
sio_data         2092 drivers/hwmon/w83627ehf.c 	if (sio_data->kind == nct6775 || sio_data->kind == nct6776) {
sio_data         2135 drivers/hwmon/w83627ehf.c 		if (sio_data->kind == nct6776) {
sio_data         2168 drivers/hwmon/w83627ehf.c 	} else if (sio_data->kind == w83667hg_b) {
sio_data         2215 drivers/hwmon/w83627ehf.c 	} else if (sio_data->kind == w83627uhg) {
sio_data         2261 drivers/hwmon/w83627ehf.c 		if (sio_data->kind == w83667hg) {
sio_data         2278 drivers/hwmon/w83627ehf.c 	if (sio_data->kind == nct6775) {
sio_data         2291 drivers/hwmon/w83627ehf.c 	} else if (sio_data->kind == nct6776) {
sio_data         2302 drivers/hwmon/w83627ehf.c 	} else if (sio_data->kind == w83667hg_b) {
sio_data         2335 drivers/hwmon/w83627ehf.c 	if (sio_data->kind == w83627uhg)
sio_data         2341 drivers/hwmon/w83627ehf.c 	w83627ehf_init_device(data, sio_data->kind);
sio_data         2345 drivers/hwmon/w83627ehf.c 	err = superio_enter(sio_data->sioreg);
sio_data         2350 drivers/hwmon/w83627ehf.c 	if (sio_data->kind == w83667hg || sio_data->kind == w83667hg_b ||
sio_data         2351 drivers/hwmon/w83627ehf.c 	    sio_data->kind == nct6775 || sio_data->kind == nct6776) {
sio_data         2357 drivers/hwmon/w83627ehf.c 		superio_select(sio_data->sioreg, W83667HG_LD_VID);
sio_data         2358 drivers/hwmon/w83627ehf.c 		data->vid = superio_inb(sio_data->sioreg, 0xe3);
sio_data         2361 drivers/hwmon/w83627ehf.c 			superio_exit(sio_data->sioreg);
sio_data         2364 drivers/hwmon/w83627ehf.c 	} else if (sio_data->kind != w83627uhg) {
sio_data         2365 drivers/hwmon/w83627ehf.c 		superio_select(sio_data->sioreg, W83627EHF_LD_HWM);
sio_data         2366 drivers/hwmon/w83627ehf.c 		if (superio_inb(sio_data->sioreg, SIO_REG_VID_CTRL) & 0x80) {
sio_data         2374 drivers/hwmon/w83627ehf.c 			if (sio_data->kind == w83627ehf) {
sio_data         2375 drivers/hwmon/w83627ehf.c 				en_vrm10 = superio_inb(sio_data->sioreg,
sio_data         2380 drivers/hwmon/w83627ehf.c 					superio_outb(sio_data->sioreg,
sio_data         2387 drivers/hwmon/w83627ehf.c 					superio_outb(sio_data->sioreg,
sio_data         2393 drivers/hwmon/w83627ehf.c 			data->vid = superio_inb(sio_data->sioreg,
sio_data         2395 drivers/hwmon/w83627ehf.c 			if (sio_data->kind == w83627ehf) /* 6 VID pins only */
sio_data         2400 drivers/hwmon/w83627ehf.c 				superio_exit(sio_data->sioreg);
sio_data         2410 drivers/hwmon/w83627ehf.c 	    (sio_data->kind == nct6775 || sio_data->kind == nct6776)) {
sio_data         2413 drivers/hwmon/w83627ehf.c 		superio_select(sio_data->sioreg, W83627EHF_LD_HWM);
sio_data         2414 drivers/hwmon/w83627ehf.c 		tmp = superio_inb(sio_data->sioreg, NCT6775_REG_FAN_DEBOUNCE);
sio_data         2415 drivers/hwmon/w83627ehf.c 		if (sio_data->kind == nct6776)
sio_data         2416 drivers/hwmon/w83627ehf.c 			superio_outb(sio_data->sioreg, NCT6775_REG_FAN_DEBOUNCE,
sio_data         2419 drivers/hwmon/w83627ehf.c 			superio_outb(sio_data->sioreg, NCT6775_REG_FAN_DEBOUNCE,
sio_data         2424 drivers/hwmon/w83627ehf.c 	w83627ehf_check_fan_inputs(sio_data, data);
sio_data         2426 drivers/hwmon/w83627ehf.c 	superio_exit(sio_data->sioreg);
sio_data         2489 drivers/hwmon/w83627ehf.c 			if (sio_data->kind != nct6776) {
sio_data         2561 drivers/hwmon/w83627ehf.c 	if (sio_data->kind == nct6776) {
sio_data         2602 drivers/hwmon/w83627ehf.c 	struct w83627ehf_sio_data *sio_data = dev_get_platdata(dev);
sio_data         2606 drivers/hwmon/w83627ehf.c 	if (sio_data->kind == nct6775) {
sio_data         2618 drivers/hwmon/w83627ehf.c 	struct w83627ehf_sio_data *sio_data = dev_get_platdata(dev);
sio_data         2663 drivers/hwmon/w83627ehf.c 	if (sio_data->kind == nct6775) {
sio_data         2698 drivers/hwmon/w83627ehf.c 				 struct w83627ehf_sio_data *sio_data)
sio_data         2725 drivers/hwmon/w83627ehf.c 		sio_data->kind = w83627ehf;
sio_data         2729 drivers/hwmon/w83627ehf.c 		sio_data->kind = w83627ehf;
sio_data         2733 drivers/hwmon/w83627ehf.c 		sio_data->kind = w83627dhg;
sio_data         2737 drivers/hwmon/w83627ehf.c 		sio_data->kind = w83627dhg_p;
sio_data         2741 drivers/hwmon/w83627ehf.c 		sio_data->kind = w83627uhg;
sio_data         2745 drivers/hwmon/w83627ehf.c 		sio_data->kind = w83667hg;
sio_data         2749 drivers/hwmon/w83627ehf.c 		sio_data->kind = w83667hg_b;
sio_data         2753 drivers/hwmon/w83627ehf.c 		sio_data->kind = nct6775;
sio_data         2757 drivers/hwmon/w83627ehf.c 		sio_data->kind = nct6776;
sio_data         2787 drivers/hwmon/w83627ehf.c 	sio_data->sioreg = sioaddr;
sio_data         2805 drivers/hwmon/w83627ehf.c 	struct w83627ehf_sio_data sio_data;
sio_data         2814 drivers/hwmon/w83627ehf.c 	if (w83627ehf_find(0x2e, &address, &sio_data) &&
sio_data         2815 drivers/hwmon/w83627ehf.c 	    w83627ehf_find(0x4e, &address, &sio_data))
sio_data         2829 drivers/hwmon/w83627ehf.c 	err = platform_device_add_data(pdev, &sio_data,
sio_data         1248 drivers/hwmon/w83627hf.c 				struct w83627hf_sio_data *sio_data)
sio_data         1261 drivers/hwmon/w83627hf.c 	sio_data->sioaddr = sioaddr;
sio_data         1262 drivers/hwmon/w83627hf.c 	err = superio_enter(sio_data);
sio_data         1267 drivers/hwmon/w83627hf.c 	val = force_id ? force_id : superio_inb(sio_data, DEVID);
sio_data         1270 drivers/hwmon/w83627hf.c 		sio_data->type = w83627hf;
sio_data         1273 drivers/hwmon/w83627hf.c 		sio_data->type = w83627thf;
sio_data         1276 drivers/hwmon/w83627hf.c 		sio_data->type = w83697hf;
sio_data         1279 drivers/hwmon/w83627hf.c 		sio_data->type = w83637hf;
sio_data         1282 drivers/hwmon/w83627hf.c 		sio_data->type = w83687thf;
sio_data         1291 drivers/hwmon/w83627hf.c 	superio_select(sio_data, W83627HF_LD_HWM);
sio_data         1292 drivers/hwmon/w83627hf.c 	val = (superio_inb(sio_data, WINB_BASE_REG) << 8) |
sio_data         1293 drivers/hwmon/w83627hf.c 	       superio_inb(sio_data, WINB_BASE_REG + 1);
sio_data         1300 drivers/hwmon/w83627hf.c 	val = superio_inb(sio_data, WINB_ACT_REG);
sio_data         1303 drivers/hwmon/w83627hf.c 		superio_outb(sio_data, WINB_ACT_REG, val | 0x01);
sio_data         1308 drivers/hwmon/w83627hf.c 		names[sio_data->type], *addr);
sio_data         1311 drivers/hwmon/w83627hf.c 	superio_exit(sio_data);
sio_data         1396 drivers/hwmon/w83627hf.c 	struct w83627hf_sio_data *sio_data = dev_get_platdata(dev);
sio_data         1422 drivers/hwmon/w83627hf.c 	data->type = sio_data->type;
sio_data         1423 drivers/hwmon/w83627hf.c 	data->name = names[sio_data->type];
sio_data         1616 drivers/hwmon/w83627hf.c 	struct w83627hf_sio_data *sio_data = dev_get_platdata(&pdev->dev);
sio_data         1619 drivers/hwmon/w83627hf.c 	if (superio_enter(sio_data)) {
sio_data         1630 drivers/hwmon/w83627hf.c 	superio_select(sio_data, W83627HF_LD_GPIO5);
sio_data         1635 drivers/hwmon/w83627hf.c 	if (!(superio_inb(sio_data, W83627THF_GPIO5_EN) & (1<<3))) {
sio_data         1644 drivers/hwmon/w83627hf.c 	sel = superio_inb(sio_data, W83627THF_GPIO5_IOSR) & 0x3f;
sio_data         1652 drivers/hwmon/w83627hf.c 	res = superio_inb(sio_data, W83627THF_GPIO5_DR) & sel;
sio_data         1655 drivers/hwmon/w83627hf.c 	superio_exit(sio_data);
sio_data         1661 drivers/hwmon/w83627hf.c 	struct w83627hf_sio_data *sio_data = dev_get_platdata(&pdev->dev);
sio_data         1664 drivers/hwmon/w83627hf.c 	if (superio_enter(sio_data)) {
sio_data         1675 drivers/hwmon/w83627hf.c 	superio_select(sio_data, W83627HF_LD_HWM);
sio_data         1678 drivers/hwmon/w83627hf.c 	if (!(superio_inb(sio_data, W83687THF_VID_EN) & (1 << 2))) {
sio_data         1684 drivers/hwmon/w83627hf.c 	if (!(superio_inb(sio_data, W83687THF_VID_CFG) & (1 << 4))) {
sio_data         1690 drivers/hwmon/w83627hf.c 	res = superio_inb(sio_data, W83687THF_VID_DATA) & 0x3f;
sio_data         1693 drivers/hwmon/w83627hf.c 	superio_exit(sio_data);
sio_data         1917 drivers/hwmon/w83627hf.c 				      const struct w83627hf_sio_data *sio_data)
sio_data         1944 drivers/hwmon/w83627hf.c 	err = platform_device_add_data(pdev, sio_data,
sio_data         1969 drivers/hwmon/w83627hf.c 	struct w83627hf_sio_data sio_data;
sio_data         1971 drivers/hwmon/w83627hf.c 	if (w83627hf_find(0x2e, &address, &sio_data)
sio_data         1972 drivers/hwmon/w83627hf.c 	 && w83627hf_find(0x4e, &address, &sio_data))
sio_data         1980 drivers/hwmon/w83627hf.c 	err = w83627hf_device_add(address, &sio_data);