diff options
author | Tom Rini <trini@konsulko.com> | 2019-10-30 13:13:46 -0400 |
---|---|---|
committer | Tom Rini <trini@konsulko.com> | 2019-10-30 13:13:46 -0400 |
commit | 412326d1bc2d346d7b4faad6fa547eaf065681a2 (patch) | |
tree | f321db73de4b43f8bf56d6998d3053a8b48b1e1c /arch | |
parent | 1a81cf8ab735dfb0947dce497cf1503f59066c22 (diff) | |
parent | 9a52be129c5b159269ac69a7ae0197eb02612f1d (diff) | |
download | u-boot-412326d1bc2d346d7b4faad6fa547eaf065681a2.zip u-boot-412326d1bc2d346d7b4faad6fa547eaf065681a2.tar.gz u-boot-412326d1bc2d346d7b4faad6fa547eaf065681a2.tar.bz2 |
Merge tag 'u-boot-clk-23Oct2019' of https://gitlab.denx.de/u-boot/custodians/u-boot-clk
- Add I2C clocks for i.MX6Q CCF driver
- Fix check in clk_set_default_parents()
- Managed API to get clock from device tree
- Fixes for core clock code (including sandbox regression tests)
Diffstat (limited to 'arch')
-rw-r--r-- | arch/sandbox/dts/test.dts | 8 | ||||
-rw-r--r-- | arch/sandbox/include/asm/clk.h | 33 |
2 files changed, 39 insertions, 2 deletions
diff --git a/arch/sandbox/dts/test.dts b/arch/sandbox/dts/test.dts index 42b41fb..fdb08f2 100644 --- a/arch/sandbox/dts/test.dts +++ b/arch/sandbox/dts/test.dts @@ -226,14 +226,18 @@ clk_sandbox: clk-sbox { compatible = "sandbox,clk"; #clock-cells = <1>; + assigned-clocks = <&clk_sandbox 3>; + assigned-clock-rates = <321>; }; clk-test { compatible = "sandbox,clk-test"; clocks = <&clk_fixed>, <&clk_sandbox 1>, - <&clk_sandbox 0>; - clock-names = "fixed", "i2c", "spi"; + <&clk_sandbox 0>, + <&clk_sandbox 3>, + <&clk_sandbox 2>; + clock-names = "fixed", "i2c", "spi", "uart2", "uart1"; }; ccf: clk-ccf { diff --git a/arch/sandbox/include/asm/clk.h b/arch/sandbox/include/asm/clk.h index 2b1c49f..1573e4a 100644 --- a/arch/sandbox/include/asm/clk.h +++ b/arch/sandbox/include/asm/clk.h @@ -19,6 +19,8 @@ struct udevice; enum sandbox_clk_id { SANDBOX_CLK_ID_SPI, SANDBOX_CLK_ID_I2C, + SANDBOX_CLK_ID_UART1, + SANDBOX_CLK_ID_UART2, SANDBOX_CLK_ID_COUNT, }; @@ -33,10 +35,15 @@ enum sandbox_clk_test_id { SANDBOX_CLK_TEST_ID_FIXED, SANDBOX_CLK_TEST_ID_SPI, SANDBOX_CLK_TEST_ID_I2C, + SANDBOX_CLK_TEST_ID_DEVM1, + SANDBOX_CLK_TEST_ID_DEVM2, + SANDBOX_CLK_TEST_ID_DEVM_NULL, SANDBOX_CLK_TEST_ID_COUNT, }; +#define SANDBOX_CLK_TEST_NON_DEVM_COUNT SANDBOX_CLK_TEST_ID_DEVM1 + /** * sandbox_clk_query_rate - Query the current rate of a sandbox clock. * @@ -53,6 +60,14 @@ ulong sandbox_clk_query_rate(struct udevice *dev, int id); * @return: The rate of the clock. */ int sandbox_clk_query_enable(struct udevice *dev, int id); +/** + * sandbox_clk_query_requested - Query the requested state of a sandbox clock. + * + * @dev: The sandbox clock provider device. + * @id: The clock to query. + * @return: The rate of the clock. + */ +int sandbox_clk_query_requested(struct udevice *dev, int id); /** * sandbox_clk_test_get - Ask the sandbox clock test device to request its @@ -62,6 +77,16 @@ int sandbox_clk_query_enable(struct udevice *dev, int id); * @return: 0 if OK, or a negative error code. */ int sandbox_clk_test_get(struct udevice *dev); + +/** + * sandbox_clk_test_devm_get - Ask the sandbox clock test device to request its + * clocks using the managed API. + * + * @dev: The sandbox clock test (client) devivce. + * @return: 0 if OK, or a negative error code. + */ +int sandbox_clk_test_devm_get(struct udevice *dev); + /** * sandbox_clk_test_get_bulk - Ask the sandbox clock test device to request its * clocks with the bulk clk API. @@ -146,5 +171,13 @@ int sandbox_clk_test_release_bulk(struct udevice *dev); * @return: 0 if OK, or a negative error code. */ int sandbox_clk_test_valid(struct udevice *dev); +/** + * sandbox_clk_test_valid - Ask the sandbox clock test device to check its + * clocks are valid. + * + * @dev: The sandbox clock test (client) devivce. + * @return: 0 if OK, or a negative error code. + */ +struct clk *sandbox_clk_test_get_devm_clk(struct udevice *dev, int id); #endif |