lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Thu, 6 Mar 2014 16:17:13 +0000 From: Liviu Dudau <Liviu.Dudau@....com> To: Arnd Bergmann <arnd@...db.de> Cc: linux-pci <linux-pci@...r.kernel.org>, Bjorn Helgaas <bhelgaas@...gle.com>, Catalin Marinas <Catalin.Marinas@....com>, Will Deacon <Will.Deacon@....com>, linaro-kernel <linaro-kernel@...ts.linaro.org>, Benjamin Herrenschmidt <benh@...nel.crashing.org>, LKML <linux-kernel@...r.kernel.org>, "devicetree@...r.kernel.org" <devicetree@...r.kernel.org>, LAKML <linux-arm-kernel@...ts.infradead.org>, Tanmay Inamdar <tinamdar@....com> Subject: Re: [PATCH v5 3/3] arm64: Add architecture support for PCI On Tue, Mar 04, 2014 at 10:28:51PM +0000, Arnd Bergmann wrote: > On Tuesday 04 March 2014, Liviu Dudau wrote: > > > +extern int isa_dma_bridge_buggy; > > As commented before, I still think we can hardcode this to off Unfortunately that doesn't work when you have CONFIG_PCI=y. drivers/pci/pci.c has: drivers/pci/pci.c:int isa_dma_bridge_buggy; drivers/pci/pci.c:EXPORT_SYMBOL(isa_dma_bridge_buggy); and drivers/pci/quirks.c does: drivers/pci/quirks.c: if (!isa_dma_bridge_buggy) { drivers/pci/quirks.c: isa_dma_bridge_buggy=1; drivers/pci/quirks.c- dev_info(&dev->dev, "Activating ISA DMA hang workarounds\n"); drivers/pci/quirks.c- } > > > +unsigned long pci_address_to_pio(phys_addr_t address) > > +{ > > + struct ioresource *res; > > + > > + list_for_each_entry(res, &io_list, list) { > > + if (address >= res->start && > > + address < res->start + res->size) { > > + return res->start - address; > > + } > > + } > > + > > + return (unsigned long)-1; > > +} > > +EXPORT_SYMBOL_GPL(pci_address_to_pio); > > This has two problems: > > - You return the address in bus space not the logical Linux > port number as powerpc and microblaze do. > - You imply that the window starts at bus address zero, which > might not be the case. That's definitely not the intention here. I want to return the logical port number and I want that port number to start from zero for every registered IO range. > > > +EXPORT_SYMBOL(pcibios_fixup_bus); > > no need for this export. OK. > > > +/* > > + * We don't have to worry about legacy ISA devices, so nothing to do here > > + */ > > +resource_size_t pcibios_align_resource(void *data, const struct resource *res, > > + resource_size_t size, resource_size_t align) > > +{ > > + return ALIGN(res->start, align); > > +} > > +EXPORT_SYMBOL(pcibios_align_resource); > > or this one. Also, the ALIGN() is already done by the PCI core. This has been fix in v6 already. Thanks for reviewing this! Liviu > > Arnd > -- ==================== | I would like to | | fix the world, | | but they're not | | giving me the | \ source code! / --------------- ¯\_(ツ)_/¯ -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@...r.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists