Browse Source

sandbox: Correct operaion of 'reset' command

Currently 'reset' only works with the test device tree. When run without a
device tree, or with the normal device tree, the following error is
displayed:

   Reset not supported on this platform

Fix the driver and the standard device tree to avoid this.

Signed-off-by: Simon Glass <sjg@chromium.org>
Reported-by: Stephen Warren <swarren@nvidia.com>
Tested-by: Stephen Warren <swarren@wwwdotorg.org>
Simon Glass 9 years ago
parent
commit
7bb91dd109
2 changed files with 5 additions and 1 deletions
  1. 4 0
      arch/sandbox/dts/sandbox.dts
  2. 1 1
      drivers/misc/reset_sandbox.c

+ 4 - 0
arch/sandbox/dts/sandbox.dts

@@ -153,6 +153,10 @@
 		};
 	};
 
+	reset@1 {
+		compatible = "sandbox,reset";
+	};
+
 	spi@0 {
 		#address-cells = <1>;
 		#size-cells = <0>;

+ 1 - 1
drivers/misc/reset_sandbox.c

@@ -40,7 +40,7 @@ static int sandbox_reset_request(struct udevice *dev, enum reset_t type)
 	 * (see the U_BOOT_DEVICE() declaration below) should not do anything.
 	 * If we are that device, return an error.
 	 */
-	if (gd->fdt_blob && dev->of_offset == -1)
+	if (state->fdt_fname && dev->of_offset == -1)
 		return -ENODEV;
 
 	switch (type) {