1. A method performed by one or more processing devices, the method comprising: receiving, at a memory controller, a logical write request over a logical interface that the memory controller provides for accessing a non-volatile storage device, the logical write request indicating a logical address at which to write data to the non-volatile storage device; in response to receiving the logical write request, sending, by the memory controller, a write request event to a host system; receiving, at the memory controller, a physical write command from the host system over a physical interface that the memory controller provides for accessing the non-volatile storage device, the physical write command comprising instructions for writing the data to the non-volatile storage device; and in response to receiving the physical write command from the host system, storing, by the memory controller, the data in the non-volatile storage device according to the physical write command.