From: Gary Thomas <gary@mlbassoc.com>
To: linuxppc-dev@ozlabs.org
Subject: Re: PCI changes 2.6.26 => 2.6.28
Date: Tue, 21 Apr 2009 14:32:39 -0600 [thread overview]
Message-ID: <49EE2D67.10707@mlbassoc.com> (raw)
In-Reply-To: <49EE2CD8.7010700@mlbassoc.com>
Gary Thomas wrote:
> 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?
>
n.b. "virtual" means that Linux reports that the device has
been mapped to 0xC0000000, but the device address register
is still unset :-( How can this happen?
--
------------------------------------------------------------
Gary Thomas | Consulting for the
MLB Associates | Embedded world
------------------------------------------------------------
next prev parent reply other threads:[~2009-04-21 20:32 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-04-21 16:24 PCI changes 2.6.26 => 2.6.28 Gary Thomas
2009-04-21 20:30 ` Gary Thomas
2009-04-21 20:32 ` Gary Thomas [this message]
2009-04-21 20:33 ` Kumar Gala
2009-04-21 20:45 ` Gary Thomas
2009-04-21 22:22 ` Gary Thomas
2009-04-21 22:38 ` Kumar Gala
2009-04-21 22:50 ` Kumar Gala
2009-04-21 23:00 ` Gary Thomas
2009-04-21 23:41 ` Kumar Gala
2009-04-21 23:45 ` Gary Thomas
2009-04-22 3:51 ` Kumar Gala
2009-04-23 14:24 ` Gary Thomas
2009-04-23 18:47 ` Kumar Gala
2009-04-23 22:27 ` Gary Thomas
2009-04-27 13:17 ` Benjamin Herrenschmidt
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=49EE2D67.10707@mlbassoc.com \
--to=gary@mlbassoc.com \
--cc=linuxppc-dev@ozlabs.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).