]> git.karo-electronics.de Git - karo-tx-linux.git/blobdiff - drivers/misc/pch_phub.c
Merge branch 'for-4.6/core' of git://git.kernel.dk/linux-block
[karo-tx-linux.git] / drivers / misc / pch_phub.c
index 9a17a9bab8d6c980b2e23787c2fc0dbf6807e3c7..4810e039bbeced8bd7bb337ddd6404c95b3bfdd6 100644 (file)
@@ -503,8 +503,7 @@ static ssize_t pch_phub_bin_read(struct file *filp, struct kobject *kobj,
        int err;
        ssize_t rom_size;
 
-       struct pch_phub_reg *chip =
-               dev_get_drvdata(container_of(kobj, struct device, kobj));
+       struct pch_phub_reg *chip = dev_get_drvdata(kobj_to_dev(kobj));
 
        ret = mutex_lock_interruptible(&pch_phub_mutex);
        if (ret) {
@@ -514,8 +513,10 @@ static ssize_t pch_phub_bin_read(struct file *filp, struct kobject *kobj,
 
        /* Get Rom signature */
        chip->pch_phub_extrom_base_address = pci_map_rom(chip->pdev, &rom_size);
-       if (!chip->pch_phub_extrom_base_address)
+       if (!chip->pch_phub_extrom_base_address) {
+               err = -ENODATA;
                goto exrom_map_err;
+       }
 
        pch_phub_read_serial_rom(chip, chip->pch_opt_rom_start_address,
                                (unsigned char *)&rom_signature);
@@ -567,8 +568,7 @@ static ssize_t pch_phub_bin_write(struct file *filp, struct kobject *kobj,
        unsigned int addr_offset;
        int ret;
        ssize_t rom_size;
-       struct pch_phub_reg *chip =
-               dev_get_drvdata(container_of(kobj, struct device, kobj));
+       struct pch_phub_reg *chip = dev_get_drvdata(kobj_to_dev(kobj));
 
        ret = mutex_lock_interruptible(&pch_phub_mutex);
        if (ret)