diff --git a/cross_tools/configs/config.xml b/cross_tools/configs/config.xml
index 86a0e0f37d75c7ef208dd774104ac6aca7d5fa25..adc315003f12afa80ff7e56e450ef818a632294f 100644
--- a/cross_tools/configs/config.xml
+++ b/cross_tools/configs/config.xml
@@ -1,8 +1,8 @@
COMPILER_INFO="gcc 10.3.1"
KERNEL="kernel"
-KERNEL_BRANCH="5.10.0-106.6.0"
+KERNEL_BRANCH="5.10.0-121.0.0"
MUSLC_BRANCH="master"
-COMMON_BRANCH="openEuler-22.09"
+COMMON_BRANCH="openEuler-22.03-LTS-Next"
GCC="gcc"
GCC_DIR="gcc-10.3.0"
BINUTILS="binutils"
@@ -16,11 +16,11 @@ MPC_DIR="mpc-1.2.0"
ISL="isl"
ISL_DIR="isl-0.16.1"
GLIBC="glibc"
-GLIBC_DIR="glibc-2.35"
+GLIBC_DIR="glibc-2.34"
MUSLC="musl"
MUSLC_DIR="musl-1.2.3"
EXPAT="expat"
-EXPAT_DIR="expat-2.4.8"
+EXPAT_DIR="expat-2.4.1"
GETTEXT="gettext"
GETTEXT_DIR="gettext-0.21"
LIBICONV="libiconv"
diff --git a/cross_tools/patches/glibc-fix-missing-convert-scm-timestamps.patch b/cross_tools/patches/glibc-fix-missing-convert-scm-timestamps.patch
deleted file mode 100644
index e6a1587d182b600f808f91f37dc8e3c432aa771f..0000000000000000000000000000000000000000
--- a/cross_tools/patches/glibc-fix-missing-convert-scm-timestamps.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-Commit 948ce73b31 made recvmsg/recvmmsg to always call
-__convert_scm_timestamps for 64 bit time_t symbol, so adjust it to
-always build it for __TIMESIZE != 64.
-
-It fixes build for architecture with 32 bit time_t support when
-configured with minimum kernel of 5.1.
----
- sysdeps/unix/sysv/linux/convert_scm_timestamps.c | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/sysdeps/unix/sysv/linux/convert_scm_timestamps.c b/sysdeps/unix/sysv/linux/convert_scm_timestamps.c
-index 82171bf325..dfc8c2beff 100644
---- a/sysdeps/unix/sysv/linux/convert_scm_timestamps.c
-+++ b/sysdeps/unix/sysv/linux/convert_scm_timestamps.c
-@@ -16,9 +16,9 @@
- License along with the GNU C Library; if not, see
- . */
-
--#include
-+#include
-
--#ifndef __ASSUME_TIME64_SYSCALLS
-+#if __TIMESIZE != 64
- # include
- # include
- # include
---
-2.32.0
-
-