diff --git a/README b/README
index 0dc657d0a583739a817f07f52e0f9572b30c8861..d18df54ec9a14d662f4a6495b45aa92c61aa9962 100644
--- a/README
+++ b/README
@@ -796,18 +796,10 @@ The following options need to be configured:
 - vxWorks boot parameters:
 
 		bootvx constructs a valid bootline using the following
-		environments variables: bootfile, ipaddr, serverip, hostname.
+		environments variables: bootdev, bootfile, ipaddr, netmask,
+		serverip, gatewayip, hostname, othbootargs.
 		It loads the vxWorks image pointed bootfile.
 
-		CONFIG_SYS_VXWORKS_BOOT_DEVICE - The vxworks device name
-		CONFIG_SYS_VXWORKS_MAC_PTR - Ethernet 6 byte MA -address
-		CONFIG_SYS_VXWORKS_SERVERNAME - Name of the server
-		CONFIG_SYS_VXWORKS_BOOT_ADDR - Address of boot parameters
-
-		CONFIG_SYS_VXWORKS_ADD_PARAMS
-
-		Add it at the end of the bootline. E.g "u=username pw=secret"
-
 		Note: If a "bootargs" environment is defined, it will overwride
 		the defaults discussed just above.
 
diff --git a/common/cmd_elf.c b/common/cmd_elf.c
index 6a0937823fba2f5c50e07729f5cb98a47ee2edda..da70ef3e816a95295bec3987ff960092dc365e3b 100644
--- a/common/cmd_elf.c
+++ b/common/cmd_elf.c
@@ -257,68 +257,83 @@ int do_bootvx(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
 
 	/*
 	 * Use bootaddr to find the location in memory that VxWorks
-	 * will look for the bootline string. The default value for
-	 * PowerPC is LOCAL_MEM_LOCAL_ADRS + BOOT_LINE_OFFSET which
-	 * defaults to 0x4200.
+	 * will look for the bootline string. The default value is
+	 * (LOCAL_MEM_LOCAL_ADRS + BOOT_LINE_OFFSET) as defined by
+	 * VxWorks BSP. For example, on PowerPC it defaults to 0x4200.
 	 */
 	tmp = getenv("bootaddr");
-	if (!tmp)
-		bootaddr = CONFIG_SYS_VXWORKS_BOOT_ADDR;
-	else
-		bootaddr = simple_strtoul(tmp, NULL, 16);
-
-	/*
-	 * Check to see if the bootline is defined in the 'bootargs'
-	 * parameter. If it is not defined, we may be able to
-	 * construct the info.
-	 */
-	bootline = getenv("bootargs");
-	if (bootline) {
-		memcpy((void *)bootaddr, bootline,
-		       max(strlen(bootline), (size_t)255));
-		flush_cache(bootaddr, max(strlen(bootline), (size_t)255));
+	if (!tmp) {
+		printf("## VxWorks bootline address not specified\n");
 	} else {
-		ptr = sprintf(build_buf, CONFIG_SYS_VXWORKS_BOOT_DEVICE);
-		tmp = getenv("bootfile");
-		if (tmp)
-			ptr += sprintf(build_buf + ptr, "%s:%s ",
-				       CONFIG_SYS_VXWORKS_SERVERNAME, tmp);
-		else
-			ptr += sprintf(build_buf + ptr, "%s:file ",
-				       CONFIG_SYS_VXWORKS_SERVERNAME);
+		bootaddr = simple_strtoul(tmp, NULL, 16);
 
-		tmp = getenv("ipaddr");
-		if (tmp) {
-			ptr += sprintf(build_buf + ptr, "e=%s", tmp);
-			tmp = getenv("netmask");
+		/*
+		 * Check to see if the bootline is defined in the 'bootargs'
+		 * parameter. If it is not defined, we may be able to
+		 * construct the info.
+		 */
+		bootline = getenv("bootargs");
+		if (bootline) {
+			memcpy((void *)bootaddr, bootline,
+			       max(strlen(bootline), (size_t)255));
+			flush_cache(bootaddr, max(strlen(bootline),
+						  (size_t)255));
+		} else {
+			tmp = getenv("bootdev");
+			if (tmp)
+				ptr = sprintf(build_buf, tmp);
+			else
+				printf("## VxWorks boot device not specified\n");
+
+			tmp = getenv("bootfile");
+			if (tmp)
+				ptr += sprintf(build_buf + ptr,
+					       "host:%s ", tmp);
+			else
+				ptr += sprintf(build_buf + ptr,
+					       "host:vxWorks ");
+
+			/*
+			 * The following parameters are only needed if 'bootdev'
+			 * is an ethernet device, otherwise they are optional.
+			 */
+			tmp = getenv("ipaddr");
 			if (tmp) {
-				__be32 addr = getenv_ip("netmask").s_addr;
-				ptr += sprintf(build_buf + ptr, ":%08x ",
-					       ntohl(addr));
-			} else {
-				ptr += sprintf(build_buf + ptr, " ");
+				ptr += sprintf(build_buf + ptr, "e=%s", tmp);
+				tmp = getenv("netmask");
+				if (tmp) {
+					u32 mask = getenv_ip("netmask").s_addr;
+					ptr += sprintf(build_buf + ptr,
+						       ":%08x ", ntohl(mask));
+				} else {
+					ptr += sprintf(build_buf + ptr, " ");
+				}
 			}
-		}
 
-		tmp = getenv("serverip");
-		if (tmp)
-			ptr += sprintf(build_buf + ptr, "h=%s ", tmp);
+			tmp = getenv("serverip");
+			if (tmp)
+				ptr += sprintf(build_buf + ptr, "h=%s ", tmp);
 
-		tmp = getenv("gatewayip");
-		if (tmp)
-			ptr += sprintf(build_buf + ptr, "g=%s ", tmp);
+			tmp = getenv("gatewayip");
+			if (tmp)
+				ptr += sprintf(build_buf + ptr, "g=%s ", tmp);
 
-		tmp = getenv("hostname");
-		if (tmp)
-			ptr += sprintf(build_buf + ptr, "tn=%s ", tmp);
+			tmp = getenv("hostname");
+			if (tmp)
+				ptr += sprintf(build_buf + ptr, "tn=%s ", tmp);
 
-#ifdef CONFIG_SYS_VXWORKS_ADD_PARAMS
-		ptr += sprintf(build_buf + ptr, CONFIG_SYS_VXWORKS_ADD_PARAMS);
-#endif
+			tmp = getenv("othbootargs");
+			if (tmp)
+				ptr += sprintf(build_buf + ptr, tmp);
+
+			memcpy((void *)bootaddr, build_buf,
+			       max(strlen(build_buf), (size_t)255));
+			flush_cache(bootaddr, max(strlen(build_buf),
+						  (size_t)255));
+		}
 
-		memcpy((void *)bootaddr, build_buf,
-		       max(strlen(build_buf), (size_t)255));
-		flush_cache(bootaddr, max(strlen(build_buf), (size_t)255));
+		printf("## Using bootline (@ 0x%lx): %s\n", bootaddr,
+		       (char *)bootaddr);
 	}
 
 	/*
@@ -331,8 +346,6 @@ int do_bootvx(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
 	else
 		puts("## Not an ELF image, assuming binary\n");
 
-	printf("## Using bootline (@ 0x%lx): %s\n", bootaddr,
-	       (char *)bootaddr);
 	printf("## Starting vxWorks at 0x%08lx ...\n", addr);
 
 	dcache_disable();
diff --git a/include/vxworks.h b/include/vxworks.h
index 122043c941e9b17b41c6d10df4b8449aa18b458b..297a70f5199e853ffe0d420eec7b97ac84d0ffcf 100644
--- a/include/vxworks.h
+++ b/include/vxworks.h
@@ -13,26 +13,4 @@ void boot_prep_vxworks(bootm_headers_t *images);
 void boot_jump_vxworks(bootm_headers_t *images);
 void do_bootvx_fdt(bootm_headers_t *images);
 
-/*
- * Use bootaddr to find the location in memory that VxWorks
- * will look for the bootline string. The default value for
- * PowerPC is LOCAL_MEM_LOCAL_ADRS + BOOT_LINE_OFFSET which
- * defaults to 0x4200
- */
-#ifndef CONFIG_SYS_VXWORKS_BOOT_ADDR
-#define CONFIG_SYS_VXWORKS_BOOT_ADDR 0x4200
-#endif
-
-#ifndef CONFIG_SYS_VXWORKS_BOOT_DEVICE
-#if defined(CONFIG_4xx)
-#define		CONFIG_SYS_VXWORKS_BOOT_DEVICE "emac(0,0)"
-#else
-#define		CONFIG_SYS_VXWORKS_BOOT_DEVICE "eth(0,0)"
-#endif
-#endif
-
-#ifndef CONFIG_SYS_VXWORKS_SERVERNAME
-#define CONFIG_SYS_VXWORKS_SERVERNAME	"srv"
-#endif
-
 #endif