diff --git a/_service b/_service
new file mode 100644
index 0000000..4d261fc
--- /dev/null
+++ b/_service
@@ -0,0 +1,17 @@
+<services>
+  <service name="obs_scm" mode="disabled">
+    <param name="versionformat">3.4.0</param>
+    <param name="url">https://github.com/Mbed-TLS/mbedtls.git</param>
+    <param name="scm">git</param>
+    <param name="changesgenerate">enable</param>
+    <param name="exclude">.*</param>
+    <param name="revision">refs/tags/v3.4.0</param>
+  </service>
+  <service name="tar" mode="buildtime"/>
+  <service name="recompress" mode="buildtime">
+    <param name="compression">gz</param>
+    <param name="file">*.tar</param>
+  </service>
+  <service name="set_version" mode="disabled">
+  </service>
+</services>
diff --git a/_servicedata b/_servicedata
new file mode 100644
index 0000000..a0eed53
--- /dev/null
+++ b/_servicedata
@@ -0,0 +1,4 @@
+<servicedata>
+<service name="tar_scm">
+                <param name="url">https://github.com/Mbed-TLS/mbedtls.git</param>
+              <param name="changesrevision">1873d3bfc2da771672bd8e7e8f41f57e0af77f33</param></service></servicedata>
\ No newline at end of file
diff --git a/mbedtls-2.28.2.tar.gz b/mbedtls-2.28.2.tar.gz
deleted file mode 100644
index 9be5a61..0000000
--- a/mbedtls-2.28.2.tar.gz
+++ /dev/null
@@ -1,3 +0,0 @@
-version https://git-lfs.github.com/spec/v1
-oid sha256:bc55232bf71fd66045122ba9050a29ea7cb2e8f99b064a9e6334a82f715881a0
-size 3934658
diff --git a/mbedtls-3.4.0.obscpio b/mbedtls-3.4.0.obscpio
new file mode 100644
index 0000000..729e5ff
--- /dev/null
+++ b/mbedtls-3.4.0.obscpio
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:52380a2cde928433485d9a3cf7766718e5859c13bf49613bde0536af4a0865ab
+size 37011981
diff --git a/mbedtls.changes b/mbedtls.changes
index 8efa870..0b493c5 100644
--- a/mbedtls.changes
+++ b/mbedtls.changes
@@ -1,3 +1,17 @@
+-------------------------------------------------------------------
+Fri Apr 28 08:25:31 UTC 2023 - Martin Pluskal <mpluskal@suse.com>
+
+- Update to version 3.4.0:
+  * psa_util: fix for correctly computing elements in array
+  * Add generated files
+  * Update BRANCHES.md
+  * Bump library, libcrypto and libx509 versions
+  * Assemble Changelog for 3.4.0 release
+  * Add security entry to ChangeLog for AES-NI
+  * Add security entry to ChangeLog for AES-CE
+  * Add TLS1.2 Opaque ECJPAKE changelog entry
+- Switch to scm service
+
 -------------------------------------------------------------------
 Wed Mar  8 11:38:26 UTC 2023 - Martin Pluskal <mpluskal@suse.com>
 
diff --git a/mbedtls.obsinfo b/mbedtls.obsinfo
new file mode 100644
index 0000000..2af3020
--- /dev/null
+++ b/mbedtls.obsinfo
@@ -0,0 +1,4 @@
+name: mbedtls
+version: 3.4.0
+mtime: 1679936728
+commit: 1873d3bfc2da771672bd8e7e8f41f57e0af77f33
diff --git a/mbedtls.spec b/mbedtls.spec
index 1a9ccd6..10f108b 100644
--- a/mbedtls.spec
+++ b/mbedtls.spec
@@ -1,7 +1,7 @@
 #
 # spec file for package mbedtls
 #
-# Copyright (c) 2022 SUSE LLC
+# Copyright (c) 2023 SUSE LLC
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -16,17 +16,17 @@
 #
 
 
-%define lib_tls    libmbedtls14
-%define lib_crypto libmbedcrypto7
-%define lib_x509   libmbedx509-1
+%define lib_tls    libmbedtls19
+%define lib_crypto libmbedcrypto14
+%define lib_x509   libmbedx509-5
 Name:           mbedtls
-Version:        2.28.2
+Version:        3.4.0
 Release:        0
 Summary:        Libraries for crypto and SSL/TLS protocols
 License:        Apache-2.0
 Group:          Development/Libraries/C and C++
 URL:            https://tls.mbed.org
-Source:         https://github.com/ARMmbed/mbedtls/archive/v%{version}.tar.gz#/%{name}-%{version}.tar.gz
+Source:         %{name}-%{version}.tar.gz
 Source99:       baselibs.conf
 BuildRequires:  cmake
 BuildRequires:  ninja
@@ -89,10 +89,6 @@ SSL/TLS protocol suite.
 
 %prep
 %autosetup -p1
-sed -i 's|//\(#define MBEDTLS_ZLIB_SUPPORT\)|\1|' include/mbedtls/config.h
-sed -i 's|//\(#define MBEDTLS_HAVEGE_C\)|\1|' include/mbedtls/config.h
-sed -i 's|//\(#define MBEDTLS_THREADING_C\)|\1|' include/mbedtls/config.h
-sed -i 's|//\(#define MBEDTLS_THREADING_PTHREAD\)|\1|' include/mbedtls/config.h
 
 %build
 %define __builder ninja
@@ -132,6 +128,8 @@ LD_LIBRARY_PATH=%{buildroot}%{_libdir} \
 %doc ChangeLog README.md
 %dir %{_includedir}/mbedtls
 %dir %{_includedir}/psa
+%dir %{_libdir}/cmake/MbedTLS
+%{_libdir}/cmake/MbedTLS/*
 %{_includedir}/mbedtls/*.h
 %{_includedir}/psa/*.h
 %{_libdir}/libmbedtls.so