diff --git a/common/Kconfig b/common/Kconfig
index a7c5ba278a65d02909be7746c75ad84dfd4e250c..4bc3df4e1bb2427e77867bb8efd668ed7ec6e71a 100644
--- a/common/Kconfig
+++ b/common/Kconfig
@@ -469,7 +469,7 @@ config IDENT_STRING
 config LOGLEVEL
 	int "loglevel"
 	default 4
-	range 0 8
+	range 0 10
 	help
 	  All Messages with a loglevel smaller than the console loglevel will
 	  be compiled in. The loglevels are defined as follows:
diff --git a/doc/driver-model/design.rst b/doc/driver-model/design.rst
index 8fd28c0f528b0ef596d9461a24cbf946420755f7..5247ecc2768aedb2e78073fae4a3ccff46d35bbc 100644
--- a/doc/driver-model/design.rst
+++ b/doc/driver-model/design.rst
@@ -231,7 +231,7 @@ You should see something like this::
 What is going on?
 -----------------
 
-Let's start at the top. The demo command is in common/cmd_demo.c. It does
+Let's start at the top. The demo command is in cmd/demo.c. It does
 the usual command processing and then:
 
 .. code-block:: c
@@ -402,7 +402,7 @@ in the board file.
 
 .. code-block:: c
 
-	static const struct dm_demo_cdata red_square = {
+	static const struct dm_demo_pdata red_square = {
 		.colour = "red",
 		.sides = 4.
 	};
@@ -489,12 +489,12 @@ The demo uclass is declared like this:
 
 .. code-block:: c
 
-	U_BOOT_CLASS(demo) = {
+	UCLASS_DRIVER(demo) = {
 		.id		= UCLASS_DEMO,
 	};
 
 It is also possible to specify special methods for probe, etc. The uclass
-numbering comes from include/dm/uclass.h. To add a new uclass, add to the
+numbering comes from include/dm/uclass-id.h. To add a new uclass, add to the
 end of the enum there, then declare your uclass as above.
 
 
diff --git a/drivers/power/regulator/regulator-uclass.c b/drivers/power/regulator/regulator-uclass.c
index 90961de95c656d9790fed48221ddb0a289a3c9c3..c9d26344d78028eb599078d18b4a484c58c89bd6 100644
--- a/drivers/power/regulator/regulator-uclass.c
+++ b/drivers/power/regulator/regulator-uclass.c
@@ -464,6 +464,9 @@ static int regulator_pre_probe(struct udevice *dev)
 	    (uc_pdata->min_uA == uc_pdata->max_uA))
 		uc_pdata->flags |= REGULATOR_FLAG_AUTOSET_UA;
 
+	if (uc_pdata->boot_on)
+		regulator_set_enable(dev, uc_pdata->boot_on);
+
 	return 0;
 }
 
diff --git a/drivers/power/regulator/regulator_common.c b/drivers/power/regulator/regulator_common.c
index 939efb2c0d0d9ace36e74b95e59da8479a71c183..33b73b7c2f5eeb20feef6bee4ea3b22834f94ef3 100644
--- a/drivers/power/regulator/regulator_common.c
+++ b/drivers/power/regulator/regulator_common.c
@@ -12,16 +12,11 @@ int regulator_common_ofdata_to_platdata(struct udevice *dev,
 	struct regulator_common_platdata *dev_pdata, const char *enable_gpio_name)
 {
 	struct gpio_desc *gpio;
-	struct dm_regulator_uclass_platdata *uc_pdata;
 	int flags = GPIOD_IS_OUT;
 	int ret;
 
-	uc_pdata = dev_get_uclass_platdata(dev);
-
 	if (!dev_read_bool(dev, "enable-active-high"))
 		flags |= GPIOD_ACTIVE_LOW;
-	if (uc_pdata->boot_on)
-		flags |= GPIOD_IS_OUT_ACTIVE;
 
 	/* Get optional enable GPIO desc */
 	gpio = &dev_pdata->gpio;