i'm trying write message hardware mailbox using memory mapped dev/mem/ send, gets sent twice. in code below, after sending single 1 mbox, mailbox depth indicates depth of two. when read mailbox has 2 ones. idea why happening?
with open("/dev/mem", "r+b") mem_fd: addr_p = mmap.mmap(mem_fd.fileno(), mem_size[uproc_pif_area], offset = mem_offsets[proc_pif_area]) #sending message header register mbox_xt first print "sending message header" packed_mbox_status = addr_p[mbox_status:mbox_status + 4] mbox_to_microp_depth = struct.unpack("bbbb", packed_mbox_status) print "mbox_to_microp_depth : " + str(mbox_to_microp_depth) addr_p[mbox_xt:mbox_xt+4] = struct.pack("<l", 1) packed_mbox_status = addr_p[mbox_status:mbox_status + 4] mbox_to_microp_depth = struct.unpack("bbbb", packed_mbox_status) print "mbox_to_microp_depth : " + str(mbox_to_microp_depth)
Comments
Post a Comment