All of lore.kernel.org
 help / color / mirror / Atom feed
From: Timur Tabi <timur@freescale.com>
To: Kyle Moffett <Kyle.D.Moffett@boeing.com>
Cc: Baruch Siach <baruch@tkos.co.il>,
	Sonny Rao <sonnyrao@linux.vnet.ibm.com>,
	linux-kernel@vger.kernel.org,
	Paul Gortmaker <paul.gortmaker@windriver.com>,
	Paul Mackerras <paulus@samba.org>,
	Scott Wood <scottwood@freescale.com>,
	Anatolij Gustschin <agust@denx.de>,
	linuxppc-dev@lists.ozlabs.org, Paul Bolle <pebolle@tiscali.nl>
Subject: Re: [RFC PATCH 02/17] powerpc: Split up PHYS_64BIT config option to fix "select" issues
Date: Thu, 10 Nov 2011 08:04:15 -0600	[thread overview]
Message-ID: <4EBBD9DF.6080100@freescale.com> (raw)
In-Reply-To: <1320883635-17194-3-git-send-email-Kyle.D.Moffett@boeing.com>

Kyle Moffett wrote:
>   CONFIG_PHYS_64BIT_SUPPORTED:
>     This hidden option should be selected by any CPU type which supports
>     64-bit physical addresses.  This will enable the PHYS_64BIT option
>     to be selected.  It is (obviously) always set on PPC64.
> 
>   CONFIG_PHYS_64BIT_DT_REQUIRED:
>     This hidden option should be selected by any board or platform which
>     has >32-bit physical devices present in hardware.  If this is set
>     then the CONFIG_PHYS_64BIT option will be forcibly enabled and
>     hidden from the user.  It is (obviously) always set on PPC64.
> 
>   CONFIG_PHYS_64BIT:
>     This option is user-controllable, where allowed by CPU and platform
>     settings, and should never be pointed at with a "select" statement.
>     Due to the values of the above two options, this is never visible on
>     PPC64.

I'm with Kumar on this.  I don't see the point of making it so complicated.  No kernel should ever have to care with a DT is 64-bit or 32-bit.  If you build a kernel with 64-bit phys support, then it will work with any DT.

U-Boot already warns you if the DT and the actual physical addresses of the devices don't match.

There are only two reasons to create a 32-bit kernel:

1) A small performance improvement on systems with 2GB or less.
2) Some SOC devices only support 32-bit physical addresses, so the easiest way to ensure a compatible address is to prohibit memory above 4GB.

Item #2 is not something that we really worry about.  It's only a real problem on true 64-bit kernels, and in those cases, we cannot build a kernel with 32-bit phys support, so the driver needs to handle it internally.

-- 
Timur Tabi
Linux kernel developer at Freescale

WARNING: multiple messages have this Message-ID (diff)
From: Timur Tabi <timur@freescale.com>
To: Kyle Moffett <Kyle.D.Moffett@boeing.com>
Cc: <linuxppc-dev@lists.ozlabs.org>, <linux-kernel@vger.kernel.org>,
	Baruch Siach <baruch@tkos.co.il>,
	Kumar Gala <galak@kernel.crashing.org>,
	Scott Wood <scottwood@freescale.com>,
	Paul Gortmaker <paul.gortmaker@windriver.com>,
	Benjamin Herrenschmidt <benh@kernel.crashing.org>,
	Paul Mackerras <paulus@samba.org>,
	Wolfram Sang <w.sang@pengutronix.de>,
	Grant Likely <grant.likely@secretlab.ca>,
	Anatolij Gustschin <agust@denx.de>,
	Paul Bolle <pebolle@tiscali.nl>,
	Sonny Rao <sonnyrao@linux.vnet.ibm.com>
Subject: Re: [RFC PATCH 02/17] powerpc: Split up PHYS_64BIT config option to fix "select" issues
Date: Thu, 10 Nov 2011 08:04:15 -0600	[thread overview]
Message-ID: <4EBBD9DF.6080100@freescale.com> (raw)
In-Reply-To: <1320883635-17194-3-git-send-email-Kyle.D.Moffett@boeing.com>

Kyle Moffett wrote:
>   CONFIG_PHYS_64BIT_SUPPORTED:
>     This hidden option should be selected by any CPU type which supports
>     64-bit physical addresses.  This will enable the PHYS_64BIT option
>     to be selected.  It is (obviously) always set on PPC64.
> 
>   CONFIG_PHYS_64BIT_DT_REQUIRED:
>     This hidden option should be selected by any board or platform which
>     has >32-bit physical devices present in hardware.  If this is set
>     then the CONFIG_PHYS_64BIT option will be forcibly enabled and
>     hidden from the user.  It is (obviously) always set on PPC64.
> 
>   CONFIG_PHYS_64BIT:
>     This option is user-controllable, where allowed by CPU and platform
>     settings, and should never be pointed at with a "select" statement.
>     Due to the values of the above two options, this is never visible on
>     PPC64.

I'm with Kumar on this.  I don't see the point of making it so complicated.  No kernel should ever have to care with a DT is 64-bit or 32-bit.  If you build a kernel with 64-bit phys support, then it will work with any DT.

U-Boot already warns you if the DT and the actual physical addresses of the devices don't match.

There are only two reasons to create a 32-bit kernel:

1) A small performance improvement on systems with 2GB or less.
2) Some SOC devices only support 32-bit physical addresses, so the easiest way to ensure a compatible address is to prohibit memory above 4GB.

Item #2 is not something that we really worry about.  It's only a real problem on true 64-bit kernels, and in those cases, we cannot build a kernel with 32-bit phys support, so the driver needs to handle it internally.

-- 
Timur Tabi
Linux kernel developer at Freescale


  parent reply	other threads:[~2011-11-10 14:04 UTC|newest]

Thread overview: 140+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-06-20  4:56 [RFC PATCH] powerpc: 85xx: Make e500/e500v2 depend on !E500MC Baruch Siach
2011-07-12  4:15 ` Baruch Siach
2011-07-28 19:56 ` Tabi Timur-B04825
2011-07-28 20:02   ` Timur Tabi
2011-08-01  5:02     ` Baruch Siach
2011-07-28 20:20   ` Scott Wood
2011-08-01  4:59     ` Baruch Siach
2011-08-01  5:12       ` [PATCH] powerpc: 85xx: separate e500 from e500mc Baruch Siach
2011-08-08  9:07         ` [PATCH v2] " Baruch Siach
2011-08-08 19:42           ` Scott Wood
2011-08-10  4:43             ` Baruch Siach
2011-08-10  5:21               ` [PATCH v3] " Baruch Siach
2011-08-10 15:39                 ` Paul Gortmaker
2011-08-10 16:01                   ` Scott Wood
2011-08-10 16:40                     ` Paul Gortmaker
2011-11-10  0:03                     ` [RFC PATCH 00/17] powerpc/e500: " Kyle Moffett
2011-11-10  0:03                       ` Kyle Moffett
2011-11-10 13:59                       ` Kumar Gala
2011-11-10 13:59                         ` Kumar Gala
2011-11-10 16:17                         ` Moffett, Kyle D
2011-11-10 16:17                           ` Moffett, Kyle D
2011-11-10 16:30                           ` Kumar Gala
2011-11-10 16:30                             ` Kumar Gala
2011-11-10 16:54                             ` Scott Wood
2011-11-10 16:54                               ` Scott Wood
2011-11-11  0:38                               ` Moffett, Kyle D
2011-11-11  0:38                                 ` Moffett, Kyle D
2011-11-11  4:40                                 ` Benjamin Herrenschmidt
2011-11-11  4:40                                   ` Benjamin Herrenschmidt
2011-11-15  2:32                                   ` [RFC PATCH 0/2] powerpc: CPU cache op cleanup Kyle Moffett
2011-11-15  2:32                                     ` Kyle Moffett
2011-11-15 22:29                                     ` Benjamin Herrenschmidt
2011-11-15 22:29                                       ` Benjamin Herrenschmidt
2011-11-15 22:45                                       ` Moffett, Kyle D
2011-11-15 22:45                                         ` Moffett, Kyle D
2011-11-15 23:46                                         ` Benjamin Herrenschmidt
2011-11-15 23:46                                           ` Benjamin Herrenschmidt
2011-11-16  0:25                                           ` Moffett, Kyle D
2011-11-16  0:25                                             ` Moffett, Kyle D
2011-11-16  4:40                                         ` Paul Mackerras
2011-11-16  4:40                                           ` Paul Mackerras
2011-11-16 20:52                                           ` Moffett, Kyle D
2011-11-16 20:52                                             ` Moffett, Kyle D
2011-11-15  2:32                                   ` [RFC PATCH 1/2] powerpc: Remove duplicate cacheable_memcpy/memzero functions Kyle Moffett
2011-11-15  2:32                                     ` Kyle Moffett
2011-11-15 22:31                                     ` Benjamin Herrenschmidt
2011-11-15 22:31                                       ` Benjamin Herrenschmidt
2011-11-15  2:32                                   ` [RFC PATCH 2/2] WIP: PowerPC cache cleanup Kyle Moffett
2011-11-15  2:32                                     ` Kyle Moffett
2011-11-15  2:36                                   ` [RFC PATCH 00/17] powerpc/e500: separate e500 from e500mc Moffett, Kyle D
2011-11-15  2:36                                     ` Moffett, Kyle D
2011-11-15  2:41                                     ` Tabi Timur-B04825
2011-11-15  2:41                                       ` Tabi Timur-B04825
2011-11-15  3:40                                       ` Kyle Moffett
2011-11-15  3:40                                         ` Kyle Moffett
2011-11-15 22:41                                     ` Benjamin Herrenschmidt
2011-11-15 22:41                                       ` Benjamin Herrenschmidt
2011-11-10  0:06                     ` Kyle Moffett
2011-11-10  0:06                       ` Kyle Moffett
2011-11-10  0:06                     ` [RFC PATCH 01/17] powerpc/mpic: Fix bogus CONFIG_BOOKE conditional Kyle Moffett
2011-11-10  0:06                       ` Kyle Moffett
2011-11-10 13:33                       ` Kumar Gala
2011-11-10 13:33                         ` Kumar Gala
2011-11-10  0:07                     ` [RFC PATCH 02/17] powerpc: Split up PHYS_64BIT config option to fix "select" issues Kyle Moffett
2011-11-10  0:07                       ` Kyle Moffett
2011-11-10 13:36                       ` Kumar Gala
2011-11-10 13:36                         ` Kumar Gala
2011-11-10 14:04                       ` Timur Tabi [this message]
2011-11-10 14:04                         ` Timur Tabi
2011-11-10 16:31                         ` Moffett, Kyle D
2011-11-10 16:31                           ` Moffett, Kyle D
2011-11-10 16:50                           ` Timur Tabi
2011-11-10 16:50                             ` Timur Tabi
2011-11-11  4:50                             ` Benjamin Herrenschmidt
2011-11-11  4:50                               ` Benjamin Herrenschmidt
2011-11-11 13:12                               ` Tabi Timur-B04825
2011-11-11 13:12                                 ` Tabi Timur-B04825
2011-11-10  0:07                     ` [RFC PATCH 03/17] fsl_rio: Remove FreeScale e500 conditionals Kyle Moffett
2011-11-10  0:07                       ` Kyle Moffett
2011-11-10  0:07                     ` [RFC PATCH 04/17] powerpc: Allow multiple machine-check handlers Kyle Moffett
2011-11-10  0:07                       ` Kyle Moffett
2011-11-10 13:37                       ` Kumar Gala
2011-11-10 13:37                         ` Kumar Gala
2011-11-10 16:33                         ` Moffett, Kyle D
2011-11-10 16:33                           ` Moffett, Kyle D
2011-11-10  0:07                     ` [RFC PATCH 05/17] powerpc/e500: Remove unused "default e500" from CPU table Kyle Moffett
2011-11-10  0:07                       ` Kyle Moffett
2011-11-10  0:07                     ` [RFC PATCH 06/17] powerpc/e500: Split FreeScale e500v1/v2 and e500mc config options Kyle Moffett
2011-11-10  0:07                       ` Kyle Moffett
2011-11-10  0:07                     ` [RFC PATCH 07/17] powerpc/e200: Rename CONFIG_E200 => CONFIG_FSL_E200 Kyle Moffett
2011-11-10  0:07                       ` Kyle Moffett
2011-11-10  0:07                     ` [RFC PATCH 08/17] powerpc/e500: Remove conditional "lwsync" substitution Kyle Moffett
2011-11-10  0:07                       ` Kyle Moffett
2011-11-10 13:40                       ` Kumar Gala
2011-11-10 13:40                         ` Kumar Gala
2011-11-10 16:31                         ` Scott Wood
2011-11-10 16:31                           ` Scott Wood
2011-11-10 16:42                           ` Kumar Gala
2011-11-10 16:42                             ` Kumar Gala
2011-11-10 17:03                             ` Scott Wood
2011-11-10 17:03                               ` Scott Wood
2011-11-10 20:27                               ` Moffett, Kyle D
2011-11-10 20:27                                 ` Moffett, Kyle D
2011-11-10 20:34                                 ` Kumar Gala
2011-11-10 20:34                                   ` Kumar Gala
2011-11-11  4:45                                   ` Benjamin Herrenschmidt
2011-11-11  4:45                                     ` Benjamin Herrenschmidt
2011-11-11  4:43                                 ` Benjamin Herrenschmidt
2011-11-11  4:43                                   ` Benjamin Herrenschmidt
2011-11-10  0:07                     ` [RFC PATCH 09/17] powerpc/e500: Split idle handlers for e500v1/v2 and e500mc Kyle Moffett
2011-11-10  0:07                       ` Kyle Moffett
2011-11-10  0:07                     ` [RFC PATCH 10/17] powerpc/e500: Fix up the last references to CONFIG_PPC_E500MC Kyle Moffett
2011-11-10  0:07                       ` Kyle Moffett
2011-11-10  0:07                     ` [RFC PATCH 11/17] powerpc/e500: Use the correct assembler flags for e500mc and e5500 Kyle Moffett
2011-11-10  0:07                       ` Kyle Moffett
2011-11-10  0:07                     ` [RFC PATCH 12/17] powerpc/e500: Separate e500mc CPU table entries from e500v1/e500v2 Kyle Moffett
2011-11-10  0:07                       ` Kyle Moffett
2011-11-10  0:07                     ` [RFC PATCH 13/17] powerpc/e500: Add a new CONFIG_FSL_E5500 option for the e5500 Kyle Moffett
2011-11-10  0:07                       ` Kyle Moffett
2011-11-10 13:46                       ` Kumar Gala
2011-11-10 13:46                         ` Kumar Gala
2011-11-10 16:49                       ` Scott Wood
2011-11-10 16:49                         ` Scott Wood
2011-11-10  0:07                     ` [RFC PATCH 14/17] powerpc/e500: Don't make kgdb use e500v1/e500v2 registers on e500mc Kyle Moffett
2011-11-10  0:07                       ` Kyle Moffett
2011-11-10 16:46                       ` Scott Wood
2011-11-10 16:46                         ` Scott Wood
2011-11-10  0:07                     ` [RFC PATCH 15/17] powerpc/e500: Fix up all remaining code uses of CONFIG_E500 Kyle Moffett
2011-11-10  0:07                       ` Kyle Moffett
2011-11-10  0:07                       ` Kyle Moffett
2011-11-10  0:07                     ` [RFC PATCH 16/17] powerpc/e500: Make __setup_cpu_{e200, e500, e500mc, e5500} optional Kyle Moffett
2011-11-10  0:07                       ` [RFC PATCH 16/17] powerpc/e500: Make __setup_cpu_{e200,e500,e500mc,e5500} optional Kyle Moffett
2011-11-10 16:47                       ` Scott Wood
2011-11-10 16:47                         ` Scott Wood
2011-11-10 18:52                         ` [RFC PATCH 16/17] powerpc/e500: Make __setup_cpu_{e200, e500, e500mc, e5500} optional Kumar Gala
2011-11-10 18:52                           ` [RFC PATCH 16/17] powerpc/e500: Make __setup_cpu_{e200,e500,e500mc,e5500} optional Kumar Gala
2011-11-10  0:07                     ` [RFC PATCH 17/17] powerpc/e500: Finally remove "CONFIG_E500" Kyle Moffett
2011-11-10  0:07                       ` Kyle Moffett
2011-10-24  6:00                 ` [PATCH v3] powerpc: 85xx: separate e500 from e500mc Baruch Siach
2011-07-29  7:23   ` [RFC PATCH] powerpc: 85xx: Make e500/e500v2 depend on !E500MC Baruch Siach

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=4EBBD9DF.6080100@freescale.com \
    --to=timur@freescale.com \
    --cc=Kyle.D.Moffett@boeing.com \
    --cc=agust@denx.de \
    --cc=baruch@tkos.co.il \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linuxppc-dev@lists.ozlabs.org \
    --cc=paul.gortmaker@windriver.com \
    --cc=paulus@samba.org \
    --cc=pebolle@tiscali.nl \
    --cc=scottwood@freescale.com \
    --cc=sonnyrao@linux.vnet.ibm.com \
    /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.