if (i2c_smbus_read_byte_data(client, ADC128_REG_BUSY_STATUS) & 0xfc)
                return -ENODEV;
 
-       strlcpy(info->type, "adc128d818", I2C_NAME_SIZE);
+       strscpy(info->type, "adc128d818", I2C_NAME_SIZE);
 
        return 0;
 }
 
 
        pr_debug("Detected chip %s at adapter %d, address 0x%02x.\n",
                 type_name, i2c_adapter_id(adapter), client->addr);
-       strlcpy(info->type, type_name, I2C_NAME_SIZE);
+       strscpy(info->type, type_name, I2C_NAME_SIZE);
 
        return 0;
 }
 
        else
                return -ENODEV;
 
-       strlcpy(info->type, name, I2C_NAME_SIZE);
+       strscpy(info->type, name, I2C_NAME_SIZE);
 
        return 0;
 }
 
                return -ENODEV;
        }
 
-       strlcpy(info->type, "adm1026", I2C_NAME_SIZE);
+       strscpy(info->type, "adm1026", I2C_NAME_SIZE);
 
        return 0;
 }
 
                return -ENODEV;
        }
 
-       strlcpy(info->type, "adm1029", I2C_NAME_SIZE);
+       strscpy(info->type, "adm1029", I2C_NAME_SIZE);
 
        return 0;
 }
 
                return -ENODEV;
        name = (id == 0x30) ? "adm1030" : "adm1031";
 
-       strlcpy(info->type, name, I2C_NAME_SIZE);
+       strscpy(info->type, name, I2C_NAME_SIZE);
 
        return 0;
 }
 
                return -ENODEV;
        }
 
-       strlcpy(info->type, "adt7411", I2C_NAME_SIZE);
+       strscpy(info->type, "adt7411", I2C_NAME_SIZE);
 
        return 0;
 }
 
        if (revision != ADT7462_REVISION)
                return -ENODEV;
 
-       strlcpy(info->type, "adt7462", I2C_NAME_SIZE);
+       strscpy(info->type, "adt7462", I2C_NAME_SIZE);
 
        return 0;
 }
 
                return -ENODEV;
        }
 
-       strlcpy(info->type, name, I2C_NAME_SIZE);
+       strscpy(info->type, name, I2C_NAME_SIZE);
 
        return 0;
 }
 
        }
 
        dev_info(&adapter->dev, "amc6821: chip found at 0x%02x.\n", address);
-       strlcpy(info->type, "amc6821", I2C_NAME_SIZE);
+       strscpy(info->type, "amc6821", I2C_NAME_SIZE);
 
        return 0;
 }
 
        if (val1 != 0x31 || val2 != 0x06)
                return -ENODEV;
 
-       strlcpy(info->type, "asb100", I2C_NAME_SIZE);
+       strscpy(info->type, "asb100", I2C_NAME_SIZE);
 
        return 0;
 }
 
 
                if (company == asc7621_chips[chip_index].company_id &&
                    verstep == asc7621_chips[chip_index].verstep_id) {
-                       strlcpy(info->type, asc7621_chips[chip_index].name,
+                       strscpy(info->type, asc7621_chips[chip_index].name,
                                I2C_NAME_SIZE);
 
                        dev_info(&adapter->dev, "Matched %s at 0x%02x\n",
 
        dev_info(dev, "Found a %s chip at 0x%02x (rev 0x%02x).\n",
                 verstep == SCH5027_VERSTEP ? "SCH5027" : "DME1737",
                 client->addr, verstep);
-       strlcpy(info->type, name, I2C_NAME_SIZE);
+       strscpy(info->type, name, I2C_NAME_SIZE);
 
        return 0;
 }
 
        id = i2c_smbus_read_byte_data(client, THERMAL_PID_REG);
        switch (id) {
        case 0x20:
-               strlcpy(info->type, "emc1402", I2C_NAME_SIZE);
+               strscpy(info->type, "emc1402", I2C_NAME_SIZE);
                break;
        case 0x21:
-               strlcpy(info->type, "emc1403", I2C_NAME_SIZE);
+               strscpy(info->type, "emc1403", I2C_NAME_SIZE);
                break;
        case 0x22:
-               strlcpy(info->type, "emc1422", I2C_NAME_SIZE);
+               strscpy(info->type, "emc1422", I2C_NAME_SIZE);
                break;
        case 0x23:
-               strlcpy(info->type, "emc1423", I2C_NAME_SIZE);
+               strscpy(info->type, "emc1423", I2C_NAME_SIZE);
                break;
        case 0x25:
-               strlcpy(info->type, "emc1404", I2C_NAME_SIZE);
+               strscpy(info->type, "emc1404", I2C_NAME_SIZE);
                break;
        case 0x27:
-               strlcpy(info->type, "emc1424", I2C_NAME_SIZE);
+               strscpy(info->type, "emc1424", I2C_NAME_SIZE);
                break;
        default:
                return -ENODEV;
 
        if ((product != 0x24) && (product != 0x26))
                return -ENODEV;
 
-       strlcpy(info->type, "emc2103", I2C_NAME_SIZE);
+       strscpy(info->type, "emc2103", I2C_NAME_SIZE);
 
        return 0;
 }
 
                return -ENODEV;
        }
 
-       strlcpy(info->type, "emc6w201", I2C_NAME_SIZE);
+       strscpy(info->type, "emc6w201", I2C_NAME_SIZE);
 
        return 0;
 }
 
 
        version = f75375_read8(client, F75375_REG_VERSION);
        dev_info(&adapter->dev, "found %s version: %02X\n", name, version);
-       strlcpy(info->type, name, I2C_NAME_SIZE);
+       strscpy(info->type, name, I2C_NAME_SIZE);
 
        return 0;
 }
 
        else
                return -ENODEV;
 
-       strlcpy(info->type, fschmd_id[kind].name, I2C_NAME_SIZE);
+       strscpy(info->type, fschmd_id[kind].name, I2C_NAME_SIZE);
 
        return 0;
 }
 
        if (val != 0x11)
                return -ENODEV;
 
-       strlcpy(info->type, fts_id[0].name, I2C_NAME_SIZE);
+       strscpy(info->type, fts_id[0].name, I2C_NAME_SIZE);
        info->flags = 0;
        return 0;
 }
 
        if (rev != 0x00 && rev != 0x80)
                return -ENODEV;
 
-       strlcpy(info->type, "gl518sm", I2C_NAME_SIZE);
+       strscpy(info->type, "gl518sm", I2C_NAME_SIZE);
 
        return 0;
 }
 
                return -ENODEV;
        }
 
-       strlcpy(info->type, "gl520sm", I2C_NAME_SIZE);
+       strscpy(info->type, "gl520sm", I2C_NAME_SIZE);
 
        return 0;
 }
 
                struct jc42_chips *chip = &jc42_chips[i];
                if (manid == chip->manid &&
                    (devid & chip->devid_mask) == chip->devid) {
-                       strlcpy(info->type, "jc42", I2C_NAME_SIZE);
+                       strscpy(info->type, "jc42", I2C_NAME_SIZE);
                        return 0;
                }
        }
 
        }
 
        if (chip_id == 0x41 && address == 0x4c)
-               strlcpy(info->type, "lm63", I2C_NAME_SIZE);
+               strscpy(info->type, "lm63", I2C_NAME_SIZE);
        else if (chip_id == 0x51 && (address == 0x18 || address == 0x4e))
-               strlcpy(info->type, "lm64", I2C_NAME_SIZE);
+               strscpy(info->type, "lm64", I2C_NAME_SIZE);
        else if (chip_id == 0x49 && address == 0x4c)
-               strlcpy(info->type, "lm96163", I2C_NAME_SIZE);
+               strscpy(info->type, "lm96163", I2C_NAME_SIZE);
        else
                return -ENODEV;
 
 
        if (id < 0 || id != LM73_ID)
                return -ENODEV;
 
-       strlcpy(info->type, "lm73", I2C_NAME_SIZE);
+       strscpy(info->type, "lm73", I2C_NAME_SIZE);
 
        return 0;
 }
 
                        return -ENODEV;
        }
 
-       strlcpy(info->type, is_lm75a ? "lm75a" : "lm75", I2C_NAME_SIZE);
+       strscpy(info->type, is_lm75a ? "lm75a" : "lm75", I2C_NAME_SIZE);
 
        return 0;
 }
 
         || i2c_smbus_read_word_data(client, 7) != min)
                return -ENODEV;
 
-       strlcpy(info->type, "lm77", I2C_NAME_SIZE);
+       strscpy(info->type, "lm77", I2C_NAME_SIZE);
 
        return 0;
 }
 
        if (isa)
                mutex_unlock(&isa->update_lock);
 
-       strlcpy(info->type, client_name, I2C_NAME_SIZE);
+       strscpy(info->type, client_name, I2C_NAME_SIZE);
 
        return 0;
 
 
                name = "lm80";
        }
 
-       strlcpy(info->type, name, I2C_NAME_SIZE);
+       strscpy(info->type, name, I2C_NAME_SIZE);
 
        return 0;
 }
 
                return -ENODEV;
        }
 
-       strlcpy(info->type, name, I2C_NAME_SIZE);
+       strscpy(info->type, name, I2C_NAME_SIZE);
 
        return 0;
 }
 
        if (!type_name)
                return -ENODEV;
 
-       strlcpy(info->type, type_name, I2C_NAME_SIZE);
+       strscpy(info->type, type_name, I2C_NAME_SIZE);
 
        return 0;
 }
 
                return -ENODEV;
        }
 
-       strlcpy(info->type, name, I2C_NAME_SIZE);
+       strscpy(info->type, name, I2C_NAME_SIZE);
 
        return 0;
 }
 
                return -ENODEV;
        }
 
-       strlcpy(info->type, name, I2C_NAME_SIZE);
+       strscpy(info->type, name, I2C_NAME_SIZE);
 
        return 0;
 }
 
        else
                return -ENODEV;
 
-       strlcpy(info->type, "lm92", I2C_NAME_SIZE);
+       strscpy(info->type, "lm92", I2C_NAME_SIZE);
 
        return 0;
 }
 
                return -ENODEV;
        }
 
-       strlcpy(info->type, name, I2C_NAME_SIZE);
+       strscpy(info->type, name, I2C_NAME_SIZE);
        dev_dbg(&adapter->dev, "loading %s at %d, 0x%02x\n",
                client->name, i2c_adapter_id(client->adapter),
                client->addr);
 
        if (val & model_mask)
                return -ENODEV;
 
-       strlcpy(info->type, name, I2C_NAME_SIZE);
+       strscpy(info->type, name, I2C_NAME_SIZE);
        return 0;
 }
 
 
        }
 
        /* Fill the i2c board info */
-       strlcpy(info->type, name, I2C_NAME_SIZE);
+       strscpy(info->type, name, I2C_NAME_SIZE);
        return 0;
 }
 
 
                return -ENODEV;
        }
 
-       strlcpy(info->type, name, I2C_NAME_SIZE);
+       strscpy(info->type, name, I2C_NAME_SIZE);
        return 0;
 }
 
 
                return -ENODEV;
        }
 
-       strlcpy(info->type, "max1619", I2C_NAME_SIZE);
+       strscpy(info->type, "max1619", I2C_NAME_SIZE);
 
        return 0;
 }
 
        if (!type_name)
                return -ENODEV;
 
-       strlcpy(info->type, type_name, I2C_NAME_SIZE);
+       strscpy(info->type, type_name, I2C_NAME_SIZE);
 
        return 0;
 }
 
                        return -ENODEV;
        }
 
-       strlcpy(info->type, "max31730", I2C_NAME_SIZE);
+       strscpy(info->type, "max31730", I2C_NAME_SIZE);
 
        return 0;
 }
 
        if (dev_id != 0x58 || manu_id != 0x4D)
                return -ENODEV;
 
-       strlcpy(info->type, "max6639", I2C_NAME_SIZE);
+       strscpy(info->type, "max6639", I2C_NAME_SIZE);
 
        return 0;
 }
 
        if ((reg_status & 0x2b) != 0x00)
                return -ENODEV;
 
-       strlcpy(info->type, "max6642", I2C_NAME_SIZE);
+       strscpy(info->type, "max6642", I2C_NAME_SIZE);
 
        return 0;
 }
 
        if (reg < 0 || (reg & 0x3f))
                return -ENODEV;
 
-       strlcpy(info->type, "nct7802", I2C_NAME_SIZE);
+       strscpy(info->type, "nct7802", I2C_NAME_SIZE);
        return 0;
 }
 
 
            (i2c_smbus_read_byte_data(client, BANK_SEL_REG) & 0xf8) != 0x00)
                return -ENODEV;
 
-       strlcpy(info->type, "nct7904", I2C_NAME_SIZE);
+       strscpy(info->type, "nct7904", I2C_NAME_SIZE);
 
        return 0;
 }
 
                return -ENODEV;
        }
 
-       strlcpy(info->type, "smsc47m192", I2C_NAME_SIZE);
+       strscpy(info->type, "smsc47m192", I2C_NAME_SIZE);
 
        return 0;
 }
 
        }
        dev_dbg(&new_client->dev, "Chip %s detected", name);
 
-       strlcpy(info->type, stts751_id[0].name, I2C_NAME_SIZE);
+       strscpy(info->type, stts751_id[0].name, I2C_NAME_SIZE);
        return 0;
 }
 
 
        pr_debug("thmc50: Detected %s (version %x, revision %x)\n",
                 type_name, (revision >> 4) - 0xc, revision & 0xf);
 
-       strlcpy(info->type, type_name, I2C_NAME_SIZE);
+       strscpy(info->type, type_name, I2C_NAME_SIZE);
 
        return 0;
 }
 
        if (reg > 15)
                return -ENODEV;
 
-       strlcpy(info->type, tmp401_id[kind].name, I2C_NAME_SIZE);
+       strscpy(info->type, tmp401_id[kind].name, I2C_NAME_SIZE);
 
        return 0;
 }
 
                return -ENODEV;
        }
 
-       strlcpy(info->type, tmp421_id[kind].name, I2C_NAME_SIZE);
+       strscpy(info->type, tmp421_id[kind].name, I2C_NAME_SIZE);
        dev_info(&adapter->dev, "Detected TI %s chip at 0x%02x\n",
                 names[kind], client->addr);
 
 
        if (isa)
                mutex_unlock(&isa->update_lock);
 
-       strlcpy(info->type, client_name, I2C_NAME_SIZE);
+       strscpy(info->type, client_name, I2C_NAME_SIZE);
 
        return 0;
 
 
        if (val1 != 0x71 || val2 != 0x5c)
                return -ENODEV;
 
-       strlcpy(info->type, "w83791d", I2C_NAME_SIZE);
+       strscpy(info->type, "w83791d", I2C_NAME_SIZE);
 
        return 0;
 }
 
        if (val1 != 0x7a || val2 != 0x5c)
                return -ENODEV;
 
-       strlcpy(info->type, "w83792d", I2C_NAME_SIZE);
+       strscpy(info->type, "w83792d", I2C_NAME_SIZE);
 
        return 0;
 }
 
        if (chip_id != 0x7b)
                return -ENODEV;
 
-       strlcpy(info->type, "w83793", I2C_NAME_SIZE);
+       strscpy(info->type, "w83793", I2C_NAME_SIZE);
 
        return 0;
 }
 
        else
                chip_name = "w83795g";
 
-       strlcpy(info->type, chip_name, I2C_NAME_SIZE);
+       strscpy(info->type, chip_name, I2C_NAME_SIZE);
        dev_info(&adapter->dev, "Found %s rev. %c at 0x%02hx\n", chip_name,
                 'A' + (device_id & 0xf), address);
 
 
                return -ENODEV;
        }
 
-       strlcpy(info->type, "w83l785ts", I2C_NAME_SIZE);
+       strscpy(info->type, "w83l785ts", I2C_NAME_SIZE);
 
        return 0;
 }
 
                return -ENODEV;
        }
 
-       strlcpy(info->type, "w83l786ng", I2C_NAME_SIZE);
+       strscpy(info->type, "w83l786ng", I2C_NAME_SIZE);
 
        return 0;
 }