diff --git a/drivers/i2c/busses/i2c-s3c2410.c b/drivers/i2c/busses/i2c-s3c2410.c
index c0883054957891fd83a8d8ae17bf002df2d21637..38dc1cacfd8bba5d36da9e2638efb6a6ca93f455 100644
--- a/drivers/i2c/busses/i2c-s3c2410.c
+++ b/drivers/i2c/busses/i2c-s3c2410.c
@@ -1158,7 +1158,12 @@ static int s3c24xx_i2c_probe(struct platform_device *pdev)
 		return -EINVAL;
 
 	/* initialise the i2c controller */
-	clk_prepare_enable(i2c->clk);
+	ret = clk_prepare_enable(i2c->clk);
+	if (ret) {
+		dev_err(&pdev->dev, "I2C clock enable failed\n");
+		return ret;
+	}
+
 	ret = s3c24xx_i2c_init(i2c);
 	clk_disable(i2c->clk);
 	if (ret != 0) {