diff --git a/ansible/group_vars/all/ironic b/ansible/group_vars/all/ironic
index beb99a43ae8c3500dad683d40a3096a705b403c1..f9683609ef212ce1629b85ee27e8d32eeca0a8d6 100644
--- a/ansible/group_vars/all/ironic
+++ b/ansible/group_vars/all/ironic
@@ -6,6 +6,14 @@
 kolla_ironic_enabled_hardware_types:
   - ipmi
 
+# Specify the list of bios interfaces to load during service initialization.
+kolla_ironic_enabled_bios_interfaces:
+  - no-bios
+
+# Default bios interface to be used for nodes that do not have bios_interface
+# field set.
+kolla_ironic_default_bios_interface: no-bios
+
 # Specify the list of boot interfaces to load during service initialization.
 kolla_ironic_enabled_boot_interfaces:
   - pxe
diff --git a/ansible/roles/kolla-openstack/defaults/main.yml b/ansible/roles/kolla-openstack/defaults/main.yml
index ccae75eb74d736a66ebc35029f236835a7c626c6..975eb78afd346f6c2e0f8ca4bf21a9425e55e1a5 100644
--- a/ansible/roles/kolla-openstack/defaults/main.yml
+++ b/ansible/roles/kolla-openstack/defaults/main.yml
@@ -163,6 +163,13 @@ kolla_ironic_drivers:
 # Specify the list of hardware types to load during service initialization.
 kolla_ironic_enabled_hardware_types: []
 
+# Specify the list of bios interfaces to load during service initialization.
+kolla_ironic_enabled_bios_interfaces: []
+
+# Default bios interface to be used for nodes that do not have bios_interface
+# field set.
+kolla_ironic_default_bios_interface:
+
 # Specify the list of boot interfaces to load during service initialization.
 kolla_ironic_enabled_boot_interfaces: []
 
diff --git a/ansible/roles/kolla-openstack/templates/ironic.conf.j2 b/ansible/roles/kolla-openstack/templates/ironic.conf.j2
index 217fb2fa4801bd6696707f9f580b614641636a4f..17c869ed572af4b2f89af1ea6b16c55d0eefc9c9 100644
--- a/ansible/roles/kolla-openstack/templates/ironic.conf.j2
+++ b/ansible/roles/kolla-openstack/templates/ironic.conf.j2
@@ -4,7 +4,7 @@
 enabled_hardware_types: {{ kolla_ironic_enabled_hardware_types | join(',') }}
 
 {# Add configuration of enabled and default dynamic driver interfaces. #}
-{% set interfaces=['boot', 'console', 'deploy', 'inspect', 'management',
+{% set interfaces=['boot', 'bios', 'console', 'deploy', 'inspect', 'management',
                    'network', 'power', 'raid', 'rescue', 'storage', 'vendor'] %}
 {% for interface in interfaces %}
 {% if hostvars[inventory_hostname]['kolla_ironic_enabled_' ~ interface ~ '_interfaces'] | default %}
diff --git a/etc/kayobe/ironic.yml b/etc/kayobe/ironic.yml
index 4bfdbe1a6bc3ee56172ed75b5e85928deab0bd89..6083f70154e80da1e3e54d5d74fee096b7c82fd9 100644
--- a/etc/kayobe/ironic.yml
+++ b/etc/kayobe/ironic.yml
@@ -5,6 +5,13 @@
 # Specify the list of hardware types to load during service initialization.
 #kolla_ironic_enabled_hardware_types:
 
+# Specify the list of bios interfaces to load during service initialization.
+#kolla_ironic_enabled_bios_interfaces:
+
+# Default bios interface to be used for nodes that do not have bios_interface
+# field set.
+#kolla_ironic_default_bios_interface:
+
 # Specify the list of boot interfaces to load during service initialization.
 #kolla_ironic_enabled_boot_interfaces:
 
diff --git a/releasenotes/notes/ironic-enabled-bios-interfaces-2b0a17d68126ac09.yaml b/releasenotes/notes/ironic-enabled-bios-interfaces-2b0a17d68126ac09.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..532c3aec98bc5fbd07f2eb9c3c27cc3f12cba5c9
--- /dev/null
+++ b/releasenotes/notes/ironic-enabled-bios-interfaces-2b0a17d68126ac09.yaml
@@ -0,0 +1,5 @@
+---
+features:
+  - |
+    Allow users to modify Ironic `kolla_ironic_enabled_bios_interfaces` and
+    `kolla_ironic_default_bios_interface` in ironic.yml.