Re: [edk2] [platforms: PATCH 2/3] Marvell/Library: ArmadaSoCDescLib: Add North Bridge description

2019-01-21 Thread Marcin Wojtas
Hi Leif,

pon., 21 sty 2019 o 12:32 Leif Lindholm  napisaƂ(a):
>
> On Mon, Jan 21, 2019 at 11:52:10AM +0100, Marcin Wojtas wrote:
> > From: Grzegorz Jaszczyk 
> >
> > For upcomming patch there is need to get AP806 base, provide required
> > getter function for it.
> >
> > Contributed-under: TianoCore Contribution Agreement 1.1
> > Signed-off-by: Marcin Wojtas 
> > ---
> >  
> > Silicon/Marvell/Armada7k8k/Library/Armada7k8kSoCDescLib/Armada7k8kSoCDescLib.h
> >  |  1 +
> >  Silicon/Marvell/Include/Library/ArmadaSoCDescLib.h 
> > | 10 ++
> >  
> > Silicon/Marvell/Armada7k8k/Library/Armada7k8kSoCDescLib/Armada7k8kSoCDescLib.c
> >  | 17 +
> >  3 files changed, 28 insertions(+)
> >
> > diff --git 
> > a/Silicon/Marvell/Armada7k8k/Library/Armada7k8kSoCDescLib/Armada7k8kSoCDescLib.h
> >  
> > b/Silicon/Marvell/Armada7k8k/Library/Armada7k8kSoCDescLib/Armada7k8kSoCDescLib.h
> > index bfc8639..6caee6c 100644
> > --- 
> > a/Silicon/Marvell/Armada7k8k/Library/Armada7k8kSoCDescLib/Armada7k8kSoCDescLib.h
> > +++ 
> > b/Silicon/Marvell/Armada7k8k/Library/Armada7k8kSoCDescLib/Armada7k8kSoCDescLib.h
> > @@ -22,6 +22,7 @@
> >  // Common macros
> >  //
> >  #define MV_SOC_CP_BASE(Cp)   (0xF200 + ((Cp) * 0x200))
> > +#define MV_SOC_AP806_BASE0xF000
> >  #define MV_SOC_AP806_COUNT   1
> >
> >  //
> > diff --git a/Silicon/Marvell/Include/Library/ArmadaSoCDescLib.h 
> > b/Silicon/Marvell/Include/Library/ArmadaSoCDescLib.h
> > index 26b075a..7aec9be 100644
> > --- a/Silicon/Marvell/Include/Library/ArmadaSoCDescLib.h
> > +++ b/Silicon/Marvell/Include/Library/ArmadaSoCDescLib.h
> > @@ -20,6 +20,16 @@
> >  #include 
> >
> >  //
> > +// North Bridge description
> > +//
> > +EFI_STATUS
> > +EFIAPI
> > +ArmadaSoCAp8xxBaseGet (
> > +  IN OUT UINT64  *ApBase,
> > +  IN UINTNApIndex
> > +  );
> > +
> > +//
> >  // ComPhy SoC description
> >  //
> >  typedef struct {
> > diff --git 
> > a/Silicon/Marvell/Armada7k8k/Library/Armada7k8kSoCDescLib/Armada7k8kSoCDescLib.c
> >  
> > b/Silicon/Marvell/Armada7k8k/Library/Armada7k8kSoCDescLib/Armada7k8kSoCDescLib.c
> > index 5b72c20..089ac2d 100644
> > --- 
> > a/Silicon/Marvell/Armada7k8k/Library/Armada7k8kSoCDescLib/Armada7k8kSoCDescLib.c
> > +++ 
> > b/Silicon/Marvell/Armada7k8k/Library/Armada7k8kSoCDescLib/Armada7k8kSoCDescLib.c
> > @@ -30,6 +30,23 @@
> >
>
> As I said, I was going to get stricter about adding function
> description comments - please add one here. (And clone it to
> ArmadaSoCDescLib.h, for the obious place to go look for a template
> when implementing a variant for a new platform.)

Sure, I will add it.

>
> >  EFI_STATUS
> >  EFIAPI
> > +ArmadaSoCAp8xxBaseGet (
> > +  IN OUT UINT64  *ApBase,
> > +  IN UINTNApIndex
> > +  )
> > +{
> > +  if (ApIndex != 0) {
>
> This test should be using ARMADA7K8K_AP806_INDEX, and that definition
> should be added to this patch.
>

Ok.

Thanks,
Marcin

> > +DEBUG ((DEBUG_ERROR, "%a: Only one AP806 in A7K/A8K SoC\n", 
> > __FUNCTION__));
> > +return EFI_INVALID_PARAMETER;
> > +  }
> > +
> > +  *ApBase = MV_SOC_AP806_BASE;
> > +
> > +  return EFI_SUCCESS;
> > +}
> > +
> > +EFI_STATUS
> > +EFIAPI
> >  ArmadaSoCDescComPhyGet (
> >IN OUT MV_SOC_COMPHY_DESC  **ComPhyDesc,
> >IN OUT UINTN*DescCount
> > --
> > 2.7.4
> >
___
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel


Re: [edk2] [platforms: PATCH 2/3] Marvell/Library: ArmadaSoCDescLib: Add North Bridge description

2019-01-21 Thread Leif Lindholm
On Mon, Jan 21, 2019 at 11:52:10AM +0100, Marcin Wojtas wrote:
> From: Grzegorz Jaszczyk 
> 
> For upcomming patch there is need to get AP806 base, provide required
> getter function for it.
> 
> Contributed-under: TianoCore Contribution Agreement 1.1
> Signed-off-by: Marcin Wojtas 
> ---
>  
> Silicon/Marvell/Armada7k8k/Library/Armada7k8kSoCDescLib/Armada7k8kSoCDescLib.h
>  |  1 +
>  Silicon/Marvell/Include/Library/ArmadaSoCDescLib.h   
>   | 10 ++
>  
> Silicon/Marvell/Armada7k8k/Library/Armada7k8kSoCDescLib/Armada7k8kSoCDescLib.c
>  | 17 +
>  3 files changed, 28 insertions(+)
> 
> diff --git 
> a/Silicon/Marvell/Armada7k8k/Library/Armada7k8kSoCDescLib/Armada7k8kSoCDescLib.h
>  
> b/Silicon/Marvell/Armada7k8k/Library/Armada7k8kSoCDescLib/Armada7k8kSoCDescLib.h
> index bfc8639..6caee6c 100644
> --- 
> a/Silicon/Marvell/Armada7k8k/Library/Armada7k8kSoCDescLib/Armada7k8kSoCDescLib.h
> +++ 
> b/Silicon/Marvell/Armada7k8k/Library/Armada7k8kSoCDescLib/Armada7k8kSoCDescLib.h
> @@ -22,6 +22,7 @@
>  // Common macros
>  //
>  #define MV_SOC_CP_BASE(Cp)   (0xF200 + ((Cp) * 0x200))
> +#define MV_SOC_AP806_BASE0xF000
>  #define MV_SOC_AP806_COUNT   1
>  
>  //
> diff --git a/Silicon/Marvell/Include/Library/ArmadaSoCDescLib.h 
> b/Silicon/Marvell/Include/Library/ArmadaSoCDescLib.h
> index 26b075a..7aec9be 100644
> --- a/Silicon/Marvell/Include/Library/ArmadaSoCDescLib.h
> +++ b/Silicon/Marvell/Include/Library/ArmadaSoCDescLib.h
> @@ -20,6 +20,16 @@
>  #include 
>  
>  //
> +// North Bridge description
> +//
> +EFI_STATUS
> +EFIAPI
> +ArmadaSoCAp8xxBaseGet (
> +  IN OUT UINT64  *ApBase,
> +  IN UINTNApIndex
> +  );
> +
> +//
>  // ComPhy SoC description
>  //
>  typedef struct {
> diff --git 
> a/Silicon/Marvell/Armada7k8k/Library/Armada7k8kSoCDescLib/Armada7k8kSoCDescLib.c
>  
> b/Silicon/Marvell/Armada7k8k/Library/Armada7k8kSoCDescLib/Armada7k8kSoCDescLib.c
> index 5b72c20..089ac2d 100644
> --- 
> a/Silicon/Marvell/Armada7k8k/Library/Armada7k8kSoCDescLib/Armada7k8kSoCDescLib.c
> +++ 
> b/Silicon/Marvell/Armada7k8k/Library/Armada7k8kSoCDescLib/Armada7k8kSoCDescLib.c
> @@ -30,6 +30,23 @@
>  

As I said, I was going to get stricter about adding function
description comments - please add one here. (And clone it to
ArmadaSoCDescLib.h, for the obious place to go look for a template
when implementing a variant for a new platform.)

>  EFI_STATUS
>  EFIAPI
> +ArmadaSoCAp8xxBaseGet (
> +  IN OUT UINT64  *ApBase,
> +  IN UINTNApIndex
> +  )
> +{
> +  if (ApIndex != 0) {

This test should be using ARMADA7K8K_AP806_INDEX, and that definition
should be added to this patch.

> +DEBUG ((DEBUG_ERROR, "%a: Only one AP806 in A7K/A8K SoC\n", 
> __FUNCTION__));
> +return EFI_INVALID_PARAMETER;
> +  }
> +
> +  *ApBase = MV_SOC_AP806_BASE;
> +
> +  return EFI_SUCCESS;
> +}
> +
> +EFI_STATUS
> +EFIAPI
>  ArmadaSoCDescComPhyGet (
>IN OUT MV_SOC_COMPHY_DESC  **ComPhyDesc,
>IN OUT UINTN*DescCount
> -- 
> 2.7.4
> 
___
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel


[edk2] [platforms: PATCH 2/3] Marvell/Library: ArmadaSoCDescLib: Add North Bridge description

2019-01-21 Thread Marcin Wojtas
From: Grzegorz Jaszczyk 

For upcomming patch there is need to get AP806 base, provide required
getter function for it.

Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Marcin Wojtas 
---
 Silicon/Marvell/Armada7k8k/Library/Armada7k8kSoCDescLib/Armada7k8kSoCDescLib.h 
|  1 +
 Silicon/Marvell/Include/Library/ArmadaSoCDescLib.h 
| 10 ++
 Silicon/Marvell/Armada7k8k/Library/Armada7k8kSoCDescLib/Armada7k8kSoCDescLib.c 
| 17 +
 3 files changed, 28 insertions(+)

diff --git 
a/Silicon/Marvell/Armada7k8k/Library/Armada7k8kSoCDescLib/Armada7k8kSoCDescLib.h
 
b/Silicon/Marvell/Armada7k8k/Library/Armada7k8kSoCDescLib/Armada7k8kSoCDescLib.h
index bfc8639..6caee6c 100644
--- 
a/Silicon/Marvell/Armada7k8k/Library/Armada7k8kSoCDescLib/Armada7k8kSoCDescLib.h
+++ 
b/Silicon/Marvell/Armada7k8k/Library/Armada7k8kSoCDescLib/Armada7k8kSoCDescLib.h
@@ -22,6 +22,7 @@
 // Common macros
 //
 #define MV_SOC_CP_BASE(Cp)   (0xF200 + ((Cp) * 0x200))
+#define MV_SOC_AP806_BASE0xF000
 #define MV_SOC_AP806_COUNT   1
 
 //
diff --git a/Silicon/Marvell/Include/Library/ArmadaSoCDescLib.h 
b/Silicon/Marvell/Include/Library/ArmadaSoCDescLib.h
index 26b075a..7aec9be 100644
--- a/Silicon/Marvell/Include/Library/ArmadaSoCDescLib.h
+++ b/Silicon/Marvell/Include/Library/ArmadaSoCDescLib.h
@@ -20,6 +20,16 @@
 #include 
 
 //
+// North Bridge description
+//
+EFI_STATUS
+EFIAPI
+ArmadaSoCAp8xxBaseGet (
+  IN OUT UINT64  *ApBase,
+  IN UINTNApIndex
+  );
+
+//
 // ComPhy SoC description
 //
 typedef struct {
diff --git 
a/Silicon/Marvell/Armada7k8k/Library/Armada7k8kSoCDescLib/Armada7k8kSoCDescLib.c
 
b/Silicon/Marvell/Armada7k8k/Library/Armada7k8kSoCDescLib/Armada7k8kSoCDescLib.c
index 5b72c20..089ac2d 100644
--- 
a/Silicon/Marvell/Armada7k8k/Library/Armada7k8kSoCDescLib/Armada7k8kSoCDescLib.c
+++ 
b/Silicon/Marvell/Armada7k8k/Library/Armada7k8kSoCDescLib/Armada7k8kSoCDescLib.c
@@ -30,6 +30,23 @@
 
 EFI_STATUS
 EFIAPI
+ArmadaSoCAp8xxBaseGet (
+  IN OUT UINT64  *ApBase,
+  IN UINTNApIndex
+  )
+{
+  if (ApIndex != 0) {
+DEBUG ((DEBUG_ERROR, "%a: Only one AP806 in A7K/A8K SoC\n", __FUNCTION__));
+return EFI_INVALID_PARAMETER;
+  }
+
+  *ApBase = MV_SOC_AP806_BASE;
+
+  return EFI_SUCCESS;
+}
+
+EFI_STATUS
+EFIAPI
 ArmadaSoCDescComPhyGet (
   IN OUT MV_SOC_COMPHY_DESC  **ComPhyDesc,
   IN OUT UINTN*DescCount
-- 
2.7.4

___
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel