In reply to dave_59:
Hi Dave…i studied that when any sequence call start_item, then its first sequence_item is added to sequencer fifo. So if multiple sequences call start_item, then first sequence_item from all sequence is added to fifo. when driver call get_next_item(), then sequencer choose one sequence_item from fifo using arbitration mechanism & send it to driver. But if any sequence want exclusive access, it can use grab/lock. If grab is used, then sequence_item from this sequence must be picked first even if its priority is lowest. So sequencer must pick sequence_item from rd1_seq first & until it ungrabs, it must be given exclusive access. If any sequence use lock, then it will be given access when it is granted following the normal sequencer arbitration. Correct me if i am wrong.
Thanks