diff --git a/src/libcamera/property_ids_core.yaml b/src/libcamera/property_ids_core.yaml
index d5b3d309c055..96c7b55d8383 100644
--- a/src/libcamera/property_ids_core.yaml
+++ b/src/libcamera/property_ids_core.yaml
@@ -496,101 +496,6 @@ controls:
         \todo Rename this property to Size once we will have property
               categories (i.e. Properties::PixelArray::Size)
 
-  - PixelArrayOpticalBlackRectangles:
-      type: Rectangle
-      size: [n]
-      description: |
-        The pixel array region(s) which contain optical black pixels
-        considered valid for calibration purposes.
-
-        This property describes the position and size of optical black pixel
-        regions in the raw data buffer as stored in memory, which might differ
-        from their actual physical location in the pixel array matrix.
-
-        It is important to note, in fact, that camera sensors might
-        automatically reorder or skip portions of their pixels array matrix when
-        transmitting data to the receiver. For instance, a sensor may merge the
-        top and bottom optical black rectangles into a single rectangle,
-        transmitted at the beginning of the frame.
-
-        The pixel array contains several areas with different purposes,
-        interleaved by lines and columns which are said not to be valid for
-        capturing purposes. Invalid lines and columns are defined as invalid as
-        they could be positioned too close to the chip margins or to the optical
-        black shielding placed on top of optical black pixels.
-
-                             PixelArraySize.width
-               /----------------------------------------------/
-                  x1                                       x2
-               +--o---------------------------------------o---+ /
-               |IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII| |
-               |IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII| |
-            y1 oIIOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOII| |
-               |IIOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOII| |
-               |IIOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOII| |
-            y2 oIIOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOII| |
-               |IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII| |
-               |IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII| |
-            y3 |IIOOPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPOOII| |
-               |IIOOPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPOOII| | PixelArraySize.height
-               |IIOOPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPOOII| |
-               ...          ...           ...     ...       ...
-               ...          ...           ...     ...       ...
-            y4 |IIOOPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPOOII| |
-               |IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII| |
-               |IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII| |
-               +----------------------------------------------+ /
-
-        The readable pixel array matrix is composed by
-        2 invalid lines (I)
-        4 lines of valid optical black pixels (O)
-        2 invalid lines (I)
-        n lines of valid pixel data (P)
-        2 invalid lines (I)
-
-        And the position of the optical black pixel rectangles is defined by
-
-            PixelArrayOpticalBlackRectangles = {
-               { x1, y1, x2 - x1 + 1, y2 - y1 + 1 },
-               { x1, y3, 2, y4 - y3 + 1 },
-               { x2, y3, 2, y4 - y3 + 1 },
-            };
-
-        If the camera, when capturing the full pixel array matrix, automatically
-        skips the invalid lines and columns, producing the following data
-        buffer, when captured to memory
-
-                             PixelArraySize.width
-               /----------------------------------------------/
-                                                           x1
-               +--------------------------------------------o-+ /
-               |OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO| |
-               |OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO| |
-               |OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO| |
-               |OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO| |
-            y1 oOOPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPOO| |
-               |OOPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPOO| |
-               |OOPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPOO| | PixelArraySize.height
-               ...       ...          ...       ...         ... |
-               ...       ...          ...       ...         ... |
-               |OOPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPOO| |
-               |OOPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPOO| |
-               +----------------------------------------------+ /
-
-        then the invalid lines and columns should not be reported as part of the
-        PixelArraySize property in first place.
-
-        In this case, the position of the black pixel rectangles will be
-
-            PixelArrayOpticalBlackRectangles = {
-               { 0, 0, y1 + 1, PixelArraySize[0] },
-               { 0, y1, 2, PixelArraySize[1] - y1 + 1 },
-               { x1, y1, 2, PixelArraySize[1] - y1 + 1 },
-            };
-
-        \todo Rename this property to Size once we will have property
-              categories (i.e. Properties::PixelArray::OpticalBlackRectangles)
-
   - PixelArrayActiveAreas:
       type: Rectangle
       size: [n]
