> Hi, I'm looking for an usage example of devsegment.
>
> I cannot find anything neither in bhro's plan9 nor in 9front.
>
> Can anybody share a real usage world example?
>
>
> Giacomo

its just creating named segments of some shared memory.

segment(3) has an example. read it.

on 9front, you can also allocate physically continuous segments *and*
get the physical base address for it :)

one application for it is on the zynq. the displayport graphics is
implemented using the fpga and userspace uses devsegment
to allocate 5MB of physically continous memory for the framebuffer:

#!/bin/rc
rfork en
bind -c '#g' /mnt/segment
if(! test -d /mnt/segment/fb){
        mkdir /mnt/segment/fb
        echo 'va 0x00500000 0x00500000 fixed' > /mnt/segment/fb/ctl
}

bind -b '#P' /dev
audio/pcmconv -i 'c1u32r1' -o 'c1U32r1' < ./build/out.bin > /dev/pl

then some c code programs the graphics register and hands the
loaded core the physical address for DMA.

--
cinap

Reply via email to