Gary Thomas wrote: > I had a stable port of 2.6.26 for my 834x hardware, with a > frame buffer on a PCI device. After I upgraded to 2.6.28, > this isn't working any more. The frame buffer code is happily > writing to a mapped [memory] space on the PCI card, but nothing > is happening. > > Did something [subtle] change in how the PCI is handled in > this timeframe? Perhaps with how PCI devices are mapped or > enabled? I've looked at the changes between the two versions, > but nothing leaps out at me. > > n.b. I have other devices on the PCI bus, such as a SATA > controller, which work the same in both versions. > > Thanks for any ideas >
The difference seems to be in how the PCI bus gets mapped. In the working, 2.6.26 based kernel, 'lspci -v' shows this: 00:00.0 Bridge: Unknown device 1957:0084 (rev 11) Flags: bus master, 66MHz, fast devsel, latency 0 Memory at cc000000 (32-bit, non-prefetchable) [size=1M] Memory at c0000000 (64-bit, prefetchable) [size=128M] Memory at cc143100 (64-bit, non-prefetchable) [size=1] Capabilities: [48] #06 [0000] 00:0a.0 Network controller: Unknown device 001c:0001 (rev 02) Subsystem: Unknown device 001c:0004 Flags: medium devsel, IRQ 22 Memory at cc120000 (32-bit, non-prefetchable) [size=64K] Memory at cc130000 (32-bit, non-prefetchable) [size=64K] 00:0b.0 Mass storage controller: Promise Technology, Inc. PDC40775 (SATA 300 TX2plus) (rev 02) Subsystem: Promise Technology, Inc. Unknown device 3573 Flags: bus master, 66MHz, medium devsel, latency 0, IRQ 23 I/O ports at 1000 [size=128] I/O ports at 1100 [size=256] Memory at cc140000 (32-bit, non-prefetchable) [size=4K] Memory at cc100000 (32-bit, non-prefetchable) [size=128K] Capabilities: [60] Power Management version 2 00:0c.0 Display controller: Fujitsu Limited. Unknown device 2019 (rev 01) Flags: bus master, medium devsel, latency 0, IRQ 24 Memory at c8000000 (32-bit, non-prefetchable) [size=64M] 00:0d.0 USB Controller: Philips Semiconductors USB 1.1 Host Controller (rev 11) (prog-if 10 [OHCI]) Subsystem: Philips Semiconductors USB 1.1 Host Controller Flags: bus master, medium devsel, latency 0, IRQ 25 Memory at cc141000 (32-bit, non-prefetchable) [size=4K] Capabilities: [dc] Power Management version 2 00:0d.1 USB Controller: Philips Semiconductors USB 1.1 Host Controller (rev 11) (prog-if 10 [OHCI]) Subsystem: Philips Semiconductors USB 1.1 Host Controller Flags: bus master, medium devsel, latency 0, IRQ 25 Memory at cc142000 (32-bit, non-prefetchable) [size=4K] Capabilities: [dc] Power Management version 2 00:0d.2 USB Controller: Philips Semiconductors USB 2.0 Host Controller (rev 11) (prog-if 20 [EHCI]) Subsystem: Philips Semiconductors USB 2.0 Host Controller Flags: bus master, medium devsel, latency 0, IRQ 25 Memory at cc143000 (32-bit, non-prefetchable) [size=256] Capabilities: [dc] Power Management version 2 This is what 2.6.28 shows: 00:00.0 Bridge: Unknown device 1957:0084 (rev 11) Flags: bus master, 66MHz, fast devsel, latency 0 Memory at <unassigned> (64-bit, prefetchable) Memory at <unassigned> (64-bit, non-prefetchable) Capabilities: [48] #06 [0000] 00:0a.0 Network controller: Unknown device 001c:0001 (rev 02) Subsystem: Unknown device 001c:0004 Flags: medium devsel, IRQ 16 Memory at c4020000 (32-bit, non-prefetchable) [size=64K] Memory at c4030000 (32-bit, non-prefetchable) [size=64K] 00:0b.0 Mass storage controller: Promise Technology, Inc. PDC40775 (SATA 300 TX2plus) (rev 02) Subsystem: Promise Technology, Inc. Unknown device 3573 Flags: bus master, 66MHz, medium devsel, latency 0, IRQ 21 I/O ports at 1000 [size=128] I/O ports at 1100 [size=256] Memory at c4040000 (32-bit, non-prefetchable) [size=4K] Memory at c4000000 (32-bit, non-prefetchable) [size=128K] Capabilities: [60] Power Management version 2 00:0c.0 Display controller: Fujitsu Limited. Unknown device 2019 (rev 01) Flags: bus master, medium devsel, latency 0, IRQ 22 [virtual] Memory at c0000000 (32-bit, non-prefetchable) [size=64M] 00:0d.0 USB Controller: Philips Semiconductors USB 1.1 Host Controller (rev 11) (prog-if 10 [OHCI]) Subsystem: Philips Semiconductors USB 1.1 Host Controller Flags: bus master, medium devsel, latency 0, IRQ 23 Memory at c4041000 (32-bit, non-prefetchable) [size=4K] Capabilities: [dc] Power Management version 2 00:0d.1 USB Controller: Philips Semiconductors USB 1.1 Host Controller (rev 11) (prog-if 10 [OHCI]) Subsystem: Philips Semiconductors USB 1.1 Host Controller Flags: bus master, medium devsel, latency 0, IRQ 23 Memory at c4042000 (32-bit, non-prefetchable) [size=4K] Capabilities: [dc] Power Management version 2 00:0d.2 USB Controller: Philips Semiconductors USB 2.0 Host Controller (rev 11) (prog-if 20 [EHCI]) Subsystem: Philips Semiconductors USB 2.0 Host Controller Flags: bus master, medium devsel, latency 0, IRQ 23 Memory at c4043000 (32-bit, non-prefetchable) [size=256] Capabilities: [dc] Power Management version 2 The [two] big differences I see are that the video card (00:0d.0) is being assigned 0xC0000000, which lspci marks as "virtual". I think I've had trouble in the past with memory regions which started at 0 relative to the PCI space. Also "virtual" concerns me. Does this spark any ideas from anyone? -- ------------------------------------------------------------ Gary Thomas | Consulting for the MLB Associates | Embedded world ------------------------------------------------------------ _______________________________________________ Linuxppc-dev mailing list Linuxppc-dev@ozlabs.org https://ozlabs.org/mailman/listinfo/linuxppc-dev