diff --git a/jenkins/lava-submit.jpl b/jenkins/lava-submit.jpl
index 65ac671..dd7d1f4 100644
--- a/jenkins/lava-submit.jpl
+++ b/jenkins/lava-submit.jpl
@@ -12,10 +12,10 @@
   return cause
 }
 
-def submitJobs(fvp_only_cmd, bl2_string, psa_string) {
+def submitJobs(device_type, bl2_string, psa_string) {
   dir("tf-m-ci-scripts") {
     def res = sh(script: """./lava_helper/lava_create_jobs.py \
-      --build-number ${env.BUILD_NUMBER} --output-dir lava_jobs ${fvp_only_cmd}\
+      --build-number ${env.BUILD_NUMBER} --output-dir lava_jobs ${device_type}\
       --compiler ${env.COMPILER} --platform ${env.TARGET_PLATFORM} \
       ${bl2_string} ${psa_string} --build-type ${env.CMAKE_BUILD_TYPE} \
       --jenkins-build-url ${env.BUILD_URL} --proj-config ${env.PROJ_CONFIG} \
@@ -40,11 +40,11 @@
       }
     }
     stage("LAVA") {
-      def fvp_only_cmd = ""
+      def device_type = ""
       def upstreamProject = getUpstreamJob()[0].upstreamProject
       if (upstreamProject == "tf-m-build-and-test") {
-        fvp_only_cmd = "--fvp-only "
-        print("Run test cases only on FVP in per-patch.")
+        device_type = "--physical-board-only "
+        print("Run test cases only on physical boards in per-patch.")
       }
 
       withCredentials([usernamePassword(credentialsId: env.LAVA_CREDENTIALS, passwordVariable: 'LAVA_TOKEN', usernameVariable: 'LAVA_USER')]) {
@@ -59,11 +59,11 @@
           psa_string = "--psa-api-suite ${env.PSA_API_SUITE}"
         }
         try {
-          submitJobs(fvp_only_cmd, bl2_string, psa_string)
+          submitJobs(device_type, bl2_string, psa_string)
         } catch (Exception ex) {
           print("LAVA-Submit failed! Exception: ${ex}")
           print("Try to submit again...")
-          submitJobs(fvp_only_cmd, bl2_string, psa_string)
+          submitJobs(device_type, bl2_string, psa_string)
           currentBuild.setDescription(currentBuild.getDescription() + " Submitted twice!")
         }
       }
