From: Valentine Barshak <vbarshak@ru.mvista.com>
To: Vitaly Bordug <vitb@kernel.crashing.org>
Cc: linuxppc-dev <linuxppc-dev@ozlabs.org>
Subject: Re: [PATCH] [RFC][POWERPC] Merge 32 and 64 bit pci_process_bridge_OF_ranges() instances
Date: Tue, 18 Sep 2007 18:38:56 +0400 [thread overview]
Message-ID: <46EFE300.1090108@ru.mvista.com> (raw)
In-Reply-To: <20070918182704.640c677f@localhost.localdomain>
Vitaly Bordug wrote:
> Hello Valentine,
>
> On Tue, 18 Sep 2007 16:03:50 +0400
> Valentine Barshak wrote:
>
>> Vitaly Bordug wrote:
>>> +
>>> + hose->io_base_phys = cpu_phys_addr - pci_addr;
>> This is not gonna work on 32-bit platform (unless pci_addr == 0).
>> Should be
>> hose->io_base_phys = cpu_phys_addr;
>> The other way we should adjust io size like we do on 64-bit and rewrite
>> resource fixup functions.
>>
> I think the second sounds like a plan then. We should not "assume" where we can make things to behave properly.
>
>>> + /* handle from 0 to top of I/O window */
>>> +#ifdef CONFIG_PPC64
>>> + hose->pci_io_size = pci_addr + size;
>>> +#endif
>>> + hose->io_base_virt = ioremap(hose->io_base_phys, size);
>> Do we need to ioremap on 64-bit? I think 64-bit uses different approach
>> in handling io space.
>>
> Correct - 64 bit code does __get_vm_area() so the upper line is ppc32-specific.
>>> +#ifdef CONFIG_PPC32
>>> + if (prim)
>>> + isa_io_base = (unsigned long)hose->io_base_virt;
>>> +#endif
>> What's exactly the point of merging this single function?
>> If this was intended to add 64-bit physical address support to 32-bit
>> platforms (like ppc440), then it does not seem sufficient to make pci
>> stuff work right.
>> What about the 32-bit pcibios_fixup_resources(),
>> pcibios_resource_to_bus(), pcibios_bus_to_resource() stuff?
>> There's still no 64-bit support. You'll get
>> "PCI Cannot allocate resource region" attempting to initialize resources
>> at PCI start-up.
> Because this function is critical to get the stuff going. You can have some devices working even without PCI resources initted
> (what in fact I had with mpc8272). I am in process of moving the mentioned to the common_... domain but I suspect there are other 32-bit-stick stuff still. So if you want to assist in cleaning this up, feel free to join the club...
Well, thanks for the invitation :)
I've been trying to work on the pci support here too. But I've used a
bit different approach. I tried to add 64-bit phys addr support to
pci_32.c. The patch seems to work on Sequoia. Actually, I thought
merging was too risky at this point and might cause more problems
breaking both 64 and 32-bit pci support.
Thanks,
Valentine.
next prev parent reply other threads:[~2007-09-18 14:40 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-09-11 22:49 [PATCH] [RFC][POWERPC] Merge 32 and 64 bit pci_process_bridge_OF_ranges() instances Vitaly Bordug
2007-09-11 22:57 ` Arnd Bergmann
2007-09-11 23:56 ` Vitaly Bordug
2007-09-12 8:13 ` Arnd Bergmann
2007-09-12 14:51 ` Segher Boessenkool
2007-09-12 16:07 ` Vitaly Bordug
2007-09-13 5:11 ` David Gibson
2007-09-18 12:03 ` Valentine Barshak
2007-09-18 14:27 ` Vitaly Bordug
2007-09-18 14:38 ` Valentine Barshak [this message]
2007-09-19 0:09 ` Vitaly Bordug
2007-09-18 21:44 ` Benjamin Herrenschmidt
2007-09-18 21:41 ` Benjamin Herrenschmidt
2007-09-18 21:42 ` 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=46EFE300.1090108@ru.mvista.com \
--to=vbarshak@ru.mvista.com \
--cc=linuxppc-dev@ozlabs.org \
--cc=vitb@kernel.crashing.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.