瀏覽代碼

dm: Provide a way to shut down driver model

Add a new method which removes and unbinds all drivers.

Signed-off-by: Simon Glass <sjg@chromium.org>
Acked-by: Marek Vasut <marex@denx.de>
Simon Glass 10 年之前
父節點
當前提交
9adbd7a116
共有 2 個文件被更改,包括 16 次插入0 次删除
  1. 8 0
      drivers/core/root.c
  2. 8 0
      include/dm/root.h

+ 8 - 0
drivers/core/root.c

@@ -56,6 +56,14 @@ int dm_init(void)
 	return 0;
 }
 
+int dm_uninit(void)
+{
+	device_remove(dm_root());
+	device_unbind(dm_root());
+
+	return 0;
+}
+
 int dm_scan_platdata(void)
 {
 	int ret;

+ 8 - 0
include/dm/root.h

@@ -50,4 +50,12 @@ int dm_scan_fdt(const void *blob);
  */
 int dm_init(void);
 
+/**
+ * dm_uninit - Uninitialise Driver Model structures
+ *
+ * All devices will be removed and unbound
+ * @return 0 if OK, -ve on error
+ */
+int dm_uninit(void);
+
 #endif