diff --git a/src/store/modules/Control/BootSettingsStore.js b/src/store/modules/Control/BootSettingsStore.js
index 8da586a..655c79e 100644
--- a/src/store/modules/Control/BootSettingsStore.js
+++ b/src/store/modules/Control/BootSettingsStore.js
@@ -30,8 +30,8 @@
     setTpmPolicy: (state, tpmEnabled) => (state.tpmEnabled = tpmEnabled)
   },
   actions: {
-    getBootSettings({ commit }) {
-      api
+    async getBootSettings({ commit }) {
+      return await api
         .get('/redfish/v1/Systems/system/')
         .then(({ data: { Boot } }) => {
           commit(
@@ -70,9 +70,9 @@
           return error;
         });
     },
-    getTpmPolicy({ commit }) {
+    async getTpmPolicy({ commit }) {
       // TODO: switch to Redfish when available
-      api
+      return await api
         .get('/xyz/openbmc_project/control/host0/TPMEnable')
         .then(({ data: { data: { TPMEnable } } }) =>
           commit('setTpmPolicy', TPMEnable)
diff --git a/src/views/Control/ServerPowerOperations/BootSettings.vue b/src/views/Control/ServerPowerOperations/BootSettings.vue
index 0558a1b..16d567a 100644
--- a/src/views/Control/ServerPowerOperations/BootSettings.vue
+++ b/src/views/Control/ServerPowerOperations/BootSettings.vue
@@ -60,10 +60,11 @@
 <script>
 import { mapState } from 'vuex';
 import BVToastMixin from '../../../components/Mixins/BVToastMixin';
+import LoadingBarMixin from '@/components/Mixins/LoadingBarMixin';
 
 export default {
   name: 'BootSettings',
-  mixins: [BVToastMixin],
+  mixins: [BVToastMixin, LoadingBarMixin],
   data() {
     return {
       form: {
@@ -102,11 +103,14 @@
     }
   },
   created() {
-    this.$store.dispatch('hostBootSettings/getBootSettings');
-    this.$store.dispatch('hostBootSettings/getTpmPolicy');
+    Promise.all([
+      this.$store.dispatch('hostBootSettings/getBootSettings'),
+      this.$store.dispatch('hostBootSettings/getTpmPolicy')
+    ]).finally(() => this.endLoader());
   },
   methods: {
     handleSubmit() {
+      this.startLoader();
       const bootSettingsChanged =
         this.$v.form.bootOption.$dirty || this.$v.form.oneTimeBoot.$dirty;
       const tpmPolicyChanged = this.$v.form.tpmPolicyOn.$dirty;
@@ -130,6 +134,7 @@
         .catch(({ message }) => this.errorToast(message))
         .finally(() => {
           this.$v.form.$reset();
+          this.endLoader();
         });
     },
     onChangeSelect(selectedOption) {
diff --git a/src/views/Control/ServerPowerOperations/ServerPowerOperations.vue b/src/views/Control/ServerPowerOperations/ServerPowerOperations.vue
index 01fc661..441217f 100644
--- a/src/views/Control/ServerPowerOperations/ServerPowerOperations.vue
+++ b/src/views/Control/ServerPowerOperations/ServerPowerOperations.vue
@@ -108,11 +108,12 @@
 import PageSection from '../../../components/Global/PageSection';
 import BVToastMixin from '../../../components/Mixins/BVToastMixin';
 import BootSettings from './BootSettings';
+import LoadingBarMixin from '@/components/Mixins/LoadingBarMixin';
 
 export default {
   name: 'ServerPowerOperations',
   components: { PageTitle, PageSection, BootSettings },
-  mixins: [BVToastMixin],
+  mixins: [BVToastMixin, LoadingBarMixin],
   data() {
     return {
       form: {
@@ -132,6 +133,13 @@
       return this.$store.getters['hostBootSettings/overrideEnabled'];
     }
   },
+  created() {
+    this.startLoader();
+  },
+  beforeRouteLeave(to, from, next) {
+    this.hideLoader();
+    next();
+  },
   methods: {
     powerOn() {
       this.$store.dispatch('controls/hostPowerOn');
