Question about sending IRP_MJ_READ on the COM port

I’m actually developing a NDIS miniport driver for a radio connected on the
COM port.
When i want to send a IRP request to the COM port with IoCallDriver, do i
need to use the IoSetNextIrpStackLocation
to setup the proper IO_STACK_LOCATION after the creation of my IRP with
IoAllocateIrp for the serial port ? Because i know that in my case i can’t
use the IoGetNextIrpStackLocation to setup the IO_STACK_LOCATION.