From f6a2f33347da35ced5d08990c3bdc086c97b11c7 Mon Sep 17 00:00:00 2001 From: jogo Date: Sun, 19 May 2013 18:32:13 +0000 Subject: bcm63xx: add 3.9 support Signed-off-by: Jonas Gorski git-svn-id: svn://svn.openwrt.org/openwrt/trunk@36660 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- ...-properly-prepare-clocks-before-enabling-.patch | 61 ++++++++++++++++++++++ 1 file changed, 61 insertions(+) create mode 100644 target/linux/brcm63xx/patches-3.9/005-spi-bcm63xx-properly-prepare-clocks-before-enabling-.patch (limited to 'target/linux/brcm63xx/patches-3.9/005-spi-bcm63xx-properly-prepare-clocks-before-enabling-.patch') diff --git a/target/linux/brcm63xx/patches-3.9/005-spi-bcm63xx-properly-prepare-clocks-before-enabling-.patch b/target/linux/brcm63xx/patches-3.9/005-spi-bcm63xx-properly-prepare-clocks-before-enabling-.patch new file mode 100644 index 000000000..b75a57c0f --- /dev/null +++ b/target/linux/brcm63xx/patches-3.9/005-spi-bcm63xx-properly-prepare-clocks-before-enabling-.patch @@ -0,0 +1,61 @@ +From e504d3ed9b35f43e61cf239b103667d87cd7bf3c Mon Sep 17 00:00:00 2001 +From: Jonas Gorski +Date: Mon, 10 Sep 2012 01:26:55 +0200 +Subject: [PATCH 03/12] spi/bcm63xx: properly prepare clocks before enabling + them + +Use proper clk_prepare/unprepare calls in preparation for switching +to the generic clock framework. + +Signed-off-by: Jonas Gorski +--- + drivers/spi/spi-bcm63xx.c | 10 +++++----- + 1 file changed, 5 insertions(+), 5 deletions(-) + +--- a/drivers/spi/spi-bcm63xx.c ++++ b/drivers/spi/spi-bcm63xx.c +@@ -493,7 +493,7 @@ static int bcm63xx_spi_probe(struct plat + } + + /* Initialize hardware */ +- clk_enable(bs->clk); ++ clk_prepare_enable(bs->clk); + bcm_spi_writeb(bs, SPI_INTR_CLEAR_ALL, SPI_INT_STATUS); + + /* register and we are done */ +@@ -509,7 +509,7 @@ static int bcm63xx_spi_probe(struct plat + return 0; + + out_clk_disable: +- clk_disable(clk); ++ clk_disable_unprepare(clk); + out_err: + platform_set_drvdata(pdev, NULL); + spi_master_put(master); +@@ -530,7 +530,7 @@ static int bcm63xx_spi_remove(struct pla + bcm_spi_writeb(bs, 0, SPI_INT_MASK); + + /* HW shutdown */ +- clk_disable(bs->clk); ++ clk_disable_unprepare(bs->clk); + clk_put(bs->clk); + + platform_set_drvdata(pdev, 0); +@@ -549,7 +549,7 @@ static int bcm63xx_spi_suspend(struct de + + spi_master_suspend(master); + +- clk_disable(bs->clk); ++ clk_disable_unprepare(bs->clk); + + return 0; + } +@@ -560,7 +560,7 @@ static int bcm63xx_spi_resume(struct dev + platform_get_drvdata(to_platform_device(dev)); + struct bcm63xx_spi *bs = spi_master_get_devdata(master); + +- clk_enable(bs->clk); ++ clk_prepare_enable(bs->clk); + + spi_master_resume(master); + -- cgit v1.2.3