drivers: spi: Add SPI controller driver for Octeon
[platform/kernel/u-boot.git] / drivers / reset / sandbox-reset-test.c
1 // SPDX-License-Identifier: GPL-2.0
2 /*
3  * Copyright (c) 2016, NVIDIA CORPORATION.
4  */
5
6 #include <common.h>
7 #include <dm.h>
8 #include <log.h>
9 #include <malloc.h>
10 #include <reset.h>
11 #include <asm/io.h>
12 #include <asm/reset.h>
13
14 struct sandbox_reset_test {
15         struct reset_ctl ctl;
16         struct reset_ctl_bulk bulk;
17 };
18
19 int sandbox_reset_test_get(struct udevice *dev)
20 {
21         struct sandbox_reset_test *sbrt = dev_get_priv(dev);
22
23         return reset_get_by_name(dev, "test", &sbrt->ctl);
24 }
25
26 int sandbox_reset_test_get_bulk(struct udevice *dev)
27 {
28         struct sandbox_reset_test *sbrt = dev_get_priv(dev);
29
30         return reset_get_bulk(dev, &sbrt->bulk);
31 }
32
33 int sandbox_reset_test_assert(struct udevice *dev)
34 {
35         struct sandbox_reset_test *sbrt = dev_get_priv(dev);
36
37         return reset_assert(&sbrt->ctl);
38 }
39
40 int sandbox_reset_test_assert_bulk(struct udevice *dev)
41 {
42         struct sandbox_reset_test *sbrt = dev_get_priv(dev);
43
44         return reset_assert_bulk(&sbrt->bulk);
45 }
46
47 int sandbox_reset_test_deassert(struct udevice *dev)
48 {
49         struct sandbox_reset_test *sbrt = dev_get_priv(dev);
50
51         return reset_deassert(&sbrt->ctl);
52 }
53
54 int sandbox_reset_test_deassert_bulk(struct udevice *dev)
55 {
56         struct sandbox_reset_test *sbrt = dev_get_priv(dev);
57
58         return reset_deassert_bulk(&sbrt->bulk);
59 }
60
61 int sandbox_reset_test_free(struct udevice *dev)
62 {
63         struct sandbox_reset_test *sbrt = dev_get_priv(dev);
64
65         return reset_free(&sbrt->ctl);
66 }
67
68 int sandbox_reset_test_release_bulk(struct udevice *dev)
69 {
70         struct sandbox_reset_test *sbrt = dev_get_priv(dev);
71
72         return reset_release_bulk(&sbrt->bulk);
73 }
74
75 static const struct udevice_id sandbox_reset_test_ids[] = {
76         { .compatible = "sandbox,reset-ctl-test" },
77         { }
78 };
79
80 U_BOOT_DRIVER(sandbox_reset_test) = {
81         .name = "sandbox_reset_test",
82         .id = UCLASS_MISC,
83         .of_match = sandbox_reset_test_ids,
84         .priv_auto_alloc_size = sizeof(struct sandbox_reset_test),
85 };