~ubuntu-branches/ubuntu/wily/slof/wily

« back to all changes in this revision

Viewing changes to board-qemu/slof/pci-interrupts.fs

  • Committer: Package Import Robot
  • Author(s): Logan Rosen
  • Date: 2013-05-04 20:41:17 UTC
  • mfrom: (2.1.1 sid)
  • Revision ID: package-import@ubuntu.com-20130504204117-fb1q6em82ugu8plb
Tags: 20121018+dfsg-1ubuntu1
* Merge from Debian unstable. Remaining changes:
  - Since Ubuntu always builds Architecture: all packages on i386, build
    using a cross-compiler.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
 
 
2
: pci-gen-irq-map-one ( prop-addr prop-len slot pin -- prop-addr prop-len )
 
3
        2dup + 4 mod                                        ( prop-addr prop-len slot pin parentpin )
 
4
        get-node >space
 
5
        pci-addr2dev + 1- 4 mod 1+  \ do swizzling          ( prop-addr prop-len slot pin swizzledpin )
 
6
        >r >r >r                                            ( prop-addr prop-len R: swizzledpin pin slot )
 
7
 
 
8
        r> B lshift encode-int+
 
9
        0 encode-64+                \ device slot           ( prop-addr prop-len R: swizzledpin pin )
 
10
        r> encode-int+              \ device pin            ( prop-addr prop-len R: swizzledpin )
 
11
 
 
12
        get-parent encode-int+      \ parent phandle
 
13
        0 encode-int+ 0 encode-64+  \ parent slot
 
14
        r> encode-int+              \ parent swizzled pin   ( prop-addr prop-len R: )
 
15
;
 
16
 
1
17
: pci-gen-irq-entry ( prop-addr prop-len config-addr -- prop-addr prop-len )
2
 
  ." SHOULD NOT GET THERE !" cr
3
 
  drop
 
18
        pci-addr2dev 4 mod          ( prop-addr prop-len slot )
 
19
        -rot                        ( slot prop-addr prop-len )
 
20
        5 1 DO
 
21
                2 pick i            ( slot prop-addr prop-len slot pin )
 
22
                pci-gen-irq-map-one
 
23
        LOOP
 
24
        rot drop
4
25
;
5
26
 
6
27
: pci-set-irq-line ( config-addr -- )