Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

Revert "i2c: i2c-qcom-geni: Add shutdown callback for i2c"

This reverts commit e0371298ddc51761be257698554ea507ac8bf831. It was
accidently applied despite discussion still going on.

Signed-off-by: Wolfram Sang <wsa@kernel.org>
Acked-by: Stephen Boyd <swboyd@chromium.org>

-34
-34
drivers/i2c/busses/i2c-qcom-geni.c
··· 375 375 } 376 376 } 377 377 378 - static void geni_i2c_stop_xfer(struct geni_i2c_dev *gi2c) 379 - { 380 - int ret; 381 - u32 geni_status; 382 - struct i2c_msg *cur; 383 - 384 - /* Resume device, as runtime suspend can happen anytime during transfer */ 385 - ret = pm_runtime_get_sync(gi2c->se.dev); 386 - if (ret < 0) { 387 - dev_err(gi2c->se.dev, "Failed to resume device: %d\n", ret); 388 - return; 389 - } 390 - 391 - geni_status = readl_relaxed(gi2c->se.base + SE_GENI_STATUS); 392 - if (geni_status & M_GENI_CMD_ACTIVE) { 393 - cur = gi2c->cur; 394 - geni_i2c_abort_xfer(gi2c); 395 - if (cur->flags & I2C_M_RD) 396 - geni_i2c_rx_msg_cleanup(gi2c, cur); 397 - else 398 - geni_i2c_tx_msg_cleanup(gi2c, cur); 399 - } 400 - 401 - pm_runtime_put_sync_suspend(gi2c->se.dev); 402 - } 403 - 404 378 static int geni_i2c_rx_one_msg(struct geni_i2c_dev *gi2c, struct i2c_msg *msg, 405 379 u32 m_param) 406 380 { ··· 650 676 return 0; 651 677 } 652 678 653 - static void geni_i2c_shutdown(struct platform_device *pdev) 654 - { 655 - struct geni_i2c_dev *gi2c = platform_get_drvdata(pdev); 656 - 657 - geni_i2c_stop_xfer(gi2c); 658 - } 659 - 660 679 static int __maybe_unused geni_i2c_runtime_suspend(struct device *dev) 661 680 { 662 681 int ret; ··· 714 747 static struct platform_driver geni_i2c_driver = { 715 748 .probe = geni_i2c_probe, 716 749 .remove = geni_i2c_remove, 717 - .shutdown = geni_i2c_shutdown, 718 750 .driver = { 719 751 .name = "geni_i2c", 720 752 .pm = &geni_i2c_pm_ops,