diff mbox

[U-Boot,08/11] dm: x86: minnowmax: Move PCI to use driver model

Message ID 1433688642-19861-9-git-send-email-sjg@chromium.org
State Superseded
Delegated to: Simon Glass
Headers show

Commit Message

Simon Glass June 7, 2015, 2:50 p.m. UTC
Adjust minnowmax to use driver model for PCI. This requires adding a device
tree node to specify the ranges, removing the board-specific PCI code and
ensuring that the host bridge is configured.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

 arch/x86/cpu/baytrail/Makefile |  1 -
 arch/x86/cpu/baytrail/pci.c    | 46 ------------------------------------------
 arch/x86/dts/minnowmax.dts     | 10 +++++++++
 configs/minnowmax_defconfig    |  1 +
 include/configs/minnowmax.h    |  1 +
 5 files changed, 12 insertions(+), 47 deletions(-)
 delete mode 100644 arch/x86/cpu/baytrail/pci.c

Comments

Bin Meng June 8, 2015, 2:34 a.m. UTC | #1
On Sun, Jun 7, 2015 at 10:50 PM, Simon Glass <sjg@chromium.org> wrote:
> Adjust minnowmax to use driver model for PCI. This requires adding a device
> tree node to specify the ranges, removing the board-specific PCI code and
> ensuring that the host bridge is configured.
>
> Signed-off-by: Simon Glass <sjg@chromium.org>
> ---
>
>  arch/x86/cpu/baytrail/Makefile |  1 -
>  arch/x86/cpu/baytrail/pci.c    | 46 ------------------------------------------
>  arch/x86/dts/minnowmax.dts     | 10 +++++++++
>  configs/minnowmax_defconfig    |  1 +
>  include/configs/minnowmax.h    |  1 +
>  5 files changed, 12 insertions(+), 47 deletions(-)
>  delete mode 100644 arch/x86/cpu/baytrail/pci.c
>
> diff --git a/arch/x86/cpu/baytrail/Makefile b/arch/x86/cpu/baytrail/Makefile
> index c78b644..5be5491 100644
> --- a/arch/x86/cpu/baytrail/Makefile
> +++ b/arch/x86/cpu/baytrail/Makefile
> @@ -7,5 +7,4 @@
>  obj-y += cpu.o
>  obj-y += early_uart.o
>  obj-y += fsp_configs.o
> -obj-y += pci.o
>  obj-y += valleyview.o
> diff --git a/arch/x86/cpu/baytrail/pci.c b/arch/x86/cpu/baytrail/pci.c
> deleted file mode 100644
> index 48409de..0000000
> --- a/arch/x86/cpu/baytrail/pci.c
> +++ /dev/null
> @@ -1,46 +0,0 @@
> -/*
> - * Copyright (C) 2014, Bin Meng <bmeng.cn@gmail.com>
> - *
> - * SPDX-License-Identifier:    GPL-2.0+
> - */
> -
> -#include <common.h>
> -#include <pci.h>
> -#include <asm/pci.h>
> -#include <asm/fsp/fsp_support.h>
> -
> -DECLARE_GLOBAL_DATA_PTR;
> -
> -void board_pci_setup_hose(struct pci_controller *hose)
> -{
> -       hose->first_busno = 0;
> -       hose->last_busno = 0;
> -
> -       /* PCI memory space */
> -       pci_set_region(hose->regions + 0,
> -                      CONFIG_PCI_MEM_BUS,
> -                      CONFIG_PCI_MEM_PHYS,
> -                      CONFIG_PCI_MEM_SIZE,
> -                      PCI_REGION_MEM);
> -
> -       /* PCI IO space */
> -       pci_set_region(hose->regions + 1,
> -                      CONFIG_PCI_IO_BUS,
> -                      CONFIG_PCI_IO_PHYS,
> -                      CONFIG_PCI_IO_SIZE,
> -                      PCI_REGION_IO);
> -
> -       pci_set_region(hose->regions + 2,
> -                      CONFIG_PCI_PREF_BUS,
> -                      CONFIG_PCI_PREF_PHYS,
> -                      CONFIG_PCI_PREF_SIZE,
> -                      PCI_REGION_PREFETCH);
> -
> -       pci_set_region(hose->regions + 3,
> -                      0,
> -                      0,
> -                      gd->ram_size < 0x80000000 ? gd->ram_size : 0x80000000,
> -                      PCI_REGION_MEM | PCI_REGION_SYS_MEMORY);
> -
> -       hose->region_count = 4;
> -}
> diff --git a/arch/x86/dts/minnowmax.dts b/arch/x86/dts/minnowmax.dts
> index bd21bfb..0e59b18 100644
> --- a/arch/x86/dts/minnowmax.dts
> +++ b/arch/x86/dts/minnowmax.dts
> @@ -111,6 +111,16 @@
>
>         };
>
> +       pci {
> +               compatible = "intel,pci-baytrail", "pci-x86";
> +               #address-cells = <3>;
> +               #size-cells = <2>;
> +               u-boot,dm-pre-reloc;
> +               ranges = <0x02000000 0x0 0xd0000000 0xd0000000 0 0x10000000
> +                       0x42000000 0x0 0xc0000000 0xc0000000 0 0x10000000
> +                       0x01000000 0x0 0x2000 0x2000 0 0xe000>;
> +       };
> +
>         spi {
>                 #address-cells = <1>;
>                 #size-cells = <0>;
> diff --git a/configs/minnowmax_defconfig b/configs/minnowmax_defconfig
> index 744aca3..ff2bfda 100644
> --- a/configs/minnowmax_defconfig
> +++ b/configs/minnowmax_defconfig
> @@ -12,3 +12,4 @@ CONFIG_CMD_CPU=y
>  CONFIG_CMD_NET=y
>  CONFIG_OF_CONTROL=y
>  CONFIG_CPU=y
> +CONFIG_DM_PCI=y
> diff --git a/include/configs/minnowmax.h b/include/configs/minnowmax.h
> index d4d28a7..41653ba 100644
> --- a/include/configs/minnowmax.h
> +++ b/include/configs/minnowmax.h
> @@ -32,6 +32,7 @@
>  #define CONFIG_PCI_IO_PHYS             CONFIG_PCI_IO_BUS
>  #define CONFIG_PCI_IO_SIZE             0xe000
>
> +#define CONFIG_PCI_CONFIG_HOST_BRIDGE
>  #define CONFIG_SYS_EARLY_PCI_INIT
>  #define CONFIG_PCI_PNP
>  #define CONFIG_RTL8169
> --

Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
diff mbox

Patch

diff --git a/arch/x86/cpu/baytrail/Makefile b/arch/x86/cpu/baytrail/Makefile
index c78b644..5be5491 100644
--- a/arch/x86/cpu/baytrail/Makefile
+++ b/arch/x86/cpu/baytrail/Makefile
@@ -7,5 +7,4 @@ 
 obj-y += cpu.o
 obj-y += early_uart.o
 obj-y += fsp_configs.o
-obj-y += pci.o
 obj-y += valleyview.o
diff --git a/arch/x86/cpu/baytrail/pci.c b/arch/x86/cpu/baytrail/pci.c
deleted file mode 100644
index 48409de..0000000
--- a/arch/x86/cpu/baytrail/pci.c
+++ /dev/null
@@ -1,46 +0,0 @@ 
-/*
- * Copyright (C) 2014, Bin Meng <bmeng.cn@gmail.com>
- *
- * SPDX-License-Identifier:	GPL-2.0+
- */
-
-#include <common.h>
-#include <pci.h>
-#include <asm/pci.h>
-#include <asm/fsp/fsp_support.h>
-
-DECLARE_GLOBAL_DATA_PTR;
-
-void board_pci_setup_hose(struct pci_controller *hose)
-{
-	hose->first_busno = 0;
-	hose->last_busno = 0;
-
-	/* PCI memory space */
-	pci_set_region(hose->regions + 0,
-		       CONFIG_PCI_MEM_BUS,
-		       CONFIG_PCI_MEM_PHYS,
-		       CONFIG_PCI_MEM_SIZE,
-		       PCI_REGION_MEM);
-
-	/* PCI IO space */
-	pci_set_region(hose->regions + 1,
-		       CONFIG_PCI_IO_BUS,
-		       CONFIG_PCI_IO_PHYS,
-		       CONFIG_PCI_IO_SIZE,
-		       PCI_REGION_IO);
-
-	pci_set_region(hose->regions + 2,
-		       CONFIG_PCI_PREF_BUS,
-		       CONFIG_PCI_PREF_PHYS,
-		       CONFIG_PCI_PREF_SIZE,
-		       PCI_REGION_PREFETCH);
-
-	pci_set_region(hose->regions + 3,
-		       0,
-		       0,
-		       gd->ram_size < 0x80000000 ? gd->ram_size : 0x80000000,
-		       PCI_REGION_MEM | PCI_REGION_SYS_MEMORY);
-
-	hose->region_count = 4;
-}
diff --git a/arch/x86/dts/minnowmax.dts b/arch/x86/dts/minnowmax.dts
index bd21bfb..0e59b18 100644
--- a/arch/x86/dts/minnowmax.dts
+++ b/arch/x86/dts/minnowmax.dts
@@ -111,6 +111,16 @@ 
 
 	};
 
+	pci {
+		compatible = "intel,pci-baytrail", "pci-x86";
+		#address-cells = <3>;
+		#size-cells = <2>;
+		u-boot,dm-pre-reloc;
+		ranges = <0x02000000 0x0 0xd0000000 0xd0000000 0 0x10000000
+			0x42000000 0x0 0xc0000000 0xc0000000 0 0x10000000
+			0x01000000 0x0 0x2000 0x2000 0 0xe000>;
+	};
+
 	spi {
 		#address-cells = <1>;
 		#size-cells = <0>;
diff --git a/configs/minnowmax_defconfig b/configs/minnowmax_defconfig
index 744aca3..ff2bfda 100644
--- a/configs/minnowmax_defconfig
+++ b/configs/minnowmax_defconfig
@@ -12,3 +12,4 @@  CONFIG_CMD_CPU=y
 CONFIG_CMD_NET=y
 CONFIG_OF_CONTROL=y
 CONFIG_CPU=y
+CONFIG_DM_PCI=y
diff --git a/include/configs/minnowmax.h b/include/configs/minnowmax.h
index d4d28a7..41653ba 100644
--- a/include/configs/minnowmax.h
+++ b/include/configs/minnowmax.h
@@ -32,6 +32,7 @@ 
 #define CONFIG_PCI_IO_PHYS		CONFIG_PCI_IO_BUS
 #define CONFIG_PCI_IO_SIZE		0xe000
 
+#define CONFIG_PCI_CONFIG_HOST_BRIDGE
 #define CONFIG_SYS_EARLY_PCI_INIT
 #define CONFIG_PCI_PNP
 #define CONFIG_RTL8169