History log of /rk3399_rockchip-uboot/drivers/core/device.c (Results 1 – 25 of 166)
Revision Date Author Comments
# d00cf31c 02-Nov-2023 Cody Xie <cody.xie@rock-chips.com>

dm: core: pinctrl: Select state "init" for pinctrl driver

We'd like to let pinmux stay in a expected state during boot,
even if the user driver is not implemented in u-boot
but in kernel.

Let the p

dm: core: pinctrl: Select state "init" for pinctrl driver

We'd like to let pinmux stay in a expected state during boot,
even if the user driver is not implemented in u-boot
but in kernel.

Let the pinctrl driver to select the init state of pins,
and the user driver can select them to default state
in u-boot or later in kernel driver probe.

Change-Id: Ie16d0f01afdfab1a4e5be168c350cd661cb6408c
Signed-off-by: Cody Xie <cody.xie@rock-chips.com>

show more ...


# 172237e2 07-Mar-2023 Jon Lin <jon.lin@rock-chips.com>

Revert "dm: regulator: skip probed pre-reloc regulators"

This reverts commit 9a7b7f26ec66fca6fc43ff0ea333e16b2f6317f8.

Signed-off-by: Jon Lin <jon.lin@rock-chips.com>
Change-Id: Icd35e4a5b67e6fa701

Revert "dm: regulator: skip probed pre-reloc regulators"

This reverts commit 9a7b7f26ec66fca6fc43ff0ea333e16b2f6317f8.

Signed-off-by: Jon Lin <jon.lin@rock-chips.com>
Change-Id: Icd35e4a5b67e6fa701c6e87aba3e4434f7dd22a9

show more ...


# 9a7b7f26 25-Nov-2021 Joseph Chen <chenjh@rock-chips.com>

dm: regulator: skip probed pre-reloc regulators

Some regulator like fixed/gpio regultor applies a default
output state when probed. It maybe reverse the state which
was set by the pre-reloc regulato

dm: regulator: skip probed pre-reloc regulators

Some regulator like fixed/gpio regultor applies a default
output state when probed. It maybe reverse the state which
was set by the pre-reloc regulator. Example: vcc3v3_pcie.

Signed-off-by: Joseph Chen <chenjh@rock-chips.com>
Change-Id: I47c191013b0467d57d709705c8e069a804a1c526

show more ...


# d9da4b44 08-Oct-2021 Joseph Chen <chenjh@rock-chips.com>

dm: core: add kernel dtb version 2 mechanism support

The V2 mechanism:
- both of U-Boot and kernel's *ALL* devices are exist in dm tree.
- put the necessary U-Boot devices in the head of device

dm: core: add kernel dtb version 2 mechanism support

The V2 mechanism:
- both of U-Boot and kernel's *ALL* devices are exist in dm tree.
- put the necessary U-Boot devices in the head of device uclass list.
- the both existence policy don't require phandle fixup any more.
- it is for the next generation(rk3588 ...) or necessary platforms.
- traverse u-boot fdt phandle if not found in kernel fdt, because
the U-Boot framework gets phandle by of_root(from fdt) but not dm_root(from dm).
The V1 mechanism(legacy):
- U-Boot: only some necessary U-Boot devices(storage, crypto...) in dm tree.
- kernel: all the devices(except the U-Boot only) in dm tree.

The commit (bd3ad955a3 scripts/dtc: phandle index start from 0x1000000) is
necessary for this v2 mechanism.

Signed-off-by: Joseph Chen <chenjh@rock-chips.com>
Change-Id: I0964f176a17725f9bb7c4e491373c278ed2bfcc5

show more ...


# e30e978d 25-Feb-2021 Yifeng Zhao <yifeng.zhao@rock-chips.com>

core: device: Add SATA to bind list if we set GD_FLG_RELOC

Signed-off-by: Yifeng Zhao <yifeng.zhao@rock-chips.com>
Change-Id: Ie2773a3a559e9e33e4a42a28516f4b994ffe8947


# 33273e09 02-Mar-2021 Joseph Chen <chenjh@rock-chips.com>

driver: core: reject all mmc device from kernel

- we always follow the rule: use mmc device from U-Boot;
- avoid alias id on defferent device between U-Boot and kernel,
which the U-Boot is not abl

driver: core: reject all mmc device from kernel

- we always follow the rule: use mmc device from U-Boot;
- avoid alias id on defferent device between U-Boot and kernel,
which the U-Boot is not able to handle(rescue).

Example issue:

// kernel:
aliases {
mmc0 = "/dwmmc@fe310000";
mmc1 = "/dwmmc@fe320000";
mmc2 = "/sdhci@fe330000";
};

// U-Boot:
aliases {
mmc0 = "/sdhci@fe330000";
mmc1 = "/dwmmc@fe320000";
};

// Log error:
Hit key to stop autoboot('CTRL+C'): 0
Device 'dwmmc@fe310000': seq 0 is in use by 'sdhci@fe330000'
MMC error: The cmd index is 1, ret is -110
Card did not respond to voltage select!
mmc_init: -95, time 51

Signed-off-by: Joseph Chen <chenjh@rock-chips.com>
Change-Id: I8afede0d304b3e6155766c2aefa2b3b0fd21b068

show more ...


# 80907d3c 04-Jan-2021 Shawn Lin <shawn.lin@rock-chips.com>

core: device: Add PCIe to bind list if we set GD_FLG_RELOC

Change-Id: Ib115bc6eb52f8a08e28805ea15e2cbf8f27f5f63
Signed-off-by: Shawn Lin <shawn.lin@rock-chips.com>


# ef5a68b1 25-Dec-2020 Joseph Chen <chenjh@rock-chips.com>

core: device: always use wdt from U-Boot

Signed-off-by: Joseph Chen <chenjh@rock-chips.com>
Change-Id: Icedfecb6de80cb9dc1a71118e7271e2b7b66e90c


# 8f5dfc4a 08-Jul-2020 Joseph Chen <chenjh@rock-chips.com>

core: device: use list_del_init() instead of list_del() to remove node

In order to check this node by list_del_init().

Signed-off-by: Joseph Chen <chenjh@rock-chips.com>
Change-Id: I723821d8b9fc6d8

core: device: use list_del_init() instead of list_del() to remove node

In order to check this node by list_del_init().

Signed-off-by: Joseph Chen <chenjh@rock-chips.com>
Change-Id: I723821d8b9fc6d899fbd5c0b830b240486a48c73

show more ...


# 1a4f6af8 02-Mar-2020 Joseph Chen <chenjh@rock-chips.com>

Merge branch 'next-dev' into thunder-boot


# 30a85904 21-Feb-2020 Joseph Chen <chenjh@rock-chips.com>

core: device: add and update some comment

Signed-off-by: Joseph Chen <chenjh@rock-chips.com>
Change-Id: I7e58aab5eeb77913c8438ed066a7a73c7d6f0bb6


# 503458d2 16-Dec-2019 Joseph Chen <chenjh@rock-chips.com>

core: device: allow serial node bind from kernel dtb

Previously we have to use serial node only from U-Boot dtb,
because we can't handle two problems to avoid serial intr fail:

- CRU phandle miss m

core: device: allow serial node bind from kernel dtb

Previously we have to use serial node only from U-Boot dtb,
because we can't handle two problems to avoid serial intr fail:

- CRU phandle miss match between kernel and U-Boot dtb
- No "clock-frequency" in kernel serial node

These problems are workarund by current code, but the dm serial
seems to be works normally only for uart debug but not other uart.

Since the problems have been solved, let's allow serial driver-device
bind from kernel dtb.

Signed-off-by: Joseph Chen <chenjh@rock-chips.com>
Change-Id: If3453509151e086afc5b7558277bec53842ac8eb

show more ...


# b8dc613c 19-Nov-2019 Joseph Chen <chenjh@rock-chips.com>

Merge branch 'next-dev' into thunder-boot


# 930ceb12 24-Oct-2019 Joseph Chen <chenjh@rock-chips.com>

driver: core/input: treat 'u-boot,dm-spl' as 'u-boot,dm-pre-reloc'

It works when CONFIG_USING_KERNEL_DTB is enabled, because we can
set either 'u-boot,dm-spl' or 'u-boot,dm-pre-reloc' for the node
t

driver: core/input: treat 'u-boot,dm-spl' as 'u-boot,dm-pre-reloc'

It works when CONFIG_USING_KERNEL_DTB is enabled, because we can
set either 'u-boot,dm-spl' or 'u-boot,dm-pre-reloc' for the node
that we can to leave in the u-boot.dtb.

Change-Id: Id3cec0c64ee55ca9bc1e5871e7ad5a2ebb4b1b6a
Signed-off-by: Joseph Chen <chenjh@rock-chips.com>

show more ...


# 5a1674a7 21-Jun-2019 Jason Zhu <jason.zhu@rock-chips.com>

drivers: core: do not use mtd node from kernel dtb

Do not use mtd node from kernel dtb, otherwise the driver will
be initialized twice.

Change-Id: I6f3dca8fd8c3e05475f4359fe6c3c5312c0984cd
Signed-o

drivers: core: do not use mtd node from kernel dtb

Do not use mtd node from kernel dtb, otherwise the driver will
be initialized twice.

Change-Id: I6f3dca8fd8c3e05475f4359fe6c3c5312c0984cd
Signed-off-by: Jason Zhu <jason.zhu@rock-chips.com>

show more ...


# ea4b8016 29-May-2019 Joseph Chen <chenjh@rock-chips.com>

core: device_bind_common: always use crypto node from U-Boot dtb

There is not crypto node in kernel dtb for early platform(such as
rk322x/rk3288/rk3368/rk3399, etc), so we decide to add crypto node

core: device_bind_common: always use crypto node from U-Boot dtb

There is not crypto node in kernel dtb for early platform(such as
rk322x/rk3288/rk3368/rk3399, etc), so we decide to add crypto node
always in U-Boot dtb and ignore crypto node from kernel dtb.

This is a way to compatible with early platforms. Actually, we
need crypto during secure boot sequence, the crypto had better
not depends on kernel dtb.

Change-Id: Ibab4fca0741b45042b8d0868240449fb6b52aa14
Signed-off-by: Joseph Chen <chenjh@rock-chips.com>

show more ...


# d7a244f9 28-May-2019 Joseph Chen <chenjh@rock-chips.com>

core: device_bind_common: only delete U-Boot existance node

Use "u-boot,dm-pre-reloc" to identify whether the existance
node is from U-Boot or not. This avoids deleting the same name
nodes from kern

core: device_bind_common: only delete U-Boot existance node

Use "u-boot,dm-pre-reloc" to identify whether the existance
node is from U-Boot or not. This avoids deleting the same name
nodes from kernel dtb.

Change-Id: I6503965c0013053feefad7e93f98b01b5af71f44
Signed-off-by: Joseph Chen <chenjh@rock-chips.com>

show more ...


# d24a078f 19-Dec-2018 Joseph Chen <chenjh@rock-chips.com>

core: device_bind_common: don't bind UCLASS_SPI_FLASH again

Change-Id: Ie4cfe40398fc1e483b558832663bc50683510ac0
Signed-off-by: Joseph Chen <chenjh@rock-chips.com>


# cadc8d74 26-Jul-2018 Kever Yang <kever.yang@rock-chips.com>

clock: remove clk_set_defaults() in device core

We do not need to assign-clock for every driver in Rockchip platform,
only below module need this feature, remove it for boot time optimize:
- GMAC (n

clock: remove clk_set_defaults() in device core

We do not need to assign-clock for every driver in Rockchip platform,
only below module need this feature, remove it for boot time optimize:
- GMAC (need set parent from dts)
- CRU ARM clock (rockchip board will call set_armclk_rate() instead)
- VOP (need set parent)

Change-Id: Ie8facfb7499323f4649e0e1d908f850de1338e12
Signed-off-by: Kever Yang <kever.yang@rock-chips.com>

show more ...


# 527e4be7 14-Jul-2018 Kever Yang <kever.yang@rock-chips.com>

rockchip: core: update kernel dtb node handle

Don't duplicate bind EMMC and NAND device after load kernel dtb.
Always use serial node from u-boot and use all other nodes from kernel.

Change-Id: Iae

rockchip: core: update kernel dtb node handle

Don't duplicate bind EMMC and NAND device after load kernel dtb.
Always use serial node from u-boot and use all other nodes from kernel.

Change-Id: Iaef9258f66f4f1060f057a9f7b194694e0e1df21
Signed-off-by: Kever Yang <kever.yang@rock-chips.com>

show more ...


# 541f90eb 22-Jun-2018 Yifeng Zhao <zyf@rock-chips.com>

drivers: core: do not use nand node from kernel dtb

Do not use nand node from kernel dtb, or the driver will
be initialized twice.

Change-Id: Iae3e76094d074549e6f52c20261ceefa9b98be1b
Signed-off-by

drivers: core: do not use nand node from kernel dtb

Do not use nand node from kernel dtb, or the driver will
be initialized twice.

Change-Id: Iae3e76094d074549e6f52c20261ceefa9b98be1b
Signed-off-by: Yifeng Zhao <zyf@rock-chips.com>

show more ...


# 713d9646 06-Jun-2018 Finley Xiao <finley.xiao@rock-chips.com>

core: device_bind_common: remove the same clk device

With kernel dtb support, there are two dtbs and some devices may have
the same driver and nanme, the api uclass_get_device_by_driver() and
uclass

core: device_bind_common: remove the same clk device

With kernel dtb support, there are two dtbs and some devices may have
the same driver and nanme, the api uclass_get_device_by_driver() and
uclass_get_device_by_name() may get wrong value. In order to use cru
node in kernel dtb, remove the same device whose node is in u-boot dtb.

Change-Id: Id19eedb276731fa18b07bca51bbc203636f20c31
Signed-off-by: Finley Xiao <finley.xiao@rock-chips.com>

show more ...


# 55e9fafc 25-Feb-2018 Kever Yang <kever.yang@rock-chips.com>

core: do not fail in device_probe() when clk set default fail

Assigned clocks are widely used in kernel, but not in U-Boot yet,
many U-Boot clock driver do not have the API while dts port from kerne

core: do not fail in device_probe() when clk set default fail

Assigned clocks are widely used in kernel, but not in U-Boot yet,
many U-Boot clock driver do not have the API while dts port from kernel
have "assigned-clocks" node.

Just give a warning now instead of a device probe fail.

Change-Id: Icc1da8bdd1a21d6d118e37d305bd7909758c40b2
Signed-off-by: Kever Yang <kever.yang@rock-chips.com>

show more ...


# 5039ac47 25-Feb-2018 Kever Yang <kever.yang@rock-chips.com>

core: device_bind_common: do not use mmc node from kernel

The driver for U-Boot and kernel are different, we can not re-use
mmc node from kernel now.
BTW: U-Boot need alias for mmc to make sure emmc

core: device_bind_common: do not use mmc node from kernel

The driver for U-Boot and kernel are different, we can not re-use
mmc node from kernel now.
BTW: U-Boot need alias for mmc to make sure emmc at mmc0(not support
in kernel dtb).

Change-Id: I1b8fd3ab8a28e3abb5964dc113d0028abe2beaa2
Signed-off-by: Kever Yang <kever.yang@rock-chips.com>

show more ...


# 0b2881ac 08-Jan-2018 Philipp Tomsich <philipp.tomsich@theobroma-systems.com>

clk: implement clk_set_defaults()

Linux uses the properties 'assigned-clocks', 'assigned-clock-parents'
and 'assigned-clock-rates' to configure the clock subsystem for use
with various peripheral no

clk: implement clk_set_defaults()

Linux uses the properties 'assigned-clocks', 'assigned-clock-parents'
and 'assigned-clock-rates' to configure the clock subsystem for use
with various peripheral nodes.

This implements clk_set_defaults() and hooks it up with the general
device probibin in drivers/core/device.c: when a new device is probed,
clk_set_defaults() will be called for it and will process the
properties mentioned above.

Note that this functionality is designed to fail gracefully (i.e. if a
clock-driver does not implement set_parent(), we simply accept this
and ignore the error) as not to break existing board-support.

Signed-off-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
Tested-by: David Wu <david.wu@rock-chips.com>

Series-changes: 2
- Fixed David's email address.

Series-version: 2

Cover-letter:
clk: support assigned-clock, assigned-clock-parents, assigned-clock-rates

For various peripherals on Rockchip SoCs (e.g. for the Ethernet GMAC),
the parent-clock needs to be set via the DTS. This adds the required
plumbing and implements the GMAC case for the RK3399.
END

(cherry picked from commit f4fcba5c5baaaa9d477d753f97124efdb8e45893)

Change-Id: I549891987c5a3e8546b96f1f54ad575950f92b12
Signed-off-by: David Wu <david.wu@rock-chips.com>

show more ...


1234567