Bluetooth mesh gateway architectures and implementations

Hi!
Could you clarify a bit about Bluetooth mesh gateways' implementations. I wonder to know possible ways of Bluetooth mesh gateway implementations. How is it possible right now?
If I have a SoM (for simplification it could be a Raspberry Pi board) with Linux, which uses BlueZ stack underhood, and I want to control Bluetooth mesh network from it. Is it possible to directly control Bluetooth mesh nodes, sending packets to them and receiving packets from them throught Bluetooth mesh? Should be the gateway a part of Bluetooth mesh network as a separate node? It seems that nRF Mesh mobile app from Nordic employes a specific opportunity to control devices via PB-GATT packet, connecting to a Bluetooth mesh node with Proxy feature. A mobile device connects to the node using Bluetooth LE and encapsulates Bluetooth mesh packets, sending through this node, and not directrly, using Bluetooth mesh advertising packets. So, could you clarify, is it possible to control Bluetooth mesh networks from such kind of device with Linux? And if yes, where could I look to understand, how it's possible? And if no, which options do we have to control Bluetooth mesh network from the gateway? Do we need to connect a microcontroller (like nRF52840) via UART/SPI to our host MCU and write a custom firmware for it to control Bluetooth mesh network, using this microcontroller as a proxy between gateway and Bluetooth mesh network? Or could we control the Bluetooth mesh network, connecting to a arbitrary Bluetooth mesh node with Proxy feature through Bluetooth LE and control the the network, encapsulating packets, as it nRF Mesh mobile app does?
How do companies realize their Bluetooth mesh gateways? How do they control the mesh network from them if BlueZ doesn't support a native Bluetooth mesh controlling?
Thank you in advance for any assistance with understanding such the details and any recommendations. It would great to hear others' thoughts about this problem.

Related