Thanks,

Merged to master at 9e9071faf16d..1aeac02643f5 (from, to]

You can see the entire diff with 'git diff' or at
https://github.com/brho/akaros/compare/9e9071faf16d...1aeac02643f5



On 2016-08-04 at 17:42 Dan Cross <[email protected]> wrote:
> As per Dr. Minnich's request. This is the original from Harvey; it
> is an 'rc' script.
> 
> Change-Id: If7e4014c87bbd5a9d7a7fc9989c23394ee2743c3
> Signed-off-by: Dan Cross <[email protected]>
> ---
>  kern/kfs/bin/pci | 116 
> +++++++++++++++++++++++++++++++++++++++++++++++++++++++
>  1 file changed, 116 insertions(+)
>  create mode 100755 kern/kfs/bin/pci
> 
> diff --git a/kern/kfs/bin/pci b/kern/kfs/bin/pci
> new file mode 100755
> index 0000000..3b771e3
> --- /dev/null
> +++ b/kern/kfs/bin/pci
> @@ -0,0 +1,116 @@
> +#!/bin/rc
> +# pci [-bv] - dump pci configuration
> +rfork e
> +fn verbose {
> +     if (! test -f /lib/pci)
> +             echo $0: no /lib/pci >[1=2]
> +     awk '
> +
> +     function lower(s) {
> +             gsub(/A/, "a", s)
> +             gsub(/B/, "b", s)
> +             gsub(/C/, "c", s)
> +             gsub(/D/, "d", s)
> +             gsub(/E/, "e", s)
> +             gsub(/F/, "f", s)
> +             return s
> +     }
> +     BEGIN{
> +             file="/lib/pci"
> +             FS="\t"
> +             while(getline <file > 0){
> +                     if(/^;/) continue
> +                     if(/^[0-9a-fA-F]/){
> +                             vid=lower($1)
> +                             vendor[vid] = $2
> +                     }
> +                     if(/^   [0-9a-fA-F]/){
> +                             did=lower($2)
> +                             id[vid "/" did] = $3
> +                     }
> +             }
> +             FS = " "
> +     }
> +
> +     {
> +             print $0
> +             vid = $4
> +             sub(/\/.*/, "", vid)
> +             if(vid in vendor){
> +                     s = vendor[vid]
> +                     if($4 in id)
> +                             s = s " " id[$4]
> +                     print "\t" s
> +             }
> +     }
> +'
> +}
> +fn usage {
> +     echo usage: $1 '[-bv]' >[1=2]
> +     exit usage
> +}
> +
> +filter=cat
> +bridges=yes
> +done=0
> +while (~ $done 0 && ! ~ $#* 0 && ~ $1 -*) {
> +     if (~ $1 -*b*)
> +             bridges=no
> +     if (~ $1 -*v*)
> +             filter=verbose
> +     switch ($1) {
> +     case --
> +             done = 1                # no break in rc, alas
> +     case -*[~bv]*
> +             usage $0
> +     }
> +     shift
> +}
> +if (! ~ $#* 0)
> +     usage $0
> +
> +# DMG 06/02/2016 Make pci(8) recognize virtio devices
> +# source: http://git.qemu.org/?p=qemu.git;a=blob;f=include/hw/pci/pci.h
> +# devices with vendor code 0x1af4 are QEMU own virtio devices.
> +# useful device codes below:
> +# 0x1000: virtio network card
> +# 0x1001: virtio block device
> +# 0x1002: virtio balloon
> +# 0x1003: virtio console
> +# 0x1004: virtio SCSI
> +# 0x1005: virtio RNG (random numbers generator)
> +# 0x1009: virtio 9P transport
> +# based on this information, the translation table below is amended
> +# to show these devices in the pci (8) output.
> +
> +builtin cd '#$/pci' && grep . *ctl | {
> +     if (~ $bridges no)
> +             sed /:06/d
> +     if not
> +             cat
> +     } |
> +     sed '
> +     s/ctl:/:        /
> +     t noop
> +: noop
> +     s/:     (02\..*\ 1af4\/1000)/:  virtio-net     \1/
> +     s/:     (01\..*\ 1af4\/1001)/:  virtio-disk    \1/
> +     s/:     (00\..*\ 1af4\/1002)/:  virtio-balloon \1/
> +     s/:     (07\..*\ 1af4\/1003)/:  virtio-console \1/
> +     s/:     (01\..*\ 1af4\/1004)/:  virtio-scsi    \1/
> +     s/:     (00\..*\ 1af4\/1005)/:  virtio-rng     \1/
> +     s/:     (00\..*\ 1af4\/1009)/:  virtio-9p      \1/
> +     s/:     01/:    disk  01/
> +     s/:     02/:    net   02/
> +     s/:     03/:    vid   03/
> +     s/:     04/:    aud   04/
> +     s/:     05/:    mem   05/
> +     s/:     06/:    brg   06/
> +     s/:     07/:    ser   07/
> +     s/:     0c\.03/:        usb   0c.03/
> +     s/:     0c\.05/:        smb   0c.05/
> +     s/:     0d/:    rad   0d/
> +     s/:     10/:    cryp  10/
> +     t
> +     s/      /       ---  /
> +' | $filter

-- 
You received this message because you are subscribed to the Google Groups 
"Akaros" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to