[Pdbg] [PATCH] libpdbg: Add api to get 32-bit device tree property

Amitay Isaacs amitay at ozlabs.org
Mon Nov 5 12:02:58 AEDT 2018


On Tue, 2018-10-23 at 14:35 +1100, Alistair Popple wrote:
> ---
>  libpdbg/libpdbg.c | 12 ++++++++++++
>  libpdbg/libpdbg.h |  1 +
>  2 files changed, 13 insertions(+)
> 
> diff --git a/libpdbg/libpdbg.c b/libpdbg/libpdbg.c
> index 810e045..ccaad3e 100644
> --- a/libpdbg/libpdbg.c
> +++ b/libpdbg/libpdbg.c
> @@ -186,6 +186,18 @@ static int pdbg_get_target_u64_property(struct
> pdbg_target *target, const char *
>  	return 0;
>  }
>  
> +int pdbg_get_target_u32_property(struct pdbg_target *target, const
> char *name, uint32_t *val)
> +{
> +	struct dt_property *p;
> +
> +	p = dt_find_property(target, name);
> +	if (!p)
> +		return -1;
> +
> +	*val = dt_get_number(p->prop, 1);
> +	return 0;
> +}
> +
>  int pdbg_get_u64_property(struct pdbg_target *target, const char
> *name, uint64_t *val)
>  {
>  	struct pdbg_target *dn;

May be we should add consistent function names?

How about pdbg_target_get_u32_property?
Or pdbg_target_get_property_u32?

We should fix names for get_property and set_property api too.
How much tied are we to the current libpdbg api?

> diff --git a/libpdbg/libpdbg.h b/libpdbg/libpdbg.h
> index c54e852..b1d6655 100644
> --- a/libpdbg/libpdbg.h
> +++ b/libpdbg/libpdbg.h
> @@ -72,6 +72,7 @@ void pdbg_set_target_property(struct pdbg_target
> *target, const char *name, cons
>  
>  /* Get the given property and return the size */
>  void *pdbg_get_target_property(struct pdbg_target *target, const
> char *name, size_t *size);
> +int pdbg_get_target_u32_property(struct pdbg_target *target, const
> char *name, uint32_t *val);
>  int pdbg_get_u64_property(struct pdbg_target *target, const char
> *name, uint64_t *val);
>  uint64_t pdbg_get_address(struct pdbg_target *target, uint64_t
> *size);
>  
> -- 
> 2.11.0
> 

Amitay.
-- 

In theory there is no difference between theory and practise. In 
practice, there is.  - Yogi Berra



More information about the Pdbg mailing list