diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-matplotlib/0001-removed-RandomNumberGenerator-class-included-random-.patch b/meta-openembedded/meta-python/recipes-devtools/python/python3-matplotlib/0001-removed-RandomNumberGenerator-class-included-random-.patch
new file mode 100644
index 0000000..1f9b8cd
--- /dev/null
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-matplotlib/0001-removed-RandomNumberGenerator-class-included-random-.patch
@@ -0,0 +1,59 @@
+From 3eb9987b02cc10b93e09219ddc86aa6be5f10177 Mon Sep 17 00:00:00 2001
+From: tybeller <ty.c.beller@gmail.com>
+Date: Fri, 30 Sep 2022 16:13:41 -0400
+Subject: [PATCH] removed RandomNumberGenerator class, included <random>,
+ replaced random_shuffle with shuffle and used mersenne twister engine to
+ generate uniform random bit generator for the shuffle.
+
+Upstream-Status: Backport [https://github.com/matplotlib/matplotlib/commit/601d92a8850]
+Signed-off-by: Khem Raj <raj.khem@gmail.com>
+---
+ src/tri/_tri.cpp | 20 ++++----------------
+ 1 file changed, 4 insertions(+), 16 deletions(-)
+
+diff --git a/src/tri/_tri.cpp b/src/tri/_tri.cpp
+index b7a87783de..6e639eea44 100644
+--- a/src/tri/_tri.cpp
++++ b/src/tri/_tri.cpp
+@@ -12,6 +12,7 @@
+ 
+ #include <algorithm>
+ #include <set>
++#include <random>
+ 
+ 
+ TriEdge::TriEdge()
+@@ -1465,8 +1466,8 @@ TrapezoidMapTriFinder::initialize()
+     _tree->assert_valid(false);
+ 
+     // Randomly shuffle all edges other than first 2.
+-    RandomNumberGenerator rng(1234);
+-    std::random_shuffle(_edges.begin()+2, _edges.end(), rng);
++    std::mt19937 rng(1234);
++    std::shuffle(_edges.begin()+2, _edges.end(), rng);
+ 
+     // Add edges, one at a time, to tree.
+     size_t nedges = _edges.size();
+@@ -2055,17 +2056,4 @@ TrapezoidMapTriFinder::Trapezoid::set_upper_right(Trapezoid* upper_right_)
+     upper_right = upper_right_;
+     if (upper_right != 0)
+         upper_right->upper_left = this;
+-}
+-
+-
+-
+-RandomNumberGenerator::RandomNumberGenerator(unsigned long seed)
+-    : _m(21870), _a(1291), _c(4621), _seed(seed % _m)
+-{}
+-
+-unsigned long
+-RandomNumberGenerator::operator()(unsigned long max_value)
+-{
+-    _seed = (_seed*_a + _c) % _m;
+-    return (_seed*max_value) / _m;
+-}
++}
+\ No newline at end of file
+-- 
+2.39.0
+
diff --git a/meta-openembedded/meta-python/recipes-devtools/python/python3-matplotlib/matplotlib-disable-download.patch b/meta-openembedded/meta-python/recipes-devtools/python/python3-matplotlib/matplotlib-disable-download.patch
index 25c49af..899cac6 100644
--- a/meta-openembedded/meta-python/recipes-devtools/python/python3-matplotlib/matplotlib-disable-download.patch
+++ b/meta-openembedded/meta-python/recipes-devtools/python/python3-matplotlib/matplotlib-disable-download.patch
@@ -6,18 +6,32 @@
 
 --- a/setup.py
 +++ b/setup.py
-@@ -316,8 +316,6 @@ setup(  # Finally, pass this all along t
+@@ -303,7 +303,6 @@ setup(  # Finally, pass this all along t
      setup_requires=[
          "certifi>=2020.06.20",
-         "numpy>=1.17",
--        "setuptools_scm>=4,<7",
--        "setuptools_scm_git_archive",
+         "numpy>=1.19",
+-        "setuptools_scm>=7",
      ],
      install_requires=[
-         "cycler>=0.10",
+         "contourpy>=1.0.1",
+@@ -315,13 +314,7 @@ setup(  # Finally, pass this all along t
+         "pillow>=6.2.0",
+         "pyparsing>=2.2.1",
+         "python-dateutil>=2.7",
+-    ] + (
+-        # Installing from a git checkout that is not producing a wheel.
+-        ["setuptools_scm>=7"] if (
+-            Path(__file__).with_name(".git").exists() and
+-            os.environ.get("CIBUILDWHEEL", "0") != "1"
+-        ) else []
+-    ),
++    ],
+     use_scm_version={
+         "version_scheme": "release-branch-semver",
+         "local_scheme": "node-and-date",
 --- a/setupext.py
 +++ b/setupext.py
-@@ -64,40 +64,7 @@ def get_from_cache_or_download(url, sha)
+@@ -65,40 +65,7 @@ def get_from_cache_or_download(url, sha)
      BytesIO
          The file loaded into memory.
      """
