diff --git a/src/fvOptions/cellSetOption/cellSetOption.C b/src/fvOptions/cellSetOption/cellSetOption.C
index 784290021c23bc5f8184f6ac73b21628bed1f6dd..13fe6ce4d2d0cb717677368d54a92757c3dee7a6 100644
--- a/src/fvOptions/cellSetOption/cellSetOption.C
+++ b/src/fvOptions/cellSetOption/cellSetOption.C
@@ -51,6 +51,7 @@ Foam::fv::cellSetOption::selectionModeTypeNames_
 ({
     { selectionModeType::smAll, "all" },
     { selectionModeType::smGeometric, "geometric" },
+    { selectionModeType::smMesh, "mesh" },
     { selectionModeType::smPoints, "points" },
     { selectionModeType::smMovingPoints, "movingPoints" },
     { selectionModeType::smCellSet, "cellSet" },
@@ -76,6 +77,11 @@ void Foam::fv::cellSetOption::setSelection(const dictionary& dict)
             geometricSelection_ = dict.subDict("selection");
             break;
         }
+        case smMesh:
+        {
+            // Delegate the task to finite-volume options
+            break;
+        }
         case smPoints:
         {
             dict.readEntry("points", points_);
@@ -195,6 +201,11 @@ void Foam::fv::cellSetOption::setCellSelection()
             cells_ = selectedCells.sortedToc();
             break;
         }
+        case smMesh:
+        {
+            // Delegate the task to finite-volume options
+            break;
+        }
         case smPoints:
         {
             Info<< indent << "- selecting cells using points" << endl;
@@ -299,7 +310,11 @@ void Foam::fv::cellSetOption::setCellSelection()
 
     if
     (
-        !(smAll == selectionMode_ || smMovingPoints == selectionMode_)
+       !(
+            smAll == selectionMode_
+         || smMovingPoints == selectionMode_
+         || smMesh == selectionMode_
+        )
      && returnReduceAnd(cells_.empty())
     )
     {
diff --git a/src/fvOptions/cellSetOption/cellSetOption.H b/src/fvOptions/cellSetOption/cellSetOption.H
index 7188b24c3e9eb311b75f0a7fbcc7c543a016b581..c1622f8ba704227ab02bc6db934b9eaaa3fa8278 100644
--- a/src/fvOptions/cellSetOption/cellSetOption.H
+++ b/src/fvOptions/cellSetOption/cellSetOption.H
@@ -122,6 +122,7 @@ Usage
       points    | Use cells containing a given set of points
       movingPoints | Use cells containing a given set of moving points
       geometric | Select cells based on topoSetCellSource actions
+      mesh      | Select cells based on a given secondary mesh
     \endverbatim
 
     The inherited entries are elaborated in:
@@ -179,6 +180,7 @@ public:
             smPoints,       //!< "points"
             smMovingPoints, //!< "movingPoints"
             smGeometric,    //!< "geometric"
+            smMesh,         //!< "mesh"
             smCellType      //!< "overset type cells"
         };