mirror of
https://source.denx.de/u-boot/u-boot.git
synced 2026-06-13 15:03:58 +03:00
spi: npcm_pspi: Reset HW in driver probe
Reset HW to clear old status and use default data mode(8-bit). Signed-off-by: Jim Liu <JJLIU0@nuvoton.com>
This commit is contained in:
@@ -7,6 +7,7 @@
|
||||
#include <dm.h>
|
||||
#include <spi.h>
|
||||
#include <clk.h>
|
||||
#include <reset.h>
|
||||
#include <asm/gpio.h>
|
||||
#include <linux/iopoll.h>
|
||||
|
||||
@@ -194,6 +195,7 @@ static int npcm_pspi_probe(struct udevice *bus)
|
||||
{
|
||||
struct npcm_pspi_priv *priv = dev_get_priv(bus);
|
||||
int node = dev_of_offset(bus);
|
||||
struct reset_ctl reset;
|
||||
int ret;
|
||||
|
||||
ret = clk_get_by_index(bus, 0, &priv->clk);
|
||||
@@ -205,6 +207,14 @@ static int npcm_pspi_probe(struct udevice *bus)
|
||||
gpio_request_by_name_nodev(offset_to_ofnode(node), "cs-gpios", 0,
|
||||
&priv->cs_gpio, GPIOD_IS_OUT| GPIOD_ACTIVE_LOW);
|
||||
|
||||
/* Reset HW */
|
||||
ret = reset_get_by_index(bus, 0, &reset);
|
||||
if (!ret) {
|
||||
reset_assert(&reset);
|
||||
udelay(5);
|
||||
reset_deassert(&reset);
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user