From: Simon Glass Date: Fri, 22 Jan 2016 02:44:11 +0000 (-0700) Subject: rockchip: spi: Correct chip-enable code X-Git-Url: http://git.dujemihanovic.xyz/?a=commitdiff_plain;h=e15af8e2cdb169b59945145a118a344b52d0ffa2;p=u-boot.git rockchip: spi: Correct chip-enable code At present there is an incorrect call to rkspi_enable_chip(). It should be disabling the chip, not enabling it. Correct this and ensure that the chip is disabled when releasing the bus. Signed-off-by: Simon Glass --- diff --git a/drivers/spi/rk_spi.c b/drivers/spi/rk_spi.c index 35b528fa59..412fa8ba76 100644 --- a/drivers/spi/rk_spi.c +++ b/drivers/spi/rk_spi.c @@ -286,6 +286,11 @@ static int rockchip_spi_claim_bus(struct udevice *dev) static int rockchip_spi_release_bus(struct udevice *dev) { + struct udevice *bus = dev->parent; + struct rockchip_spi_priv *priv = dev_get_priv(bus); + + rkspi_enable_chip(priv->regs, false); + return 0; } @@ -314,7 +319,7 @@ static int rockchip_spi_xfer(struct udevice *dev, unsigned int bitlen, while (len > 0) { int todo = min(len, 0xffff); - rkspi_enable_chip(regs, true); + rkspi_enable_chip(regs, false); writel(todo - 1, ®s->ctrlr1); rkspi_enable_chip(regs, true);