Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 201333
b: refs/heads/master
c: fc0f5ac
h: refs/heads/master
i:
  201331: d01f877
v: v3
  • Loading branch information
Linus Torvalds committed Jul 27, 2010
1 parent 2c66d70 commit 53e6b48
Show file tree
Hide file tree
Showing 5 changed files with 28 additions and 8 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: da7ddd3296505b4cb46685e1bbf7d0075b3cd4f1
refs/heads/master: fc0f5ac8fe693d1b05f5a928cc48135d1c8b7f2e
3 changes: 3 additions & 0 deletions trunk/drivers/edac/mpc85xx_edac.c
Original file line number Diff line number Diff line change
Expand Up @@ -336,6 +336,7 @@ static struct of_device_id mpc85xx_pci_err_of_match[] = {
},
{},
};
MODULE_DEVICE_TABLE(of, mpc85xx_pci_err_of_match);

static struct of_platform_driver mpc85xx_pci_err_driver = {
.probe = mpc85xx_pci_err_probe,
Expand Down Expand Up @@ -650,6 +651,7 @@ static struct of_device_id mpc85xx_l2_err_of_match[] = {
{ .compatible = "fsl,p2020-l2-cache-controller", },
{},
};
MODULE_DEVICE_TABLE(of, mpc85xx_l2_err_of_match);

static struct of_platform_driver mpc85xx_l2_err_driver = {
.probe = mpc85xx_l2_err_probe,
Expand Down Expand Up @@ -1126,6 +1128,7 @@ static struct of_device_id mpc85xx_mc_err_of_match[] = {
{ .compatible = "fsl,p2020-memory-controller", },
{},
};
MODULE_DEVICE_TABLE(of, mpc85xx_mc_err_of_match);

static struct of_platform_driver mpc85xx_mc_err_driver = {
.probe = mpc85xx_mc_err_probe,
Expand Down
7 changes: 4 additions & 3 deletions trunk/drivers/gpio/gpiolib.c
Original file line number Diff line number Diff line change
Expand Up @@ -893,10 +893,12 @@ EXPORT_SYMBOL_GPL(gpio_sysfs_set_active_low);
void gpio_unexport(unsigned gpio)
{
struct gpio_desc *desc;
int status = -EINVAL;
int status = 0;

if (!gpio_is_valid(gpio))
if (!gpio_is_valid(gpio)) {
status = -EINVAL;
goto done;
}

mutex_lock(&sysfs_lock);

Expand All @@ -911,7 +913,6 @@ void gpio_unexport(unsigned gpio)
clear_bit(FLAG_EXPORT, &desc->flags);
put_device(dev);
device_unregister(dev);
status = 0;
} else
status = -ENODEV;
}
Expand Down
20 changes: 17 additions & 3 deletions trunk/drivers/rtc/rtc-rx8581.c
Original file line number Diff line number Diff line change
Expand Up @@ -168,7 +168,7 @@ static int rx8581_set_datetime(struct i2c_client *client, struct rtc_time *tm)
return -EIO;
}

err = i2c_smbus_write_byte_data(client, RX8581_REG_FLAG,
err = i2c_smbus_write_byte_data(client, RX8581_REG_CTRL,
(data | RX8581_CTRL_STOP));
if (err < 0) {
dev_err(&client->dev, "Unable to write control register\n");
Expand All @@ -182,15 +182,29 @@ static int rx8581_set_datetime(struct i2c_client *client, struct rtc_time *tm)
return -EIO;
}

/* get VLF and clear it */
data = i2c_smbus_read_byte_data(client, RX8581_REG_FLAG);
if (data < 0) {
dev_err(&client->dev, "Unable to read flag register\n");
return -EIO;
}

err = i2c_smbus_write_byte_data(client, RX8581_REG_FLAG,
(data & ~(RX8581_FLAG_VLF)));
if (err != 0) {
dev_err(&client->dev, "Unable to write flag register\n");
return -EIO;
}

/* Restart the clock */
data = i2c_smbus_read_byte_data(client, RX8581_REG_CTRL);
if (data < 0) {
dev_err(&client->dev, "Unable to read control register\n");
return -EIO;
}

err = i2c_smbus_write_byte_data(client, RX8581_REG_FLAG,
(data | ~(RX8581_CTRL_STOP)));
err = i2c_smbus_write_byte_data(client, RX8581_REG_CTRL,
(data & ~(RX8581_CTRL_STOP)));
if (err != 0) {
dev_err(&client->dev, "Unable to write control register\n");
return -EIO;
Expand Down
4 changes: 3 additions & 1 deletion trunk/kernel/module.c
Original file line number Diff line number Diff line change
Expand Up @@ -787,7 +787,6 @@ SYSCALL_DEFINE2(delete_module, const char __user *, name_user,

/* Store the name of the last unloaded module for diagnostic purposes */
strlcpy(last_unloaded_module, mod->name, sizeof(last_unloaded_module));
ddebug_remove_module(mod->name);

free_module(mod);
return 0;
Expand Down Expand Up @@ -1550,6 +1549,9 @@ static void free_module(struct module *mod)
remove_sect_attrs(mod);
mod_kobject_remove(mod);

/* Remove dynamic debug info */
ddebug_remove_module(mod->name);

/* Arch-specific cleanup. */
module_arch_cleanup(mod);

Expand Down

0 comments on commit 53e6b48

Please sign in to comment.