[linux-sh:03330] Re: new board for 2.6.8.1
[email protected] Mon, 4 Oct 2004 14:28:44 +0900
| Newsgroups | gmane.linux.ports.sh.general,gmane.linux.ports.sh.devel |
|---|---|
| Message-ID | <E72207F23E63B946ABC48F66E52D066D01E88657@exchange1.intranet.interface.co.jp> |
Dear Paul-san: >If you need the pdev, the better solution is to just do all of >this as your own >fixup in arch/sh/drivers/pci/fixups-sh03.c. The way to do this >would be to >implement your own pcibios_fixup_irqs() in the fixups-sh03.c >which in turn does >the proper swizzling and irq routing (which in this case will >get you access to >the pdev for free). > >In order for this to work in the SH7751 case though, we need >to make the >existing pcibios_fixup_irqs() in >arch/sh/drivers/pci/pci-sh7751.c a weak symbol, >which can then be overloaded by the fixups-sh03.c definition. > >So, please implement your routing in fixups-sh03.c, get rid of >your changes >to pci-sh7751.c entirely, and try something like this: > >--- orig/arch/sh/drivers/pci/pci-sh7751.c >+++ mod/arch/sh/drivers/pci/pci-sh7751.c >@@ -33,6 +33,8 @@ > static unsigned int pci_probe = PCI_PROBE_CONF1; > extern int pci_fixup_pcic(void); > >+void pcibios_fixup_irqs(void) __attribute__ ((weak)); >+ > /* > * Direct access to PCI hardware... > */ I made arch/sh/drivers/pci/fixups-sh03.c by the method of Paul-san. Please refer to the following URL for the results of these changes. <URL: http://www12.ocn.ne.jp/~ifpublib/sh-linux/ctp-sh03-20041004.patch.bz2> ------ Saito.K