How is the UnsafeCell used? ``` let buffer: &'static mut [u8] = /* ConstStaticCell stuff */; buffer[0] = 1; buffer[1] = 2; buffer[2] = 3; dma_reg.ptr.write_volatile(buffer.as_ptr()); dma_reg.size.write_volatile(buffer.len()); compile_fence(Ordering::Release); dma_reg.start.write_volatile(1); ``` Insert it into the pseudo code above plzzz