linux-pci.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Yinghai Lu <yinghai@kernel.org>
To: Steven Newbury <steve@snewbury.org.uk>,
	Linus Torvalds <torvalds@linux-foundation.org>
Cc: "Barnes, Jesse" <jesse.barnes@intel.com>,
	Dave Airlie <airlied@linux.ie>,
	Bjorn Helgaas <bhelgaas@google.com>,
	linux-pci@vger.kernel.org,
	DRI mailing list <dri-devel@lists.freedesktop.org>,
	Linux Kernel Mailing List <linux-kernel@vger.kernel.org>
Subject: Re: PCI resources above 4GB
Date: Sun, 15 Apr 2012 13:06:18 -0700	[thread overview]
Message-ID: <CAE9FiQVzC2YCkXtFDPkCMVMcMqt9c0t8hKVvpgFpwjRdBen0Uw@mail.gmail.com> (raw)
In-Reply-To: <CAE9FiQUsQjUNeW1sa_mQL6MEaDhxvoMhFaN9wLPAqOXzh+AXPQ@mail.gmail.com>

[-- Attachment #1: Type: text/plain, Size: 1667 bytes --]

On Sun, Apr 15, 2012 at 1:05 PM, Yinghai Lu <yinghai@kernel.org> wrote:
> On Sun, Apr 15, 2012 at 10:31 AM, Steven Newbury <steve@snewbury.org.uk> wrote:
>>>>>>>>
>>>>>>>> pci 0000:03:08.0: BAR 15: can't assign mem pref (size
>>>>>>>> 0x18000000)
>>>>>>> Ah! Not enough space for the bridge window!:(
>>>>>>>
>>>
>>>>>> please append pci=norom ...
>>>
>>>>> That worked.  Except of course the radeon driver can't POST the
>>>>>  card without the ROM! :-P
>>>> Can the ROM resource be mapped above 4G?
>>> I didn't really think that through, obviously it can't because
>>> it's not on a 64-bit capable bridge.  I wonder though, could it be
>>> shadowed then disabled early before the IOMEM?
>> I see there's "#if 0"'d helper functions for exactly that in rom.c.
>> They've been disabled since 2007!
>
> solution could be one of three:
> 1. when bridge support 64bit pref, will not allocate rom bar in bridge
> pref resource.
> ====> patch: rom_pref.patch
>
> 2. unconditionally to make rom bar allocation in bridge non-pref range.
> ====> patch: rom_no_pref.patch

missed attach rom_no_pref.patch

> Looks like BIOS and at least one of other OSes is doing that.
>
> I can not find the the history why ROM res is with PREFETCH bit set.
> Maybe Linus has some idea about that.
>
> 3. use pci_bus_allocate_resource in drm/radeon driver ... ===> but
> that could fail.
>   so could hack it like a. disable bar 0x10 and steal BAR address,
> then set 0x30 to that address then copy ROM to ram.
>   after that, disable rom again and set back address to 0x10.
>   You try to update radeon_get_bios() to achieve that.
>
>      Yinghai

[-- Attachment #2: rom_no_pref.patch --]
[-- Type: application/octet-stream, Size: 840 bytes --]

Subject: [PATCH] PCI: Don't allocate rom bar in bridge pref resource

Signed-off-by: Yinghai Lu <yinghai@kernel.org>

---
 drivers/pci/probe.c |    5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

Index: linux-2.6/drivers/pci/probe.c
===================================================================
--- linux-2.6.orig/drivers/pci/probe.c
+++ linux-2.6/drivers/pci/probe.c
@@ -336,9 +336,8 @@ static void pci_read_bases(struct pci_de
 	if (rom) {
 		struct resource *res = &dev->resource[PCI_ROM_RESOURCE];
 		dev->rom_base_reg = rom;
-		res->flags = IORESOURCE_MEM | IORESOURCE_PREFETCH |
-				IORESOURCE_READONLY | IORESOURCE_CACHEABLE |
-				IORESOURCE_SIZEALIGN;
+		res->flags = IORESOURCE_MEM | IORESOURCE_READONLY |
+				IORESOURCE_CACHEABLE | IORESOURCE_SIZEALIGN;
 		__pci_read_base(dev, pci_bar_mem32, res, rom);
 	}
 }

  reply	other threads:[~2012-04-15 20:06 UTC|newest]

Thread overview: 73+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-04-09 10:49 PCI resources above 4GB Steven Newbury
2012-04-10  0:51 ` Bjorn Helgaas
2012-04-10 10:53   ` Steven Newbury
2012-04-10 15:16     ` Yinghai Lu
     [not found]       ` <4F8467AA.90305@snewbury.org.uk>
2012-04-10 17:29         ` Steven Newbury
2012-04-10 18:40         ` Yinghai Lu
2012-04-10 18:44           ` Steven Newbury
2012-04-10 19:00           ` Steven Newbury
2012-04-10 19:04             ` Steven Newbury
2012-04-10 19:16             ` Yinghai Lu
2012-04-10 19:46               ` Steven Newbury
2012-04-10 20:07                 ` Yinghai Lu
2012-04-10 20:26                   ` Steven Newbury
2012-04-10 20:45                     ` Yinghai Lu
2012-04-10 21:19                       ` Steven Newbury
2012-04-11  3:37                         ` Bjorn Helgaas
2012-04-11  5:33                           ` Steven Newbury
2012-04-11  9:03                             ` Steven Newbury
2012-04-11 14:33                           ` Steven Newbury
2012-04-11 23:59                             ` Bjorn Helgaas
2012-04-12 11:39                               ` Steven Newbury
2012-04-12  0:57                         ` Yinghai Lu
2012-04-12 11:22                           ` Steven Newbury
2012-04-12 16:07                             ` Yinghai Lu
2012-04-12 16:40                               ` Steven Newbury
2012-04-13  8:26                                 ` Yinghai Lu
2012-04-13  8:34                                   ` Steven Newbury
2012-04-13 11:45                                   ` Steven Newbury
2012-04-13 11:58                                     ` Steven Newbury
2012-04-13 12:49                                       ` Steven Newbury
2012-04-13 13:26                                         ` Steven Newbury
2012-04-13 13:52                                           ` drm-next i915 regression? ( was: Re: PCI resources above 4GB) Steven Newbury
2012-04-13 14:08                                             ` Steven Newbury
2012-04-13 14:13                                               ` Daniel Vetter
2012-04-13 14:19                                                 ` Steven Newbury
2012-04-13 15:23                                                   ` Steven Newbury
2012-04-13 15:49                                                     ` Steven Newbury
2012-04-13 16:17                                                       ` Yinghai Lu
2012-04-13 17:12                                                         ` btrfs oops [was Re: drm-next i915 regression? ( was: Re: PCI resources above 4GB)] Steven Newbury
2012-04-13 17:38                                                         ` drm-next i915 regression? ( was: Re: PCI resources above 4GB) Steven Newbury
2012-04-13 18:12                                                           ` Steven Newbury
2012-04-13 21:51                                                             ` Btrfs corruption Oops " Steven Newbury
2012-04-14 17:37                                 ` PCI resources above 4GB Steven Newbury
2012-04-14 18:05                                   ` Steven Newbury
2012-04-14 18:42                                     ` Steven Newbury
2012-04-14 19:08                                       ` Steven Newbury
2012-04-14 19:21                                         ` Steven Newbury
2012-04-14 20:48                                           ` Yinghai Lu
2012-04-15 10:19                                             ` Steven Newbury
2012-04-15 10:20                                             ` Steven Newbury
2012-04-15 11:37                                               ` Steven Newbury
2012-04-15 17:25                                                 ` Steven Newbury
2012-04-15 17:31                                                   ` Steven Newbury
2012-04-15 20:05                                                     ` Yinghai Lu
2012-04-15 20:06                                                       ` Yinghai Lu [this message]
2012-04-16  6:54                                                         ` Yinghai Lu
2012-04-16  7:01                                                           ` Steven Newbury
2012-04-16 17:29                                                           ` Yinghai Lu
2012-04-18  7:21                                                             ` Steven Newbury
2012-04-24  9:49                                                             ` Steven Newbury
     [not found]                                                               ` <4FB227D3.7090002@snewbury.org.uk>
     [not found]                                                                 ` <CAE9FiQX48eCS85eWMFxm6fCWgu2zwxvSywtQhsf-35WEvBfJVQ@mail.gmail.com>
2012-05-17 12:27                                                                   ` Steven Newbury
2012-05-17 12:34                                                                     ` Steven Newbury
2012-05-17 16:36                                                                       ` Yinghai Lu
2012-05-18  7:45                                                                         ` Yinghai Lu
2012-05-18  9:08                                                                           ` Yinghai Lu
2012-05-21 17:27                                                                             ` Steven Newbury
2012-05-29 23:19                                                                               ` Bjorn Helgaas
2012-06-01 23:06                                                                                 ` Bjorn Helgaas
2012-04-15  3:21                                   ` Yinghai Lu
2012-04-15 10:18                                     ` Steven Newbury
2012-04-15 11:31                                     ` Steven Newbury
2012-04-12 16:29                             ` Steven Newbury
2012-04-11 11:43                       ` Steven Newbury

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=CAE9FiQVzC2YCkXtFDPkCMVMcMqt9c0t8hKVvpgFpwjRdBen0Uw@mail.gmail.com \
    --to=yinghai@kernel.org \
    --cc=airlied@linux.ie \
    --cc=bhelgaas@google.com \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=jesse.barnes@intel.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pci@vger.kernel.org \
    --cc=steve@snewbury.org.uk \
    --cc=torvalds@linux-foundation.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).