Patchwork r4394 breaks on hardware (was: Re: [PATCH] v3 Resource allocator to v2)

login
register
about
Submitter Uwe Hermann
Date 2009-07-11 22:04:00
Message ID <20090711220400.GD18198@greenwood>
Download mbox | patch
Permalink /patch/24/
State Not Applicable
Headers show

Comments

Uwe Hermann - 2009-07-11 22:04:00
On Mon, Jul 06, 2009 at 09:25:27AM -0600, Myles Watson wrote:
> >    PNP: 002e.6 resource base 0 size 8 align 3 gran 3 limit 7ff flags 100
> > index 60
> >    PNP: 002e.6 resource base 0 size 1 align 0 gran 0 limit 0 flags 400
> > index 70
> >
> > The problem here is that these two resources are not fixed.  Since the
> > limit
> > is set to 7ff on 2e.6 @ 60, the resource allocator tries to fit everything
> > into 0-7ff.  If you make this resource fixed, or remove them, the problem
> > will disappear.
> 
> It looks like 2e.6 is Consumer IR, which is a TODO in the Config.lb.  Could
> you try changing it to:
> 
> device pnp 2e.6 off end

Yep, this fixes it indeed, thanks. Fix committed in r4423.

I attached a diff before/after the fix for reference.


Uwe.
Myles Watson - 2009-07-12 02:28:52
> > It looks like 2e.6 is Consumer IR, which is a TODO in the Config.lb.
> Could
> > you try changing it to:
> >
> > device pnp 2e.6 off end
> 
> Yep, this fixes it indeed, thanks. Fix committed in r4423.

Great!  Thanks for testing it.
 
> I attached a diff before/after the fix for reference.

Looks good.

Thanks,
Myles

Patch

--- minicom_msx_1.cap	2009-07-11 23:51:38.000000000 +0200
+++ minicom_msx_2.cap	2009-07-11 23:57:48.000000000 +0200
@@ -1,6 +1,6 @@ 
 
 
-coreboot-2.0.0-r4422M.0Fallback Sat Jul 11 23:31:50 CEST 2009 starting...
+coreboot-2.0.0-r4422M.0Fallback Sat Jul 11 23:54:56 CEST 2009 starting...
 SMBus controller enabled
 No DIMM found in slot 00
 Found DIMM in slot 01
@@ -18,16 +18,16 @@ 
 Check normal/payload
 CBFS: follow chain: fff88040 + 28 + d8c3 + align -> fff95930
 Check normal/coreboot_ram
-CBFS: follow chain: fff95930 + 38 + ba79 + align -> fffa13f0
+CBFS: follow chain: fff95930 + 38 + ba7e + align -> fffa13f0
 Check fallback/payload
 CBFS: follow chain: fffa13f0 + 38 + d8c3 + align -> fffaecf0
 Check fallback/coreboot_ram
 Stage: load @ 16384/163840 bytes, enter @ 4000
 Stage: done loading.
 Jumping to image.
-coreboot-2.0.0-r4422M.0Fallback Sat Jul 11 23:31:50 CEST 2009 booting...
+coreboot-2.0.0-r4422M.0Fallback Sat Jul 11 23:54:56 CEST 2009 booting...
 Calibrating delay loop...
-end 70c02ce6, start 234ad4b6
+end 70bfc59c, start 234a6da0
 32-bit delta 1239
 calibrate_tsc 32-bit result is 1239
 clocks_per_usec: 1239
@@ -46,7 +46,7 @@ 
 PNP: 002e.2: enabled 1, 2 resources
 PNP: 002e.3: enabled 1, 2 resources
 PNP: 002e.5: enabled 1, 4 resources
-PNP: 002e.6: enabled 1, 0 resources
+PNP: 002e.6: enabled 0, 0 resources
 PNP: 002e.7: enabled 1, 3 resources
 PNP: 002e.8: enabled 1, 0 resources
 PNP: 002e.9: enabled 1, 0 resources
@@ -71,7 +71,7 @@ 
    PNP: 002e.2: enabled 1, 2 resources
    PNP: 002e.3: enabled 1, 2 resources
    PNP: 002e.5: enabled 1, 4 resources
-   PNP: 002e.6: enabled 1, 0 resources
+   PNP: 002e.6: enabled 0, 0 resources
    PNP: 002e.7: enabled 1, 3 resources
    PNP: 002e.8: enabled 1, 0 resources
    PNP: 002e.9: enabled 1, 0 resources
@@ -177,7 +177,7 @@ 
 PNP: 002e.2 enabled
 PNP: 002e.3 enabled
 PNP: 002e.5 enabled
-PNP: 002e.6 enabled
+PNP: 002e.6 disabled
 PNP: 002e.7 enabled
 PNP: 002e.8 enabled
 PNP: 002e.9 enabled
@@ -278,8 +278,7 @@ 
 PCI: 00:1f.2 20 *  [0x8c0 - 0x8df] io
 PCI: 00:1f.1 20 *  [0x8e0 - 0x8ef] io
 PCI: 00:1f.3 20 *  [0x8f0 - 0x8ff] io
-PNP: 002e.6 60 *  [0xc00 - 0xc07] io
-PCI_DOMAIN: 0000 compute_resources_io: base: c08 size: c08 align: 8 gran: 0 limit: 7ff done
+PCI_DOMAIN: 0000 compute_resources_io: base: 900 size: 900 align: 8 gran: 0 limit: ffff done
 PCI_DOMAIN: 0000 compute_resources_mem: base: 0 size: 0 align: 0 gran: 0 limit: ffffffff
 PCI: 00:1e.0 compute_resources_prefmem: base: 0 size: 0 align: 20 gran: 20 limit: ffffffff
 PCI: 00:1e.0 compute_resources_prefmem: base: 0 size: 0 align: 20 gran: 20 limit: ffffffff done
@@ -289,7 +288,7 @@ 
 PCI: 00:01.0 14 *  [0x4000000 - 0x407ffff] mem
 PCI_DOMAIN: 0000 compute_resources_mem: base: 4080000 size: 4080000 align: 26 gran: 0 limit: ffffffff done
 avoid_fixed_resources: PCI_DOMAIN: 0000
-avoid_fixed_resources:@PCI_DOMAIN: 0000 10000000 limit 000007ff
+avoid_fixed_resources:@PCI_DOMAIN: 0000 10000000 limit 0000ffff
 avoid_fixed_resources:@PCI_DOMAIN: 0000 10000100 limit ffffffff
 constrain_resources: PCI_DOMAIN: 0000
 constrain_resources: PCI: 00:00.0
@@ -301,7 +300,6 @@ 
 constrain_resources: PNP: 002e.2
 constrain_resources: PNP: 002e.3
 constrain_resources: PNP: 002e.5
-constrain_resources: PNP: 002e.6
 constrain_resources: PNP: 002e.7
 constrain_resources: PNP: 002e.8
 constrain_resources: PNP: 002e.9
@@ -312,51 +310,22 @@ 
 constrain_resources: PCI: 00:1f.3
 constrain_resources: PCI: 00:1f.5
 constrain_resources: PCI: 00:1f.6
-avoid_fixed_resources2: PCI_DOMAIN: 0000@10000000 limit 000007ff
-	lim->base 00000065 lim->limit 00000200
+avoid_fixed_resources2: PCI_DOMAIN: 0000@10000000 limit 0000ffff
+	lim->base 00001000 lim->limit 0000ffff
 avoid_fixed_resources2: PCI_DOMAIN: 0000@10000100 limit ffffffff
 	lim->base 00000000 lim->limit febfffff
 Setting resources...
-PCI_DOMAIN: 0000 allocate_resources_io: base:65 size:c08 align:8 gran:0 limit:200
-Assigned: PCI: 00:1f.5 10 *  [0x100 - 0x1ff] io
-!! Resource didn't fit !!
-   aligned base 400 size 100 limit 200
-   4ff needs to be <= 200 (limit)
-   PCI: 00:1f.6 10 *  [0x400 - 0x4ff] io
-PCI: 00:1f.6 10 *  [0x400 - 0x4ff] io
-!! Resource didn't fit !!
-   aligned base 400 size 80 limit 200
-   47f needs to be <= 200 (limit)
-   PCI: 00:1f.6 14 *  [0x800 - 0x87f] io
-PCI: 00:1f.6 14 *  [0x800 - 0x87f] io
-!! Resource didn't fit !!
-   aligned base 400 size 40 limit 200
-   43f needs to be <= 200 (limit)
-   PCI: 00:1f.5 14 *  [0x880 - 0x8bf] io
-PCI: 00:1f.5 14 *  [0x880 - 0x8bf] io
-!! Resource didn't fit !!
-   aligned base 400 size 20 limit 200
-   41f needs to be <= 200 (limit)
-   PCI: 00:1f.2 20 *  [0x8c0 - 0x8df] io
-PCI: 00:1f.2 20 *  [0x8c0 - 0x8df] io
-!! Resource didn't fit !!
-   aligned base 400 size 10 limit 200
-   40f needs to be <= 200 (limit)
-   PCI: 00:1f.1 20 *  [0x8e0 - 0x8ef] io
-PCI: 00:1f.1 20 *  [0x8e0 - 0x8ef] io
-!! Resource didn't fit !!
-   aligned base 400 size 10 limit 200
-   40f needs to be <= 200 (limit)
-   PCI: 00:1f.3 20 *  [0x8f0 - 0x8ff] io
-PCI: 00:1f.3 20 *  [0x8f0 - 0x8ff] io
-!! Resource didn't fit !!
-   aligned base 400 size 8 limit 200
-   407 needs to be <= 200 (limit)
-   PNP: 002e.6 60 *  [0xc00 - 0xc07] io
-PNP: 002e.6 60 *  [0xc00 - 0xc07] io
-PCI_DOMAIN: 0000 allocate_resources_io: next_base: 400 size: c08 align: 8 gran: 0 done
-PCI: 00:1e.0 allocate_resources_io: base:200 size:0 align:12 gran:12 limit:200
-PCI: 00:1e.0 allocate_resources_io: next_base: 200 size: 0 align: 12 gran: 12 done
+PCI_DOMAIN: 0000 allocate_resources_io: base:1000 size:900 align:8 gran:0 limit:ffff
+Assigned: PCI: 00:1f.5 10 *  [0x1000 - 0x10ff] io
+Assigned: PCI: 00:1f.6 10 *  [0x1400 - 0x14ff] io
+Assigned: PCI: 00:1f.6 14 *  [0x1800 - 0x187f] io
+Assigned: PCI: 00:1f.5 14 *  [0x1880 - 0x18bf] io
+Assigned: PCI: 00:1f.2 20 *  [0x18c0 - 0x18df] io
+Assigned: PCI: 00:1f.1 20 *  [0x18e0 - 0x18ef] io
+Assigned: PCI: 00:1f.3 20 *  [0x18f0 - 0x18ff] io
+PCI_DOMAIN: 0000 allocate_resources_io: next_base: 1900 size: 900 align: 8 gran: 0 done
+PCI: 00:1e.0 allocate_resources_io: base:ffff size:0 align:12 gran:12 limit:ffff
+PCI: 00:1e.0 allocate_resources_io: next_base: ffff size: 0 align: 12 gran: 12 done
 PCI_DOMAIN: 0000 allocate_resources_mem: base:f8000000 size:4080000 align:26 gran:0 limit:febfffff
 Assigned: PCI: 00:01.0 10 *  [0xf8000000 - 0xfbffffff] prefmem
 Assigned: PCI: 00:01.0 14 *  [0xfc000000 - 0xfc07ffff] mem
@@ -372,7 +341,7 @@ 
 PCI: 00:01.0 10 <- [0x00f8000000 - 0x00fbffffff] size 0x04000000 gran 0x1a prefmem
 PCI: 00:01.0 14 <- [0x00fc000000 - 0x00fc07ffff] size 0x00080000 gran 0x13 mem
 PCI: 00:01.0 30 <- [0x00fff80000 - 0x00fff7ffff] size 0x00000000 gran 0x00 romem
-PCI: 00:1e.0 1c <- [0x0000000200 - 0x00000001ff] size 0x00000000 gran 0x0c bus 01 io
+PCI: 00:1e.0 1c <- [0x000000ffff - 0x000000fffe] size 0x00000000 gran 0x0c bus 01 io
 PCI: 00:1e.0 24 <- [0x00febfffff - 0x00febffffe] size 0x00000000 gran 0x14 bus 01 prefmem
 PCI: 00:1e.0 20 <- [0x00febfffff - 0x00febffffe] size 0x00000000 gran 0x14 bus 01 mem
 PCI: 00:1f.0 03 <- [0x00fec00000 - 0x00fec00fff] size 0x00001000 gran 0x00 mem
@@ -391,21 +360,19 @@ 
 PNP: 002e.5 62 <- [0x0000000064 - 0x0000000064] size 0x00000001 gran 0x00 io
 PNP: 002e.5 70 <- [0x0000000001 - 0x0000000001] size 0x00000001 gran 0x00 irq
 PNP: 002e.5 72 <- [0x000000000c - 0x000000000c] size 0x00000001 gran 0x00 irq
-ERROR: PNP: 002e.6 60 io size: 0x0000000008 not assigned
-ERROR: PNP: 002e.6 70 irq size: 0x0000000001 not assigned
 PNP: 002e.7 60 <- [0x0000000201 - 0x0000000201] size 0x00000001 gran 0x00 io
 PNP: 002e.7 62 <- [0x0000000330 - 0x0000000331] size 0x00000002 gran 0x01 io
 PNP: 002e.7 70 <- [0x0000000009 - 0x0000000009] size 0x00000001 gran 0x00 irq
 PNP: 002e.b 60 <- [0x0000000290 - 0x0000000297] size 0x00000008 gran 0x03 io
 PNP: 002e.b 70 <- [0x0000000005 - 0x0000000005] size 0x00000001 gran 0x00 irq
 PCI: 00:1f.0 assign_resources, bus 0 link: 0
-ERROR: PCI: 00:1f.1 20 io size: 0x0000000010 not assigned
-ERROR: PCI: 00:1f.2 20 io size: 0x0000000020 not assigned
-ERROR: PCI: 00:1f.3 20 io size: 0x0000000010 not assigned
-PCI: 00:1f.5 10 <- [0x0000000100 - 0x00000001ff] size 0x00000100 gran 0x08 io
-ERROR: PCI: 00:1f.5 14 io size: 0x0000000040 not assigned
-ERROR: PCI: 00:1f.6 10 io size: 0x0000000100 not assigned
-ERROR: PCI: 00:1f.6 14 io size: 0x0000000080 not assigned
+PCI: 00:1f.1 20 <- [0x00000018e0 - 0x00000018ef] size 0x00000010 gran 0x04 io
+PCI: 00:1f.2 20 <- [0x00000018c0 - 0x00000018df] size 0x00000020 gran 0x05 io
+PCI: 00:1f.3 20 <- [0x00000018f0 - 0x00000018ff] size 0x00000010 gran 0x04 io
+PCI: 00:1f.5 10 <- [0x0000001000 - 0x00000010ff] size 0x00000100 gran 0x08 io
+PCI: 00:1f.5 14 <- [0x0000001880 - 0x00000018bf] size 0x00000040 gran 0x06 io
+PCI: 00:1f.6 10 <- [0x0000001400 - 0x00000014ff] size 0x00000100 gran 0x08 io
+PCI: 00:1f.6 14 <- [0x0000001800 - 0x000000187f] size 0x00000080 gran 0x07 io
 PCI_DOMAIN: 0000 assign_resources, bus 0 link: 0
 Root Device assign_resources, bus 0 link: 0
 Done setting resources.
@@ -414,7 +381,7 @@ 
   APIC_CLUSTER: 0 links 1 child on link 0 APIC_CLUSTER: 0
    APIC: 00 links 0 child on link 0 NULL
   PCI_DOMAIN: 0000 links 1 child on link 0 PCI_DOMAIN: 0000
-  PCI_DOMAIN: 0000 resource base 65 size c08 align 8 gran 0 limit 200 flags 40040100 index 10000000
+  PCI_DOMAIN: 0000 resource base 1000 size 900 align 8 gran 0 limit ffff flags 40040100 index 10000000
   PCI_DOMAIN: 0000 resource base f8000000 size 4080000 align 26 gran 0 limit febfffff flags 40040200 index 10000100
   PCI_DOMAIN: 0000 resource base 0 size a0000 align 0 gran 0 limit 0 flags e0004200 index a
   PCI_DOMAIN: 0000 resource base c0000 size 7e40000 align 0 gran 0 limit 0 flags e0004200 index b
@@ -424,7 +391,7 @@ 
    PCI: 00:01.0 resource base fc000000 size 80000 align 19 gran 19 limit febfffff flags 60000200 index 14
    PCI: 00:01.0 resource base fff80000 size 0 align 0 gran 0 limit 0 flags e0002200 index 30
    PCI: 00:1e.0 links 1 child on link 0 NULL
-   PCI: 00:1e.0 resource base 200 size 0 align 12 gran 12 limit 200 flags 60080102 index 1c
+   PCI: 00:1e.0 resource base ffff size 0 align 12 gran 12 limit ffff flags 60080102 index 1c
    PCI: 00:1e.0 resource base febfffff size 0 align 20 gran 20 limit febfffff flags 60081202 index 24
    PCI: 00:1e.0 resource base febfffff size 0 align 20 gran 20 limit febfffff flags 60080202 index 20
    PCI: 00:1f.0 links 1 child on link 0 PCI: 00:1f.0
@@ -451,7 +418,7 @@ 
     PNP: 002e.5 resource base 1 size 1 align 0 gran 0 limit 0 flags e0000400 index 70
     PNP: 002e.5 resource base c size 1 align 0 gran 0 limit 0 flags e0000400 index 72
     PNP: 002e.6 links 0 child on link 0 NULL
-    PNP: 002e.6 resource base c00 size 8 align 3 gran 3 limit 200 flags 100 index 60
+    PNP: 002e.6 resource base 0 size 8 align 3 gran 3 limit 7ff flags 100 index 60
     PNP: 002e.6 resource base 0 size 1 align 0 gran 0 limit 0 flags 400 index 70
     PNP: 002e.7 links 0 child on link 0 NULL
     PNP: 002e.7 resource base 201 size 1 align 0 gran 0 limit ffffffff flags e0000100 index 60
@@ -464,17 +431,17 @@ 
     PNP: 002e.b resource base 290 size 8 align 3 gran 3 limit fff flags e0000100 index 60
     PNP: 002e.b resource base 5 size 1 align 0 gran 0 limit 0 flags e0000400 index 70
    PCI: 00:1f.1 links 0 child on link 0 NULL
-   PCI: 00:1f.1 resource base 8e0 size 10 align 4 gran 4 limit 200 flags 100 index 20
+   PCI: 00:1f.1 resource base 18e0 size 10 align 4 gran 4 limit ffff flags 60000100 index 20
    PCI: 00:1f.2 links 0 child on link 0 NULL
-   PCI: 00:1f.2 resource base 8c0 size 20 align 5 gran 5 limit 200 flags 100 index 20
+   PCI: 00:1f.2 resource base 18c0 size 20 align 5 gran 5 limit ffff flags 60000100 index 20
    PCI: 00:1f.3 links 0 child on link 0 NULL
-   PCI: 00:1f.3 resource base 8f0 size 10 align 4 gran 4 limit 200 flags 100 index 20
+   PCI: 00:1f.3 resource base 18f0 size 10 align 4 gran 4 limit ffff flags 60000100 index 20
    PCI: 00:1f.5 links 0 child on link 0 NULL
-   PCI: 00:1f.5 resource base 100 size 100 align 8 gran 8 limit 200 flags 60000100 index 10
-   PCI: 00:1f.5 resource base 880 size 40 align 6 gran 6 limit 200 flags 100 index 14
+   PCI: 00:1f.5 resource base 1000 size 100 align 8 gran 8 limit ffff flags 60000100 index 10
+   PCI: 00:1f.5 resource base 1880 size 40 align 6 gran 6 limit ffff flags 60000100 index 14
    PCI: 00:1f.6 links 0 child on link 0 NULL
-   PCI: 00:1f.6 resource base 400 size 100 align 8 gran 8 limit 200 flags 100 index 10
-   PCI: 00:1f.6 resource base 800 size 80 align 7 gran 7 limit 200 flags 100 index 14
+   PCI: 00:1f.6 resource base 1400 size 100 align 8 gran 8 limit ffff flags 60000100 index 10
+   PCI: 00:1f.6 resource base 1800 size 80 align 7 gran 7 limit ffff flags 60000100 index 14
 Done allocating resources.
 Enabling resources...
 PCI: 00:00.0 cmd <- 06
@@ -484,12 +451,12 @@ 
 PCI: 00:1e.0 cmd <- 01
 PCI: 00:1f.0 cmd <- 0f
 w83627hf hwm smbus enabled
-PCI: 00:1f.1 cmd <- 00
-PCI: 00:1f.2 cmd <- 00
+PCI: 00:1f.1 cmd <- 01
+PCI: 00:1f.2 cmd <- 01
 PCI: 00:1f.3 subsystem <- 00/00
 PCI: 00:1f.3 cmd <- 01
 PCI: 00:1f.5 cmd <- 01
-PCI: 00:1f.6 cmd <- 00
+PCI: 00:1f.6 cmd <- 01
 done.
 Initializing devices...
 Root Device init
@@ -564,7 +531,6 @@ 
 PNP: 002e.5 init
 Keyboard init...
 Keyboard selftest failed ACK: 0xfe
-PNP: 002e.6 init
 PNP: 002e.7 init
 PNP: 002e.8 init
 PNP: 002e.9 init
@@ -583,13 +549,13 @@ 
 Check normal/payload
 CBFS: follow chain: fff88040 + 28 + d8c3 + align -> fff95930
 Check normal/coreboot_ram
-CBFS: follow chain: fff95930 + 38 + ba79 + align -> fffa13f0
+CBFS: follow chain: fff95930 + 38 + ba7e + align -> fffa13f0
 Check fallback/payload
 CBFS: follow chain: fffa13f0 + 38 + d8c3 + align -> fffaecf0
 Check fallback/coreboot_ram
-CBFS: follow chain: fffaecf0 + 38 + ba83 + align -> fffba7b0
+CBFS: follow chain: fffaecf0 + 38 + ba89 + align -> fffba7c0
 Check 
-CBFS: follow chain: fffba7b0 + 28 + 25848 + align -> fffe0020
+CBFS: follow chain: fffba7c0 + 28 + 25838 + align -> fffe0020
 CBFS:  Could not find file pci8086,2423.rom
 In cbfs, rom address for PCI: 00:1f.3 = 00000000
 On mainboard, rom address for PCI: 00:1f.3 = 0
@@ -608,7 +574,7 @@ 
 PNP: 002e.2: enabled 1, 2 resources
 PNP: 002e.3: enabled 1, 2 resources
 PNP: 002e.5: enabled 1, 4 resources
-PNP: 002e.6: enabled 1, 2 resources
+PNP: 002e.6: enabled 0, 2 resources
 PNP: 002e.7: enabled 1, 3 resources
 PNP: 002e.8: enabled 1, 0 resources
 PNP: 002e.9: enabled 1, 0 resources
@@ -633,7 +599,7 @@ 
 Adjust low_table_end from 0x00000518 to 0x00001000 
 Adjust rom_table_end from 0x07ef0800 to 0x07f00000 
 Adding high table area
-Wrote coreboot table at: 07ef0800 - 07ef09ec  checksum 7827
+Wrote coreboot table at: 07ef0800 - 07ef09ec  checksum 6d1b
 Check CBFS header at fffdffd0
 magic is 4f524243
 Found CBFS header at fffdffd0
@@ -642,7 +608,7 @@ 
 Check normal/payload
 CBFS: follow chain: fff88040 + 28 + d8c3 + align -> fff95930
 Check normal/coreboot_ram
-CBFS: follow chain: fff95930 + 38 + ba79 + align -> fffa13f0
+CBFS: follow chain: fff95930 + 38 + ba7e + align -> fffa13f0
 Check fallback/payload
 Got a payload
 Segment fffa1428