public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Andres Salomon <dilinger@queued.net>
To: Daniel Drake <dsd@laptop.org>
Cc: tglx@linutronix.de, jbarnes@virtuousgeek.org,
	linux-pci@vger.kernel.org, x86@kernel.org,
	linux-kernel@vger.kernel.org
Subject: Re: [PATCH 2/3] PCI: OLPC configuration cleanup
Date: Wed, 22 Sep 2010 12:02:19 -0700	[thread overview]
Message-ID: <20100922120219.407ec023@debxo> (raw)
In-Reply-To: <20100922164402.A72D49D401B@zog.reactivated.net>

On Wed, 22 Sep 2010 17:44:02 +0100 (BST)
Daniel Drake <dsd@laptop.org> wrote:

> An OLPC system isn't usable without PCI, so we can simplify the
> configuration here.

Hm, I think I'm opposed to tying it into CONFIG_OLPC like that.  Future
plans call for an ARM-based OLPC which will presumably not have a PCI
bus.

..However, I'm also failing to come up w/ a good alternative right
now.  

> 
> Also updated the code to be clearer that this is only for XO-1, and
> fixed an issue where the XO-1 PCI configuration override was being
> applied for XO-1.5 laptops.
> 
> Based on earlier work by Deepak Saxena.
> 
> Signed-off-by: Daniel Drake <dsd@laptop.org>
> ---
>  arch/x86/Kconfig       |   12 +++---------
>  arch/x86/kernel/olpc.c |    4 +---
>  arch/x86/pci/Makefile  |    2 +-
>  arch/x86/pci/olpc.c    |    4 ++--
>  4 files changed, 7 insertions(+), 15 deletions(-)
> 
> diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig
> index cea0cd9..708ee0d 100644
> --- a/arch/x86/Kconfig
> +++ b/arch/x86/Kconfig
> @@ -1899,10 +1899,6 @@ config PCI_GOMMCONFIG
>  config PCI_GODIRECT
>  	bool "Direct"
>  
> -config PCI_GOOLPC
> -	bool "OLPC"
> -	depends on OLPC
> -
>  config PCI_GOANY
>  	bool "Any"
>  
> @@ -1915,16 +1911,12 @@ config PCI_BIOS
>  # x86-64 doesn't support PCI BIOS access from long mode so always go
> direct. config PCI_DIRECT
>  	def_bool y
> -	depends on PCI && (X86_64 || (PCI_GODIRECT || PCI_GOANY ||
> PCI_GOOLPC))
> +	depends on PCI && (X86_64 || (PCI_GODIRECT || PCI_GOANY))
>  
>  config PCI_MMCONFIG
>  	def_bool y
>  	depends on X86_32 && PCI && (ACPI || SFI) && (PCI_GOMMCONFIG
> || PCI_GOANY) 
> -config PCI_OLPC
> -	def_bool y
> -	depends on PCI && OLPC && (PCI_GOOLPC || PCI_GOANY)
> -
>  config PCI_DOMAINS
>  	def_bool y
>  	depends on PCI
> @@ -2060,6 +2052,8 @@ config SCx200HR_TIMER
>  
>  config OLPC
>  	bool "One Laptop Per Child support"
> +	select PCI
> +	select PCI_GOANY
>  	select GPIOLIB
>  	---help---
>  	  Add support for detecting the unique features of the OLPC
> diff --git a/arch/x86/kernel/olpc.c b/arch/x86/kernel/olpc.c
> index 0e0cdde..10b4dce 100644
> --- a/arch/x86/kernel/olpc.c
> +++ b/arch/x86/kernel/olpc.c
> @@ -241,11 +241,9 @@ static int __init olpc_init(void)
>  	olpc_ec_cmd(EC_FIRMWARE_REV, NULL, 0,
>  			(unsigned char *) &olpc_platform_info.ecver,
> 1); 
> -#ifdef CONFIG_PCI_OLPC
>  	/* If the VSA exists let it emulate PCI, if not emulate in
> kernel */
> -	if (!cs5535_has_vsa2())
> +	if (machine_is_olpc_xo_1() && !cs5535_has_vsa2())
>  		x86_init.pci.arch_init = pci_olpc_init;
> -#endif
>  
>  	printk(KERN_INFO "OLPC board revision %s%X (EC=%x)\n",
>  			((olpc_platform_info.boardrev & 0xf) < 8) ?
> "pre" : "", diff --git a/arch/x86/pci/Makefile b/arch/x86/pci/Makefile
> index a0207a7..b0f2712 100644
> --- a/arch/x86/pci/Makefile
> +++ b/arch/x86/pci/Makefile
> @@ -3,7 +3,7 @@ obj-y				:= i386.o init.o
>  obj-$(CONFIG_PCI_BIOS)		+= pcbios.o
>  obj-$(CONFIG_PCI_MMCONFIG)	+= mmconfig_$(BITS).o direct.o
> mmconfig-shared.o obj-$(CONFIG_PCI_DIRECT)	+= direct.o
> -obj-$(CONFIG_PCI_OLPC)		+= olpc.o
> +obj-$(CONFIG_OLPC)		+= olpc.o
>  
>  obj-y				+= fixup.o
>  obj-$(CONFIG_ACPI)		+= acpi.o
> diff --git a/arch/x86/pci/olpc.c b/arch/x86/pci/olpc.c
> index b348154..fa5ba7b 100644
> --- a/arch/x86/pci/olpc.c
> +++ b/arch/x86/pci/olpc.c
> @@ -1,5 +1,5 @@
>  /*
> - * Low-level PCI config space access for OLPC systems who lack the
> VSA
> + * Low-level PCI config space access for OLPC XO-1 systems who lack
> the VSA
>   * PCI virtualization software.
>   *
>   * Copyright © 2006  Advanced Micro Devices, Inc.
> @@ -304,7 +304,7 @@ static struct pci_raw_ops pci_olpc_conf = {
>  
>  int __init pci_olpc_init(void)
>  {
> -	printk(KERN_INFO "PCI: Using configuration type OLPC\n");
> +	printk(KERN_INFO "PCI: Using configuration type OLPC
> XO-1\n"); raw_pci_ops = &pci_olpc_conf;
>  	is_lx = is_geode_lx();
>  	return 0;


  parent reply	other threads:[~2010-09-22 18:42 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-09-22 16:44 [PATCH 2/3] PCI: OLPC configuration cleanup Daniel Drake
2010-09-22 17:10 ` Randy Dunlap
2010-09-22 19:02 ` Andres Salomon [this message]
2010-09-23 16:13   ` Daniel Drake

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=20100922120219.407ec023@debxo \
    --to=dilinger@queued.net \
    --cc=dsd@laptop.org \
    --cc=jbarnes@virtuousgeek.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pci@vger.kernel.org \
    --cc=tglx@linutronix.de \
    --cc=x86@kernel.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox