[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAE9FiQVHwR7ge-hFXq=xqOTZEzHdm5AqiwFC3HEcrTKxeDcePg@mail.gmail.com>
Date: Fri, 27 Mar 2015 19:07:32 -0700
From: Yinghai Lu <yinghai@...nel.org>
To: Sam Ravnborg <sam@...nborg.org>
Cc: David Ahern <david.ahern@...cle.com>,
Bjorn Helgaas <bhelgaas@...gle.com>,
"linux-pci@...r.kernel.org" <linux-pci@...r.kernel.org>,
"sparclinux@...r.kernel.org" <sparclinux@...r.kernel.org>,
LKML <linux-kernel@...r.kernel.org>
Subject: Re: d63e2e1f3df breaks sparc/T5-8
On Fri, Mar 27, 2015 at 6:05 PM, Sam Ravnborg <sam@...nborg.org> wrote:
>>
>> Index: linux-2.6/arch/alpha/Kconfig
>> ===================================================================
>> --- linux-2.6.orig/arch/alpha/Kconfig
>> +++ linux-2.6/arch/alpha/Kconfig
>> @@ -66,6 +66,9 @@ config ZONE_DMA
>> config ARCH_DMA_ADDR_T_64BIT
>> def_bool y
>>
>> +config ARCH_PCI_BUS_ADDR_T_64BIT
>> + def_bool y
>> +
> For alpha you define a new symbol with a default value.
>
>> config NEED_DMA_MAP_STATE
>> def_bool y
>>
>> Index: linux-2.6/arch/arm/Kconfig
>> ===================================================================
>> --- linux-2.6.orig/arch/arm/Kconfig
>> +++ linux-2.6/arch/arm/Kconfig
>> @@ -1779,6 +1779,7 @@ config XEN
>> depends on !GENERIC_ATOMIC64
>> depends on MMU
>> select ARCH_DMA_ADDR_T_64BIT
>> + select ARCH_PCI_BUS_ADDR_T_64BIT
>> select ARM_PSCI
>> select SWIOTLB_XEN
>> help
> For arm you use select ...
>
> As the actual definition of the Kconfig symbol is already
> present in mm/Kconfig please use select in all cases.
>
>> Index: linux-2.6/arch/arm/mm/Kconfig
>> ===================================================================
>> --- linux-2.6.orig/arch/arm/mm/Kconfig
>> +++ linux-2.6/arch/arm/mm/Kconfig
>> @@ -630,6 +630,9 @@ config ARCH_PHYS_ADDR_T_64BIT
>> config ARCH_DMA_ADDR_T_64BIT
>> bool
>>
>> +config ARCH_PCI_BUS_ADDR_T_64BIT
>> + bool
>> +
> Here it would have been nice with a comment that explains the use of ths symbol.
just duplicate the ARCH_DMA_ADDR_T_64BIT above
>
>> config ARM_THUMB
>> bool "Support Thumb user binaries" if !CPU_THUMBONLY
>> depends on CPU_ARM720T || CPU_ARM740T || CPU_ARM920T || CPU_ARM922T || \
>> Index: linux-2.6/arch/arm64/Kconfig
>> ===================================================================
>> --- linux-2.6.orig/arch/arm64/Kconfig
>> +++ linux-2.6/arch/arm64/Kconfig
>> @@ -125,6 +125,9 @@ config HAVE_GENERIC_RCU_GUP
>> config ARCH_DMA_ADDR_T_64BIT
>> def_bool y
>>
>> +config ARCH_PCI_BUS_ADDR_T_64BIT
>> + def_bool y
>> +
> Use select
...
I was trying to keep the style to be consistent with old one in each Kconfig.
So do we just need to make sure new added lines to use new style?
>
>> Index: linux-2.6/include/linux/types.h
>> ===================================================================
>> --- linux-2.6.orig/include/linux/types.h
>> +++ linux-2.6/include/linux/types.h
>> @@ -146,6 +146,13 @@ typedef u64 dma_addr_t;
>> typedef u32 dma_addr_t;
>> #endif /* dma_addr_t */
>>
>> +/* A pci_bus_addr_t can hold pci bus address for the platform */
>> +#ifdef CONFIG_ARCH_PCI_BUS_ADDR_T_64BIT
>> +typedef u64 pci_bus_addr_t;
>> +#else
>> +typedef u32 pci_bus_addr_t;
>> +#endif /* pci_bus_addr_t */
>> +
> Looking att all the Kconfig logic I get the impression that
> the type of pci_bus_addr_t equals unsigned long.
> If this is correct then you can skip that and things
> gets much simpler.
For x86 32bit with PAE support, we could use 64bit for bus address.
but unsigned long is 32bit.
Thanks
Yinghai
--
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