diff --git a/src/plugins/qnx/blackberryapplicationrunner.cpp b/src/plugins/qnx/blackberryapplicationrunner.cpp
index 2f8438821fc466f12c9045d5e8cf8d89ed0e45c0..d69092eb0c228196e2f7ea6bf6f955c6f045c5dc 100644
--- a/src/plugins/qnx/blackberryapplicationrunner.cpp
+++ b/src/plugins/qnx/blackberryapplicationrunner.cpp
@@ -103,11 +103,11 @@ BlackBerryApplicationRunner::BlackBerryApplicationRunner(bool debugMode, BlackBe
     m_environment = buildConfig->environment();
     m_deployCmd = m_environment.searchInPath(QLatin1String(DEPLOY_CMD));
 
-    m_deviceHost = runConfiguration->deployConfiguration()->deviceHost();
-    m_password = runConfiguration->deployConfiguration()->password();
+    BlackBerryDeviceConfiguration::ConstPtr device = BlackBerryDeviceConfiguration::device(target->kit());
+    m_deviceHost = device->sshParameters().host;
+    m_password = device->sshParameters().password;
     m_barPackage = runConfiguration->barPackage();
 
-    BlackBerryDeviceConfiguration::ConstPtr device = BlackBerryDeviceConfiguration::device(target->kit());
     m_sshParams = device->sshParameters();
     // The BlackBerry device always uses key authentication
     m_sshParams.authenticationType = QSsh::SshConnectionParameters::AuthenticationByKey;
diff --git a/src/plugins/qnx/blackberryconnect.cpp b/src/plugins/qnx/blackberryconnect.cpp
index 9a9192a95bd203b2ddc1f5784ff361ab97047a3f..1d241ba9ddb2b7676bfeead76a14670f898ced23 100644
--- a/src/plugins/qnx/blackberryconnect.cpp
+++ b/src/plugins/qnx/blackberryconnect.cpp
@@ -55,8 +55,12 @@ QMap<QString, int> BlackBerryConnect::m_usageCount = QMap<QString, int>();
 
 BlackBerryConnect *BlackBerryConnect::instance(BlackBerryRunConfiguration *runConfig)
 {
-    BlackBerryDeployConfiguration *deployConfig = runConfig->deployConfiguration();
-    QString deviceHost = deployConfig->deviceHost();
+
+    BlackBerryDeviceConfiguration::ConstPtr device
+            = BlackBerryDeviceConfiguration::device(runConfig->target()->kit());
+    QString deviceHost;
+    if (device)
+        deviceHost = device->sshParameters().host;
     if (!m_instances.contains(deviceHost)) {
         m_instances[deviceHost] = new BlackBerryConnect(runConfig);
         m_usageCount[deviceHost] = 1;
@@ -97,11 +101,10 @@ BlackBerryConnect::BlackBerryConnect(BlackBerryRunConfiguration *runConfig)
     m_connectCmd = env.searchInPath(QLatin1String(CONNECT_CMD));
     m_qnxHost = env.value(QLatin1String("QNX_HOST"));
 
-    BlackBerryDeployConfiguration *deployConfig = runConfig->deployConfiguration();
-    m_deviceHost = deployConfig->deviceHost();
-    m_password = deployConfig->password();
-
-    BlackBerryDeviceConfiguration::ConstPtr device = BlackBerryDeviceConfiguration::device(target->kit());
+    BlackBerryDeviceConfiguration::ConstPtr device
+            = BlackBerryDeviceConfiguration::device(target->kit());
+    m_deviceHost = device->sshParameters().host;
+    m_password = device->sshParameters().password;
     m_publicKeyFile = device->sshParameters().privateKeyFile + QLatin1String(".pub");
 
     connect(m_process, SIGNAL(readyReadStandardOutput()), this, SLOT(readStandardOutput()));
diff --git a/src/plugins/qnx/blackberrydeployconfiguration.cpp b/src/plugins/qnx/blackberrydeployconfiguration.cpp
index 91d4f06f90a01ff4877d0d14426cb0e180152e37..9a995dc3a5c2dd16be0812a22855acc88bcd9937 100644
--- a/src/plugins/qnx/blackberrydeployconfiguration.cpp
+++ b/src/plugins/qnx/blackberrydeployconfiguration.cpp
@@ -159,30 +159,6 @@ BlackBerryDeployInformation *BlackBerryDeployConfiguration::deploymentInfo() con
     return info;
 }
 
-QString BlackBerryDeployConfiguration::deviceHost() const
-{
-    BlackBerryDeviceConfiguration::ConstPtr device = BlackBerryDeviceConfiguration::device(target()->kit());
-    if (!device)
-        return QString();
-
-    return device->sshParameters().host;
-}
-
-QString BlackBerryDeployConfiguration::password() const
-{
-    BlackBerryDeviceConfiguration::ConstPtr device = BlackBerryDeviceConfiguration::device(target()->kit());
-    return device->sshParameters().password;
-}
-
-QString BlackBerryDeployConfiguration::deviceName() const
-{
-    BlackBerryDeviceConfiguration::ConstPtr device = BlackBerryDeviceConfiguration::device(target()->kit());
-    if (!device)
-        return QString();
-
-    return device->displayName();
-}
-
 ProjectExplorer::DeployConfigurationWidget *BlackBerryDeployConfiguration::configurationWidget() const
 {
     return new BlackBerryDeployConfigurationWidget;
diff --git a/src/plugins/qnx/blackberrydeployconfiguration.h b/src/plugins/qnx/blackberrydeployconfiguration.h
index ec29a886e509b9140e96f040b4f17e057a4255d7..1ffdff700286c4be094fd5715cf1146585f5df40 100644
--- a/src/plugins/qnx/blackberrydeployconfiguration.h
+++ b/src/plugins/qnx/blackberrydeployconfiguration.h
@@ -58,10 +58,6 @@ public:
 
     BlackBerryDeployInformation *deploymentInfo() const;
 
-    QString deviceHost() const;
-    QString password() const;
-    QString deviceName() const;
-
 protected:
     BlackBerryDeployConfiguration(ProjectExplorer::Target *parent, BlackBerryDeployConfiguration *source);
 
diff --git a/src/plugins/qnx/blackberrydeploystep.cpp b/src/plugins/qnx/blackberrydeploystep.cpp
index 13efd32b4caadc609ccd2d3e7bfa54474bebfd83..82bd1643cbc5d065d2bba0e08dd731773a174a6b 100644
--- a/src/plugins/qnx/blackberrydeploystep.cpp
+++ b/src/plugins/qnx/blackberrydeploystep.cpp
@@ -41,6 +41,7 @@
 #include <projectexplorer/target.h>
 #include <qt4projectmanager/qt4buildconfiguration.h>
 #include <utils/qtcassert.h>
+#include <ssh/sshconnection.h>
 
 #include <QDir>
 
@@ -173,14 +174,20 @@ ProjectExplorer::BuildStepConfigWidget *BlackBerryDeployStep::createConfigWidget
 
 QString BlackBerryDeployStep::deviceHost() const
 {
-    BlackBerryDeployConfiguration *dc = static_cast<BlackBerryDeployConfiguration *>(deployConfiguration());
-    return dc->deviceHost();
+    BlackBerryDeviceConfiguration::ConstPtr device
+            = BlackBerryDeviceConfiguration::device(target()->kit());
+    if (device)
+        return device->sshParameters().host;
+    return QString();
 }
 
 QString BlackBerryDeployStep::password() const
 {
-    BlackBerryDeployConfiguration *dc = static_cast<BlackBerryDeployConfiguration *>(deployConfiguration());
-    return dc->password();
+    BlackBerryDeviceConfiguration::ConstPtr device
+            = BlackBerryDeviceConfiguration::device(target()->kit());
+    if (device)
+        return device->sshParameters().password;
+    return QString();
 }
 
 void BlackBerryDeployStep::raiseError(const QString &errorMessage)
diff --git a/src/plugins/qnx/blackberryrunconfiguration.cpp b/src/plugins/qnx/blackberryrunconfiguration.cpp
index 7d85a445f3767318de35570caf63c2b66fb994fe..b6339d0b17c617e82dbd0e02efa90511d260bfa5 100644
--- a/src/plugins/qnx/blackberryrunconfiguration.cpp
+++ b/src/plugins/qnx/blackberryrunconfiguration.cpp
@@ -87,7 +87,12 @@ QString BlackBerryRunConfiguration::proFilePath() const
 
 QString BlackBerryRunConfiguration::deviceName() const
 {
-    return deployConfiguration()->deviceName();
+    BlackBerryDeviceConfiguration::ConstPtr device
+            = BlackBerryDeviceConfiguration::device(target()->kit());
+    if (!device)
+        return QString();
+
+    return device->displayName();
 }
 
 QString BlackBerryRunConfiguration::barPackage() const