diff --git a/data/chips/STM32H503CB.json b/data/chips/STM32H503CB.json
index 6ddba5f..b251164 100644
--- a/data/chips/STM32H503CB.json
+++ b/data/chips/STM32H503CB.json
@@ -1677,6 +1677,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073755136,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v2",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H503EB.json b/data/chips/STM32H503EB.json
index ecc94ed..7055afa 100644
--- a/data/chips/STM32H503EB.json
+++ b/data/chips/STM32H503EB.json
@@ -1475,6 +1475,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073755136,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v2",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H503KB.json b/data/chips/STM32H503KB.json
index e9db936..1ee646c 100644
--- a/data/chips/STM32H503KB.json
+++ b/data/chips/STM32H503KB.json
@@ -1564,6 +1564,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073755136,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v2",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H503RB.json b/data/chips/STM32H503RB.json
index 84264b5..561f827 100644
--- a/data/chips/STM32H503RB.json
+++ b/data/chips/STM32H503RB.json
@@ -1877,6 +1877,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073755136,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v2",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H723VE.json b/data/chips/STM32H723VE.json
index 1eac80c..fd3f053 100644
--- a/data/chips/STM32H723VE.json
+++ b/data/chips/STM32H723VE.json
@@ -4015,6 +4015,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -4049,6 +4054,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H723VG.json b/data/chips/STM32H723VG.json
index 5a20290..d79d3fa 100644
--- a/data/chips/STM32H723VG.json
+++ b/data/chips/STM32H723VG.json
@@ -4015,6 +4015,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -4049,6 +4054,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H723ZE.json b/data/chips/STM32H723ZE.json
index c0bf20f..2063290 100644
--- a/data/chips/STM32H723ZE.json
+++ b/data/chips/STM32H723ZE.json
@@ -4602,6 +4602,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -4636,6 +4641,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H723ZG.json b/data/chips/STM32H723ZG.json
index 5154761..42e63e4 100644
--- a/data/chips/STM32H723ZG.json
+++ b/data/chips/STM32H723ZG.json
@@ -4602,6 +4602,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -4636,6 +4641,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H725AE.json b/data/chips/STM32H725AE.json
index 906e5d6..831bdf5 100644
--- a/data/chips/STM32H725AE.json
+++ b/data/chips/STM32H725AE.json
@@ -4768,6 +4768,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -4802,6 +4807,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H725AG.json b/data/chips/STM32H725AG.json
index a046c99..4677042 100644
--- a/data/chips/STM32H725AG.json
+++ b/data/chips/STM32H725AG.json
@@ -4774,6 +4774,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -4808,6 +4813,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H725IE.json b/data/chips/STM32H725IE.json
index fc63ae6..5db567e 100644
--- a/data/chips/STM32H725IE.json
+++ b/data/chips/STM32H725IE.json
@@ -4943,6 +4943,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -4977,6 +4982,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H725IG.json b/data/chips/STM32H725IG.json
index 932f893..48c4d56 100644
--- a/data/chips/STM32H725IG.json
+++ b/data/chips/STM32H725IG.json
@@ -4949,6 +4949,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -4983,6 +4988,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H725RE.json b/data/chips/STM32H725RE.json
index aaa7eb3..c48f5e1 100644
--- a/data/chips/STM32H725RE.json
+++ b/data/chips/STM32H725RE.json
@@ -2859,6 +2859,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H725RG.json b/data/chips/STM32H725RG.json
index ff240a0..d60b27c 100644
--- a/data/chips/STM32H725RG.json
+++ b/data/chips/STM32H725RG.json
@@ -2865,6 +2865,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H725VE.json b/data/chips/STM32H725VE.json
index 4f5b36d..261e4ce 100644
--- a/data/chips/STM32H725VE.json
+++ b/data/chips/STM32H725VE.json
@@ -3900,6 +3900,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -3934,6 +3939,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H725VG.json b/data/chips/STM32H725VG.json
index b687215..db272f8 100644
--- a/data/chips/STM32H725VG.json
+++ b/data/chips/STM32H725VG.json
@@ -3910,6 +3910,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -3944,6 +3949,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H725ZE.json b/data/chips/STM32H725ZE.json
index 9e1f34e..b01f663 100644
--- a/data/chips/STM32H725ZE.json
+++ b/data/chips/STM32H725ZE.json
@@ -4344,6 +4344,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -4378,6 +4383,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H725ZG.json b/data/chips/STM32H725ZG.json
index 64462d9..f467cb6 100644
--- a/data/chips/STM32H725ZG.json
+++ b/data/chips/STM32H725ZG.json
@@ -4350,6 +4350,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -4384,6 +4389,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H730AB.json b/data/chips/STM32H730AB.json
index d02d6a2..8183329 100644
--- a/data/chips/STM32H730AB.json
+++ b/data/chips/STM32H730AB.json
@@ -4859,6 +4859,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -4893,6 +4898,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H730IB.json b/data/chips/STM32H730IB.json
index 40a5e04..3094f5a 100644
--- a/data/chips/STM32H730IB.json
+++ b/data/chips/STM32H730IB.json
@@ -5034,6 +5034,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -5068,6 +5073,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H730VB.json b/data/chips/STM32H730VB.json
index 48dc9d4..ffa8030 100644
--- a/data/chips/STM32H730VB.json
+++ b/data/chips/STM32H730VB.json
@@ -4100,6 +4100,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -4134,6 +4139,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H730ZB.json b/data/chips/STM32H730ZB.json
index 8bcaf39..6a9179c 100644
--- a/data/chips/STM32H730ZB.json
+++ b/data/chips/STM32H730ZB.json
@@ -4687,6 +4687,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -4721,6 +4726,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H733VG.json b/data/chips/STM32H733VG.json
index 6338927..8f489e8 100644
--- a/data/chips/STM32H733VG.json
+++ b/data/chips/STM32H733VG.json
@@ -4100,6 +4100,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -4134,6 +4139,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H733ZG.json b/data/chips/STM32H733ZG.json
index c69ec2e..666be85 100644
--- a/data/chips/STM32H733ZG.json
+++ b/data/chips/STM32H733ZG.json
@@ -4687,6 +4687,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -4721,6 +4726,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H735AG.json b/data/chips/STM32H735AG.json
index 4e25ec6..bca806e 100644
--- a/data/chips/STM32H735AG.json
+++ b/data/chips/STM32H735AG.json
@@ -4859,6 +4859,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -4893,6 +4898,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H735IG.json b/data/chips/STM32H735IG.json
index f67c69a..8f5a62c 100644
--- a/data/chips/STM32H735IG.json
+++ b/data/chips/STM32H735IG.json
@@ -5034,6 +5034,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -5068,6 +5073,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H735RG.json b/data/chips/STM32H735RG.json
index deecb09..6c5d7b4 100644
--- a/data/chips/STM32H735RG.json
+++ b/data/chips/STM32H735RG.json
@@ -2950,6 +2950,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H735VG.json b/data/chips/STM32H735VG.json
index 63585e0..5dbf930 100644
--- a/data/chips/STM32H735VG.json
+++ b/data/chips/STM32H735VG.json
@@ -3995,6 +3995,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -4029,6 +4034,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H735ZG.json b/data/chips/STM32H735ZG.json
index 6284e49..a293a04 100644
--- a/data/chips/STM32H735ZG.json
+++ b/data/chips/STM32H735ZG.json
@@ -4435,6 +4435,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -4469,6 +4474,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H742AG.json b/data/chips/STM32H742AG.json
index 82c60e4..4483e8b 100644
--- a/data/chips/STM32H742AG.json
+++ b/data/chips/STM32H742AG.json
@@ -3885,6 +3885,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -3927,6 +3932,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H742AI.json b/data/chips/STM32H742AI.json
index 17d8d64..efa4a08 100644
--- a/data/chips/STM32H742AI.json
+++ b/data/chips/STM32H742AI.json
@@ -3896,6 +3896,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -3938,6 +3943,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H742BG.json b/data/chips/STM32H742BG.json
index 4287bd0..898cd34 100644
--- a/data/chips/STM32H742BG.json
+++ b/data/chips/STM32H742BG.json
@@ -4030,6 +4030,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -4072,6 +4077,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H742BI.json b/data/chips/STM32H742BI.json
index ab17755..37ba9e9 100644
--- a/data/chips/STM32H742BI.json
+++ b/data/chips/STM32H742BI.json
@@ -4041,6 +4041,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -4083,6 +4088,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H742IG.json b/data/chips/STM32H742IG.json
index 7b84c3d..3fbdea5 100644
--- a/data/chips/STM32H742IG.json
+++ b/data/chips/STM32H742IG.json
@@ -4034,6 +4034,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -4076,6 +4081,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H742II.json b/data/chips/STM32H742II.json
index 801e416..d8f09b3 100644
--- a/data/chips/STM32H742II.json
+++ b/data/chips/STM32H742II.json
@@ -4045,6 +4045,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -4087,6 +4092,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H742VG.json b/data/chips/STM32H742VG.json
index 90d17b5..67acfc9 100644
--- a/data/chips/STM32H742VG.json
+++ b/data/chips/STM32H742VG.json
@@ -3344,6 +3344,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -3386,6 +3391,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H742VI.json b/data/chips/STM32H742VI.json
index d90a664..936e150 100644
--- a/data/chips/STM32H742VI.json
+++ b/data/chips/STM32H742VI.json
@@ -3355,6 +3355,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -3397,6 +3402,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H742XG.json b/data/chips/STM32H742XG.json
index 1d6912a..6a3da7b 100644
--- a/data/chips/STM32H742XG.json
+++ b/data/chips/STM32H742XG.json
@@ -4094,6 +4094,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -4136,6 +4141,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H742XI.json b/data/chips/STM32H742XI.json
index 157f031..bcb950f 100644
--- a/data/chips/STM32H742XI.json
+++ b/data/chips/STM32H742XI.json
@@ -4105,6 +4105,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -4147,6 +4152,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H742ZG.json b/data/chips/STM32H742ZG.json
index f85793a..8089829 100644
--- a/data/chips/STM32H742ZG.json
+++ b/data/chips/STM32H742ZG.json
@@ -3712,6 +3712,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -3754,6 +3759,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H742ZI.json b/data/chips/STM32H742ZI.json
index baf8be5..6c6d533 100644
--- a/data/chips/STM32H742ZI.json
+++ b/data/chips/STM32H742ZI.json
@@ -3723,6 +3723,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -3765,6 +3770,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H743AG.json b/data/chips/STM32H743AG.json
index ef84519..ffd550c 100644
--- a/data/chips/STM32H743AG.json
+++ b/data/chips/STM32H743AG.json
@@ -4310,6 +4310,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -4352,6 +4357,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H743AI.json b/data/chips/STM32H743AI.json
index d126c65..d05e89a 100644
--- a/data/chips/STM32H743AI.json
+++ b/data/chips/STM32H743AI.json
@@ -4321,6 +4321,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -4363,6 +4368,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H743BG.json b/data/chips/STM32H743BG.json
index 59e9206..23a9698 100644
--- a/data/chips/STM32H743BG.json
+++ b/data/chips/STM32H743BG.json
@@ -4635,6 +4635,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -4677,6 +4682,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H743BI.json b/data/chips/STM32H743BI.json
index 134f59a..e0d5179 100644
--- a/data/chips/STM32H743BI.json
+++ b/data/chips/STM32H743BI.json
@@ -4646,6 +4646,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -4688,6 +4693,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H743IG.json b/data/chips/STM32H743IG.json
index a92ca35..236fef9 100644
--- a/data/chips/STM32H743IG.json
+++ b/data/chips/STM32H743IG.json
@@ -4479,6 +4479,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -4521,6 +4526,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H743II.json b/data/chips/STM32H743II.json
index 2bf53a9..2561c00 100644
--- a/data/chips/STM32H743II.json
+++ b/data/chips/STM32H743II.json
@@ -4490,6 +4490,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -4532,6 +4537,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H743VG.json b/data/chips/STM32H743VG.json
index 33fa627..7904bbd 100644
--- a/data/chips/STM32H743VG.json
+++ b/data/chips/STM32H743VG.json
@@ -3624,6 +3624,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -3666,6 +3671,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H743VI.json b/data/chips/STM32H743VI.json
index ca2dac4..3d22f9f 100644
--- a/data/chips/STM32H743VI.json
+++ b/data/chips/STM32H743VI.json
@@ -3635,6 +3635,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -3677,6 +3682,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H743XG.json b/data/chips/STM32H743XG.json
index c818848..cad2f40 100644
--- a/data/chips/STM32H743XG.json
+++ b/data/chips/STM32H743XG.json
@@ -4699,6 +4699,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -4741,6 +4746,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H743XI.json b/data/chips/STM32H743XI.json
index 082acb2..ac3540a 100644
--- a/data/chips/STM32H743XI.json
+++ b/data/chips/STM32H743XI.json
@@ -4710,6 +4710,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -4752,6 +4757,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H743ZG.json b/data/chips/STM32H743ZG.json
index 642ad02..f0e244f 100644
--- a/data/chips/STM32H743ZG.json
+++ b/data/chips/STM32H743ZG.json
@@ -4047,6 +4047,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -4089,6 +4094,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H743ZI.json b/data/chips/STM32H743ZI.json
index 499b13e..dcc1c4c 100644
--- a/data/chips/STM32H743ZI.json
+++ b/data/chips/STM32H743ZI.json
@@ -4058,6 +4058,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -4100,6 +4105,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H745BG.json b/data/chips/STM32H745BG.json
index 18aa8ae..3f23aac 100644
--- a/data/chips/STM32H745BG.json
+++ b/data/chips/STM32H745BG.json
@@ -4521,6 +4521,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -4563,6 +4568,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -14339,6 +14349,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -14381,6 +14396,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H745BI.json b/data/chips/STM32H745BI.json
index 0431226..5b178b9 100644
--- a/data/chips/STM32H745BI.json
+++ b/data/chips/STM32H745BI.json
@@ -4532,6 +4532,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -4574,6 +4579,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -14350,6 +14360,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -14392,6 +14407,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H745IG.json b/data/chips/STM32H745IG.json
index b8fd67a..57104bf 100644
--- a/data/chips/STM32H745IG.json
+++ b/data/chips/STM32H745IG.json
@@ -4419,6 +4419,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -4461,6 +4466,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -13979,6 +13989,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -14021,6 +14036,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H745II.json b/data/chips/STM32H745II.json
index 389b52b..003e406 100644
--- a/data/chips/STM32H745II.json
+++ b/data/chips/STM32H745II.json
@@ -4430,6 +4430,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -4472,6 +4477,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -13990,6 +14000,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -14032,6 +14047,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H745XG.json b/data/chips/STM32H745XG.json
index 25c4b82..1fa0d41 100644
--- a/data/chips/STM32H745XG.json
+++ b/data/chips/STM32H745XG.json
@@ -4690,6 +4690,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -4732,6 +4737,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -14677,6 +14687,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -14719,6 +14734,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H745XI.json b/data/chips/STM32H745XI.json
index cfd1401..3af3bf5 100644
--- a/data/chips/STM32H745XI.json
+++ b/data/chips/STM32H745XI.json
@@ -4701,6 +4701,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -4743,6 +4748,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -14688,6 +14698,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -14730,6 +14745,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H745ZG.json b/data/chips/STM32H745ZG.json
index 1014ac5..21bd395 100644
--- a/data/chips/STM32H745ZG.json
+++ b/data/chips/STM32H745ZG.json
@@ -3891,6 +3891,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -3933,6 +3938,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -12644,6 +12654,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -12686,6 +12701,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H745ZI.json b/data/chips/STM32H745ZI.json
index 56ac5cc..63d8ebf 100644
--- a/data/chips/STM32H745ZI.json
+++ b/data/chips/STM32H745ZI.json
@@ -3902,6 +3902,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -3944,6 +3949,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -12655,6 +12665,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -12697,6 +12712,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H747AG.json b/data/chips/STM32H747AG.json
index 84d864e..20f6421 100644
--- a/data/chips/STM32H747AG.json
+++ b/data/chips/STM32H747AG.json
@@ -4044,6 +4044,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -4086,6 +4091,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -13016,6 +13026,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -13058,6 +13073,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H747AI.json b/data/chips/STM32H747AI.json
index 34d5e9c..8069493 100644
--- a/data/chips/STM32H747AI.json
+++ b/data/chips/STM32H747AI.json
@@ -4055,6 +4055,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -4097,6 +4102,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -13027,6 +13037,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -13069,6 +13084,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H747BG.json b/data/chips/STM32H747BG.json
index 7d38907..d0e11c3 100644
--- a/data/chips/STM32H747BG.json
+++ b/data/chips/STM32H747BG.json
@@ -4482,6 +4482,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -4524,6 +4529,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -14129,6 +14139,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -14171,6 +14186,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H747BI.json b/data/chips/STM32H747BI.json
index d902630..58066e7 100644
--- a/data/chips/STM32H747BI.json
+++ b/data/chips/STM32H747BI.json
@@ -4493,6 +4493,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -4535,6 +4540,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -14140,6 +14150,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -14182,6 +14197,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H747IG.json b/data/chips/STM32H747IG.json
index 10ab6b4..df71dec 100644
--- a/data/chips/STM32H747IG.json
+++ b/data/chips/STM32H747IG.json
@@ -4044,6 +4044,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -4086,6 +4091,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -13016,6 +13026,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -13058,6 +13073,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H747II.json b/data/chips/STM32H747II.json
index 62b5390..883deb4 100644
--- a/data/chips/STM32H747II.json
+++ b/data/chips/STM32H747II.json
@@ -4055,6 +4055,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -4097,6 +4102,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -13027,6 +13037,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -13069,6 +13084,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H747XG.json b/data/chips/STM32H747XG.json
index 39de366..4c843ba 100644
--- a/data/chips/STM32H747XG.json
+++ b/data/chips/STM32H747XG.json
@@ -4696,6 +4696,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -4738,6 +4743,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -14687,6 +14697,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -14729,6 +14744,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H747XI.json b/data/chips/STM32H747XI.json
index f461de6..0dc7685 100644
--- a/data/chips/STM32H747XI.json
+++ b/data/chips/STM32H747XI.json
@@ -4707,6 +4707,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -4749,6 +4754,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -14698,6 +14708,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -14740,6 +14755,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H747ZI.json b/data/chips/STM32H747ZI.json
index 15aaf34..af74cc2 100644
--- a/data/chips/STM32H747ZI.json
+++ b/data/chips/STM32H747ZI.json
@@ -3833,6 +3833,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -3875,6 +3880,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -12262,6 +12272,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -12304,6 +12319,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H750IB.json b/data/chips/STM32H750IB.json
index 85c4156..21684fd 100644
--- a/data/chips/STM32H750IB.json
+++ b/data/chips/STM32H750IB.json
@@ -4540,6 +4540,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -4582,6 +4587,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H750VB.json b/data/chips/STM32H750VB.json
index ce20efb..cb9c6f7 100644
--- a/data/chips/STM32H750VB.json
+++ b/data/chips/STM32H750VB.json
@@ -3681,6 +3681,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -3723,6 +3728,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H750XB.json b/data/chips/STM32H750XB.json
index 8dea6e8..7cbda0f 100644
--- a/data/chips/STM32H750XB.json
+++ b/data/chips/STM32H750XB.json
@@ -4760,6 +4760,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -4802,6 +4807,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H750ZB.json b/data/chips/STM32H750ZB.json
index fcc9d45..65bff68 100644
--- a/data/chips/STM32H750ZB.json
+++ b/data/chips/STM32H750ZB.json
@@ -4096,6 +4096,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -4138,6 +4143,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H753AI.json b/data/chips/STM32H753AI.json
index c157f40..38459af 100644
--- a/data/chips/STM32H753AI.json
+++ b/data/chips/STM32H753AI.json
@@ -4400,6 +4400,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -4442,6 +4447,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H753BI.json b/data/chips/STM32H753BI.json
index 52ca90d..a969799 100644
--- a/data/chips/STM32H753BI.json
+++ b/data/chips/STM32H753BI.json
@@ -4725,6 +4725,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -4767,6 +4772,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H753II.json b/data/chips/STM32H753II.json
index ea5174f..baf81e4 100644
--- a/data/chips/STM32H753II.json
+++ b/data/chips/STM32H753II.json
@@ -4569,6 +4569,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -4611,6 +4616,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H753VI.json b/data/chips/STM32H753VI.json
index e2b3b82..7286367 100644
--- a/data/chips/STM32H753VI.json
+++ b/data/chips/STM32H753VI.json
@@ -3714,6 +3714,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -3756,6 +3761,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H753XI.json b/data/chips/STM32H753XI.json
index b901f5a..905bc62 100644
--- a/data/chips/STM32H753XI.json
+++ b/data/chips/STM32H753XI.json
@@ -4789,6 +4789,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -4831,6 +4836,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H753ZI.json b/data/chips/STM32H753ZI.json
index ba74305..3f32e84 100644
--- a/data/chips/STM32H753ZI.json
+++ b/data/chips/STM32H753ZI.json
@@ -4137,6 +4137,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -4179,6 +4184,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H755BI.json b/data/chips/STM32H755BI.json
index 43dac0d..80f3c28 100644
--- a/data/chips/STM32H755BI.json
+++ b/data/chips/STM32H755BI.json
@@ -4611,6 +4611,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -4653,6 +4658,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -14506,6 +14516,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -14548,6 +14563,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H755II.json b/data/chips/STM32H755II.json
index 2a66389..483348c 100644
--- a/data/chips/STM32H755II.json
+++ b/data/chips/STM32H755II.json
@@ -4509,6 +4509,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -4551,6 +4556,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -14146,6 +14156,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -14188,6 +14203,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H755XI.json b/data/chips/STM32H755XI.json
index 7c9b548..e45236c 100644
--- a/data/chips/STM32H755XI.json
+++ b/data/chips/STM32H755XI.json
@@ -4780,6 +4780,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -4822,6 +4827,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -14844,6 +14854,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -14886,6 +14901,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H755ZI.json b/data/chips/STM32H755ZI.json
index 6b4307d..7f1ea3b 100644
--- a/data/chips/STM32H755ZI.json
+++ b/data/chips/STM32H755ZI.json
@@ -3981,6 +3981,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -4023,6 +4028,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -12811,6 +12821,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -12853,6 +12868,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H757AI.json b/data/chips/STM32H757AI.json
index a2d1a90..eaff925 100644
--- a/data/chips/STM32H757AI.json
+++ b/data/chips/STM32H757AI.json
@@ -4134,6 +4134,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -4176,6 +4181,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -13183,6 +13193,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -13225,6 +13240,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H757BI.json b/data/chips/STM32H757BI.json
index 5042d0c..5a259a5 100644
--- a/data/chips/STM32H757BI.json
+++ b/data/chips/STM32H757BI.json
@@ -4572,6 +4572,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -4614,6 +4619,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -14296,6 +14306,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -14338,6 +14353,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H757II.json b/data/chips/STM32H757II.json
index 3d0430c..03271ba 100644
--- a/data/chips/STM32H757II.json
+++ b/data/chips/STM32H757II.json
@@ -4134,6 +4134,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -4176,6 +4181,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -13183,6 +13193,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -13225,6 +13240,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H757XI.json b/data/chips/STM32H757XI.json
index 7aba8c1..a330028 100644
--- a/data/chips/STM32H757XI.json
+++ b/data/chips/STM32H757XI.json
@@ -4786,6 +4786,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -4828,6 +4833,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -14854,6 +14864,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -14896,6 +14911,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H757ZI.json b/data/chips/STM32H757ZI.json
index d91dd85..55ad331 100644
--- a/data/chips/STM32H757ZI.json
+++ b/data/chips/STM32H757ZI.json
@@ -3912,6 +3912,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -3954,6 +3959,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -12418,6 +12428,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -12460,6 +12475,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H7A3AG.json b/data/chips/STM32H7A3AG.json
index 8c79e08..2299fcd 100644
--- a/data/chips/STM32H7A3AG.json
+++ b/data/chips/STM32H7A3AG.json
@@ -4282,6 +4282,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -4316,6 +4321,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H7A3AI.json b/data/chips/STM32H7A3AI.json
index 49c6682..aa50fca 100644
--- a/data/chips/STM32H7A3AI.json
+++ b/data/chips/STM32H7A3AI.json
@@ -4293,6 +4293,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -4327,6 +4332,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H7A3IG.json b/data/chips/STM32H7A3IG.json
index 0fb324b..b39a88e 100644
--- a/data/chips/STM32H7A3IG.json
+++ b/data/chips/STM32H7A3IG.json
@@ -4599,6 +4599,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -4633,6 +4638,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H7A3II.json b/data/chips/STM32H7A3II.json
index d6b777d..4273988 100644
--- a/data/chips/STM32H7A3II.json
+++ b/data/chips/STM32H7A3II.json
@@ -4610,6 +4610,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -4644,6 +4649,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H7A3LG.json b/data/chips/STM32H7A3LG.json
index 0d018a5..d1cb995 100644
--- a/data/chips/STM32H7A3LG.json
+++ b/data/chips/STM32H7A3LG.json
@@ -4751,6 +4751,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -4785,6 +4790,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H7A3LI.json b/data/chips/STM32H7A3LI.json
index 1407754..9fbb6c3 100644
--- a/data/chips/STM32H7A3LI.json
+++ b/data/chips/STM32H7A3LI.json
@@ -4768,6 +4768,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -4802,6 +4807,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H7A3NG.json b/data/chips/STM32H7A3NG.json
index e9b295f..1683e85 100644
--- a/data/chips/STM32H7A3NG.json
+++ b/data/chips/STM32H7A3NG.json
@@ -4713,6 +4713,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -4747,6 +4752,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H7A3NI.json b/data/chips/STM32H7A3NI.json
index 1feab0d..edfb890 100644
--- a/data/chips/STM32H7A3NI.json
+++ b/data/chips/STM32H7A3NI.json
@@ -4724,6 +4724,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -4758,6 +4763,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H7A3QI.json b/data/chips/STM32H7A3QI.json
index 2b009ea..497fe87 100644
--- a/data/chips/STM32H7A3QI.json
+++ b/data/chips/STM32H7A3QI.json
@@ -3818,6 +3818,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -3852,6 +3857,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H7A3RG.json b/data/chips/STM32H7A3RG.json
index a96cf55..77f189b 100644
--- a/data/chips/STM32H7A3RG.json
+++ b/data/chips/STM32H7A3RG.json
@@ -2870,6 +2870,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H7A3RI.json b/data/chips/STM32H7A3RI.json
index 6dc5224..6a2e929 100644
--- a/data/chips/STM32H7A3RI.json
+++ b/data/chips/STM32H7A3RI.json
@@ -2881,6 +2881,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H7A3VG.json b/data/chips/STM32H7A3VG.json
index 67eeb45..95ae86a 100644
--- a/data/chips/STM32H7A3VG.json
+++ b/data/chips/STM32H7A3VG.json
@@ -3681,6 +3681,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -3715,6 +3720,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H7A3VI.json b/data/chips/STM32H7A3VI.json
index 3767038..3c7dc45 100644
--- a/data/chips/STM32H7A3VI.json
+++ b/data/chips/STM32H7A3VI.json
@@ -3692,6 +3692,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -3726,6 +3731,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H7A3ZG.json b/data/chips/STM32H7A3ZG.json
index 7d30ba2..66fe46c 100644
--- a/data/chips/STM32H7A3ZG.json
+++ b/data/chips/STM32H7A3ZG.json
@@ -4112,6 +4112,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -4146,6 +4151,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H7A3ZI.json b/data/chips/STM32H7A3ZI.json
index 9e1c972..b0726ce 100644
--- a/data/chips/STM32H7A3ZI.json
+++ b/data/chips/STM32H7A3ZI.json
@@ -4123,6 +4123,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -4157,6 +4162,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H7B0AB.json b/data/chips/STM32H7B0AB.json
index 0e25e3a..f819a96 100644
--- a/data/chips/STM32H7B0AB.json
+++ b/data/chips/STM32H7B0AB.json
@@ -4361,6 +4361,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -4395,6 +4400,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H7B0IB.json b/data/chips/STM32H7B0IB.json
index f2f5226..e9dee96 100644
--- a/data/chips/STM32H7B0IB.json
+++ b/data/chips/STM32H7B0IB.json
@@ -4635,6 +4635,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -4669,6 +4674,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H7B0RB.json b/data/chips/STM32H7B0RB.json
index 06b6b81..a9b2273 100644
--- a/data/chips/STM32H7B0RB.json
+++ b/data/chips/STM32H7B0RB.json
@@ -2949,6 +2949,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H7B0VB.json b/data/chips/STM32H7B0VB.json
index f3d0fe2..f61a323 100644
--- a/data/chips/STM32H7B0VB.json
+++ b/data/chips/STM32H7B0VB.json
@@ -3748,6 +3748,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -3782,6 +3787,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H7B0ZB.json b/data/chips/STM32H7B0ZB.json
index f7e9973..d4f5a84 100644
--- a/data/chips/STM32H7B0ZB.json
+++ b/data/chips/STM32H7B0ZB.json
@@ -4187,6 +4187,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -4221,6 +4226,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H7B3AI.json b/data/chips/STM32H7B3AI.json
index a8a0cf0..a480f38 100644
--- a/data/chips/STM32H7B3AI.json
+++ b/data/chips/STM32H7B3AI.json
@@ -4378,6 +4378,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -4412,6 +4417,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H7B3II.json b/data/chips/STM32H7B3II.json
index 940ed79..0138f67 100644
--- a/data/chips/STM32H7B3II.json
+++ b/data/chips/STM32H7B3II.json
@@ -4695,6 +4695,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -4729,6 +4734,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H7B3LI.json b/data/chips/STM32H7B3LI.json
index f8e57ed..cdd01c0 100644
--- a/data/chips/STM32H7B3LI.json
+++ b/data/chips/STM32H7B3LI.json
@@ -4853,6 +4853,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -4887,6 +4892,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H7B3NI.json b/data/chips/STM32H7B3NI.json
index 2eeb42e..9cbb086 100644
--- a/data/chips/STM32H7B3NI.json
+++ b/data/chips/STM32H7B3NI.json
@@ -4809,6 +4809,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -4843,6 +4848,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H7B3QI.json b/data/chips/STM32H7B3QI.json
index 88c228f..40dd163 100644
--- a/data/chips/STM32H7B3QI.json
+++ b/data/chips/STM32H7B3QI.json
@@ -3903,6 +3903,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -3937,6 +3942,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H7B3RI.json b/data/chips/STM32H7B3RI.json
index 0be619c..16f9b63 100644
--- a/data/chips/STM32H7B3RI.json
+++ b/data/chips/STM32H7B3RI.json
@@ -2966,6 +2966,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H7B3VI.json b/data/chips/STM32H7B3VI.json
index e68ad22..69b21c8 100644
--- a/data/chips/STM32H7B3VI.json
+++ b/data/chips/STM32H7B3VI.json
@@ -3777,6 +3777,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -3811,6 +3816,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/chips/STM32H7B3ZI.json b/data/chips/STM32H7B3ZI.json
index 2e24089..93bb45a 100644
--- a/data/chips/STM32H7B3ZI.json
+++ b/data/chips/STM32H7B3ZI.json
@@ -4208,6 +4208,11 @@
                 {
                     "name": "OPAMP1",
                     "address": 1073778688,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
@@ -4242,6 +4247,11 @@
                 {
                     "name": "OPAMP2",
                     "address": 1073778704,
+                    "registers": {
+                        "kind": "opamp",
+                        "version": "h_v1",
+                        "block": "OPAMP"
+                    },
                     "rcc": {
                         "bus_clock": "PCLK1",
                         "kernel_clock": "PCLK1",
diff --git a/data/registers/opamp_h_v1.json b/data/registers/opamp_h_v1.json
new file mode 100644
index 0000000..11b0817
--- /dev/null
+++ b/data/registers/opamp_h_v1.json
@@ -0,0 +1,278 @@
+{
+  "block/OPAMP": {
+    "description": "Operational amplifiers.",
+    "items": [
+      {
+        "name": "CSR",
+        "description": "OPAMP1 control/status register.",
+        "byte_offset": 0,
+        "fieldset": "CSR"
+      },
+      {
+        "name": "OTR",
+        "description": "OPAMP1 offset trimming register in normal mode.",
+        "byte_offset": 4,
+        "fieldset": "OTR"
+      },
+      {
+        "name": "HSOTR",
+        "description": "OPAMP1 offset trimming register in low-power mode.",
+        "byte_offset": 8,
+        "fieldset": "HSOTR"
+      }
+    ]
+  },
+  "fieldset/CSR": {
+    "description": "OPAMP1 control/status register.",
+    "fields": [
+      {
+        "name": "OPAEN",
+        "description": "Operational amplifier Enable.",
+        "bit_offset": 0,
+        "bit_size": 1
+      },
+      {
+        "name": "FORCE_VP",
+        "description": "Force internal reference on VP (reserved for test.",
+        "bit_offset": 1,
+        "bit_size": 1,
+        "enum": "FORCE_VP"
+      },
+      {
+        "name": "VP_SEL",
+        "description": "Operational amplifier PGA mode.",
+        "bit_offset": 2,
+        "bit_size": 2,
+        "enum": "VP_SEL"
+      },
+      {
+        "name": "VM_SEL",
+        "description": "Inverting input selection.",
+        "bit_offset": 5,
+        "bit_size": 2,
+        "enum": "VM_SEL"
+      },
+      {
+        "name": "OPAHSM",
+        "description": "Operational amplifier high-speed mode.",
+        "bit_offset": 8,
+        "bit_size": 1,
+        "enum": "OPAHSM"
+      },
+      {
+        "name": "CALON",
+        "description": "Calibration mode enabled.",
+        "bit_offset": 11,
+        "bit_size": 1,
+        "enum": "CALON"
+      },
+      {
+        "name": "CALSEL",
+        "description": "Calibration selection.",
+        "bit_offset": 12,
+        "bit_size": 2,
+        "enum": "CALSEL"
+      },
+      {
+        "name": "PGA_GAIN",
+        "description": "allows to switch from AOP offset trimmed values to AOP offset.",
+        "bit_offset": 14,
+        "bit_size": 4
+      },
+      {
+        "name": "USERTRIM",
+        "description": "User trimming enable.",
+        "bit_offset": 18,
+        "bit_size": 1,
+        "enum": "USERTRIM"
+      },
+      {
+        "name": "TSTREF",
+        "description": "OPAMP calibration reference voltage output control (reserved for test).",
+        "bit_offset": 29,
+        "bit_size": 1
+      },
+      {
+        "name": "CALOUT",
+        "description": "Operational amplifier calibration output.",
+        "bit_offset": 30,
+        "bit_size": 1,
+        "enum": "CALOUT"
+      }
+    ]
+  },
+  "fieldset/HSOTR": {
+    "description": "OPAMP1 offset trimming register in low-power mode.",
+    "fields": [
+      {
+        "name": "TRIMLPOFFSETN",
+        "description": "Trim for NMOS differential pairs.",
+        "bit_offset": 0,
+        "bit_size": 5
+      },
+      {
+        "name": "TRIMLPOFFSETP",
+        "description": "Trim for PMOS differential pairs.",
+        "bit_offset": 8,
+        "bit_size": 5
+      }
+    ]
+  },
+  "fieldset/OTR": {
+    "description": "OPAMP1 offset trimming register in normal mode.",
+    "fields": [
+      {
+        "name": "TRIMOFFSETN",
+        "description": "Trim for NMOS differential pairs.",
+        "bit_offset": 0,
+        "bit_size": 5
+      },
+      {
+        "name": "TRIMOFFSETP",
+        "description": "Trim for PMOS differential pairs.",
+        "bit_offset": 8,
+        "bit_size": 5
+      }
+    ]
+  },
+  "enum/CALON": {
+    "bit_size": 1,
+    "variants": [
+      {
+        "name": "Normal",
+        "description": "Normal mode",
+        "value": 0
+      },
+      {
+        "name": "Calibration",
+        "description": "Calibration mode (all switches opened by HW)",
+        "value": 1
+      }
+    ]
+  },
+  "enum/CALOUT": {
+    "bit_size": 1,
+    "variants": [
+      {
+        "name": "Less",
+        "description": "Non-inverting < inverting",
+        "value": 0
+      },
+      {
+        "name": "Greater",
+        "description": "Non-inverting > inverting",
+        "value": 1
+      }
+    ]
+  },
+  "enum/CALSEL": {
+    "bit_size": 2,
+    "variants": [
+      {
+        "name": "Percent3_3",
+        "description": "VREFOPAMP=3.3% VDDA.",
+        "value": 0
+      },
+      {
+        "name": "Percent10",
+        "description": "VREFOPAMP=10% VDDA.",
+        "value": 1
+      },
+      {
+        "name": "Percent50",
+        "description": "VREFOPAMP=50% VDDA.",
+        "value": 2
+      },
+      {
+        "name": "Percent90",
+        "description": "VREFOPAMP=90% VDDA.",
+        "value": 3
+      }
+    ]
+  },
+  "enum/FORCE_VP": {
+    "bit_size": 1,
+    "variants": [
+      {
+        "name": "NormalOperating",
+        "description": "Normal operating mode. Non-inverting input connected to inputs.",
+        "value": 0
+      },
+      {
+        "name": "CalibrationVerification",
+        "description": "Calibration verification mode. Non-inverting input connected to calibration reference voltage.",
+        "value": 1
+      }
+    ]
+  },
+  "enum/OPAHSM": {
+    "bit_size": 1,
+    "variants": [
+      {
+        "name": "Normal",
+        "description": "operational amplifier in normal mode",
+        "value": 0
+      },
+      {
+        "name": "HighSpeed",
+        "description": "operational amplifier in high-speed mode",
+        "value": 1
+      }
+    ]
+  },
+  "enum/USERTRIM": {
+    "bit_size": 1,
+    "variants": [
+      {
+        "name": "Factory",
+        "description": "\\'factory\\' trim code used",
+        "value": 0
+      },
+      {
+        "name": "User",
+        "description": "\\'user\\' trim code used",
+        "value": 1
+      }
+    ]
+  },
+  "enum/VM_SEL": {
+    "bit_size": 2,
+    "variants": [
+      {
+        "name": "Inm0",
+        "description": "INM0 connected to OPAMP_VINM input",
+        "value": 0
+      },
+      {
+        "name": "Inm1",
+        "description": "INM1 connected to OPAMP_VINM input",
+        "value": 1
+      },
+      {
+        "name": "Pga",
+        "description": "Feedback resistor is connected to the OPAMP_VINM input (PGA mode), Inverting input selection depends on the PGA_GAIN setting",
+        "value": 2
+      },
+      {
+        "name": "Follower",
+        "description": "opamp_out connected to OPAMP_VINM input (Follower mode)",
+        "value": 3
+      }
+    ]
+  },
+  "enum/VP_SEL": {
+    "bit_size": 2,
+    "variants": [
+      {
+        "name": "Gpio",
+        "description": "GPIO connected to OPAMPx_VINP",
+        "value": 0
+      },
+      {
+        "name": "DacOut",
+        "description": "dac_outx connected to OPAMPx_VINP",
+        "value": 1
+      }
+    ]
+  }
+}
\ No newline at end of file
diff --git a/data/registers/opamp_h_v2.json b/data/registers/opamp_h_v2.json
new file mode 100644
index 0000000..a2bfcee
--- /dev/null
+++ b/data/registers/opamp_h_v2.json
@@ -0,0 +1,283 @@
+{
+  "block/OPAMP": {
+    "description": "Operational amplifiers.",
+    "items": [
+      {
+        "name": "CSR",
+        "description": "OPAMP1 control/status register.",
+        "byte_offset": 0,
+        "fieldset": "CSR"
+      },
+      {
+        "name": "OTR",
+        "description": "OPAMP1 offset trimming register in normal mode.",
+        "byte_offset": 4,
+        "fieldset": "OTR"
+      },
+      {
+        "name": "HSOTR",
+        "description": "OPAMP1 offset trimming register in low-power mode.",
+        "byte_offset": 8,
+        "fieldset": "HSOTR"
+      }
+    ]
+  },
+  "fieldset/CSR": {
+    "description": "OPAMP1 control/status register.",
+    "fields": [
+      {
+        "name": "OPAEN",
+        "description": "Operational amplifier Enable.",
+        "bit_offset": 0,
+        "bit_size": 1
+      },
+      {
+        "name": "FORCE_VP",
+        "description": "Force internal reference on VP (reserved for test.",
+        "bit_offset": 1,
+        "bit_size": 1,
+        "enum": "FORCE_VP"
+      },
+      {
+        "name": "VP_SEL",
+        "description": "Operational amplifier PGA mode.",
+        "bit_offset": 2,
+        "bit_size": 2,
+        "enum": "VP_SEL"
+      },
+      {
+        "name": "VM_SEL",
+        "description": "Inverting input selection.",
+        "bit_offset": 5,
+        "bit_size": 2,
+        "enum": "VM_SEL"
+      },
+      {
+        "name": "OPAHSM",
+        "description": "Operational amplifier high-speed mode.",
+        "bit_offset": 8,
+        "bit_size": 1,
+        "enum": "OPAHSM"
+      },
+      {
+        "name": "CALON",
+        "description": "Calibration mode enabled.",
+        "bit_offset": 11,
+        "bit_size": 1,
+        "enum": "CALON"
+      },
+      {
+        "name": "CALSEL",
+        "description": "Calibration selection.",
+        "bit_offset": 12,
+        "bit_size": 2,
+        "enum": "CALSEL"
+      },
+      {
+        "name": "PGA_GAIN",
+        "description": "allows to switch from AOP offset trimmed values to AOP offset.",
+        "bit_offset": 14,
+        "bit_size": 4
+      },
+      {
+        "name": "USERTRIM",
+        "description": "User trimming enable.",
+        "bit_offset": 18,
+        "bit_size": 1,
+        "enum": "USERTRIM"
+      },
+      {
+        "name": "TSTREF",
+        "description": "OPAMP calibration reference voltage output control (reserved for test).",
+        "bit_offset": 29,
+        "bit_size": 1
+      },
+      {
+        "name": "CALOUT",
+        "description": "Operational amplifier calibration output.",
+        "bit_offset": 30,
+        "bit_size": 1,
+        "enum": "CALOUT"
+      }
+    ]
+  },
+  "fieldset/HSOTR": {
+    "description": "OPAMP1 offset trimming register in low-power mode.",
+    "fields": [
+      {
+        "name": "TRIMLPOFFSETN",
+        "description": "Trim for NMOS differential pairs.",
+        "bit_offset": 0,
+        "bit_size": 5
+      },
+      {
+        "name": "TRIMLPOFFSETP",
+        "description": "Trim for PMOS differential pairs.",
+        "bit_offset": 8,
+        "bit_size": 5
+      }
+    ]
+  },
+  "fieldset/OTR": {
+    "description": "OPAMP1 offset trimming register in normal mode.",
+    "fields": [
+      {
+        "name": "TRIMOFFSETN",
+        "description": "Trim for NMOS differential pairs.",
+        "bit_offset": 0,
+        "bit_size": 5
+      },
+      {
+        "name": "TRIMOFFSETP",
+        "description": "Trim for PMOS differential pairs.",
+        "bit_offset": 8,
+        "bit_size": 5
+      }
+    ]
+  },
+  "enum/CALON": {
+    "bit_size": 1,
+    "variants": [
+      {
+        "name": "Normal",
+        "description": "Normal mode",
+        "value": 0
+      },
+      {
+        "name": "Calibration",
+        "description": "Calibration mode (all switches opened by HW)",
+        "value": 1
+      }
+    ]
+  },
+  "enum/CALOUT": {
+    "bit_size": 1,
+    "variants": [
+      {
+        "name": "Less",
+        "description": "Non-inverting < inverting",
+        "value": 0
+      },
+      {
+        "name": "Greater",
+        "description": "Non-inverting > inverting",
+        "value": 1
+      }
+    ]
+  },
+  "enum/CALSEL": {
+    "bit_size": 2,
+    "variants": [
+      {
+        "name": "Percent3_3",
+        "description": "VREFOPAMP=3.3% VDDA.",
+        "value": 0
+      },
+      {
+        "name": "Percent10",
+        "description": "VREFOPAMP=10% VDDA.",
+        "value": 1
+      },
+      {
+        "name": "Percent50",
+        "description": "VREFOPAMP=50% VDDA.",
+        "value": 2
+      },
+      {
+        "name": "Percent90",
+        "description": "VREFOPAMP=90% VDDA.",
+        "value": 3
+      }
+    ]
+  },
+  "enum/FORCE_VP": {
+    "bit_size": 1,
+    "variants": [
+      {
+        "name": "NormalOperating",
+        "description": "Normal operating mode. Non-inverting input connected to inputs.",
+        "value": 0
+      },
+      {
+        "name": "CalibrationVerification",
+        "description": "Calibration verification mode. Non-inverting input connected to calibration reference voltage.",
+        "value": 1
+      }
+    ]
+  },
+  "enum/OPAHSM": {
+    "bit_size": 1,
+    "variants": [
+      {
+        "name": "Normal",
+        "description": "operational amplifier in normal mode",
+        "value": 0
+      },
+      {
+        "name": "HighSpeed",
+        "description": "operational amplifier in high-speed mode",
+        "value": 1
+      }
+    ]
+  },
+  "enum/USERTRIM": {
+    "bit_size": 1,
+    "variants": [
+      {
+        "name": "Factory",
+        "description": "\\'factory\\' trim code used",
+        "value": 0
+      },
+      {
+        "name": "User",
+        "description": "\\'user\\' trim code used",
+        "value": 1
+      }
+    ]
+  },
+  "enum/VM_SEL": {
+    "bit_size": 2,
+    "variants": [
+      {
+        "name": "Inm0",
+        "description": "INM0 connected to OPAMP_VINM input",
+        "value": 0
+      },
+      {
+        "name": "Inm1",
+        "description": "INM1 connected to OPAMP_VINM input",
+        "value": 1
+      },
+      {
+        "name": "Pga",
+        "description": "Feedback resistor is connected to the OPAMP_VINM input (PGA mode), Inverting input selection depends on the PGA_GAIN setting",
+        "value": 2
+      },
+      {
+        "name": "Follower",
+        "description": "opamp_out connected to OPAMP_VINM input (Follower mode)",
+        "value": 3
+      }
+    ]
+  },
+  "enum/VP_SEL": {
+    "bit_size": 2,
+    "variants": [
+      {
+        "name": "GpioInp0",
+        "description": "GPIO INP0 connected to OPAMP_VINP",
+        "value": 0
+      },
+      {
+        "name": "DacOut",
+        "description": "dac_outx connected to OPAMPx_VINP",
+        "value": 1
+      },
+      {
+        "name": "GpioInp2",
+        "description": "GPIO INP2 is connected to OPAMP_VINP",
+        "value": 2
+      }
+    ]
+  }
+}
\ No newline at end of file