mtd: HBMC-AM654: Changed syscon API to mux APIs
The syscon APIs were used for selecting the state of the mux
device because the mmio-mux driver in u-boot did not support
the mux functionality when the parent device is not a syscon.
Change to mux APIs which utilizes the reg-mux driver to select the
state of the multiplexer.
Signed-off-by: Anurag Dutta <a-dutta@ti.com>
(cherry picked from commit a42b8b0b3f)
This commit is contained in:
committed by
Simon Glass
parent
22af2f3de8
commit
300c7be09c
@@ -5,8 +5,8 @@
|
||||
|
||||
#include <asm/io.h>
|
||||
#include <dm.h>
|
||||
#include <mux.h>
|
||||
#include <regmap.h>
|
||||
#include <syscon.h>
|
||||
#include <dm/device_compat.h>
|
||||
|
||||
#define FSS_SYSC_REG 0x4
|
||||
@@ -52,9 +52,13 @@ static int am654_hyperbus_calibrate(struct udevice *dev)
|
||||
|
||||
static int am654_select_hbmc(struct udevice *dev)
|
||||
{
|
||||
struct regmap *regmap = syscon_get_regmap(dev_get_parent(dev));
|
||||
struct mux_control *mux_ctl;
|
||||
int ret;
|
||||
|
||||
return regmap_update_bits(regmap, FSS_SYSC_REG, 0x2, 0x2);
|
||||
ret = mux_get_by_index(dev, 0, &mux_ctl);
|
||||
if (!ret)
|
||||
ret = mux_control_select(mux_ctl, 1);
|
||||
return ret;
|
||||
}
|
||||
|
||||
static int am654_hbmc_bind(struct udevice *dev)
|
||||
|
||||
Reference in New Issue
Block a user