diff --git a/.github/actions/get-bus/action.yaml b/.github/actions/get-bus/action.yaml
new file mode 100644
index 0000000..01daf23
--- /dev/null
+++ b/.github/actions/get-bus/action.yaml
@@ -0,0 +1,16 @@
+name: 'Get Bus Type'
+description: 'Get Bus Type'
+runs:
+  using: "composite"
+  steps:
+    - name: Check out repository code
+      uses: actions/checkout@v4
+    - name: Extract info from yaml
+      uses: mikefarah/yq@master
+      id: get_bus_info
+      with:
+        cmd: yq '.info.bus.[]' './${{ github.event.repository.name }}.yaml'
+    - name: Map to Make options
+      shell: bash
+      run: |
+        echo ${{ steps.get_bus_info.outputs.result }}
diff --git a/.github/scripts/get_bus.py b/.github/scripts/get_bus.py
new file mode 100644
index 0000000..d15f091
--- /dev/null
+++ b/.github/scripts/get_bus.py
@@ -0,0 +1,18 @@
+import yaml
+
+bus_mapping = {
+    "generic": "APB AHB WISHBONE",
+    "WB": "WISHBONE",
+    "AHBL": "AHB",
+    "APB": "APB",
+}
+supported_buses = []
+
+stream = open("/home/karim/work/EF_GPIO/EF_GPIO8.yaml")
+data = yaml.load(stream, Loader=yaml.Loader)
+bus_info = data["info"]["bus"]
+for bus in bus_info:
+    supported_buses.append(bus_mapping[bus])
+
+print(" ".join(supported_buses))
+stream.close()