[Skiboot] [PATCH 5/9] phb4: Add register access helpers

Michael Neuling mikey at neuling.org
Sat Jul 8 19:23:33 AEST 2017


This doesn't compile alone with the below.

Benh, I have a bunch of additional patches to fix some addition phb4 recovery
issues that depend on this series.  I might just fix this up and repost with my
stuff on top.

HEAD is now at 9b14cc79a5 phb4: Add register access helpers
hw/phb4.c:166:13: error: ‘phb4_write_reg’ defined but not used [-Werror=unused-
function]
 static void phb4_write_reg(struct phb4 *p, uint32_t offset, uint64_t val)
             ^~~~~~~~~~~~~~
hw/phb4.c:158:17: error: ‘phb4_read_reg’ defined but not used [-Werror=unused-
function]
 static uint64_t phb4_read_reg(struct phb4 *p, uint32_t offset)
                 ^~~~~~~~~~~~~
cc1: all warnings being treated as errors
/home/mikey/src/skiboot/Makefile.rules:56: recipe for target 'hw/phb4.o' failed
make: *** [hw/phb4.o] Error 1




On Fri, 2017-07-07 at 16:08 -0500, Benjamin Herrenschmidt wrote:
> Those will pick between ASB (ie, XSCOM) accesses and direct MMIO
> based on PHB flags, thus allowing transparent access whether the
> PHB is fenced or not.
> 
> Signed-off-by: Benjamin Herrenschmidt <benh at kernel.crashing.org>
> ---
>  hw/phb4.c | 16 ++++++++++++++++
>  1 file changed, 16 insertions(+)
> 
> diff --git a/hw/phb4.c b/hw/phb4.c
> index 30122ed..03b357d 100644
> --- a/hw/phb4.c
> +++ b/hw/phb4.c
> @@ -155,6 +155,22 @@ static inline void phb4_write_reg_asb(struct phb4 *p,
>  #endif
>  }
>  
> +static uint64_t phb4_read_reg(struct phb4 *p, uint32_t offset)
> +{
> +	if (p->flags & PHB4_CFG_USE_ASB)
> +		return phb4_read_reg_asb(p, offset);
> +	else
> +		return in_be64(p->regs + offset);
> +}
> +
> +static void phb4_write_reg(struct phb4 *p, uint32_t offset, uint64_t val)
> +{
> +	if (p->flags & PHB4_CFG_USE_ASB)
> +		phb4_write_reg_asb(p, offset, val);
> +	else
> +		return out_be64(p->regs + offset, val);
> +}
> +
>  /* Helper to select an IODA table entry */
>  static inline void phb4_ioda_sel(struct phb4 *p, uint32_t table,
>  				 uint32_t addr, bool autoinc)


More information about the Skiboot mailing list