[OpenBIOS] [PATCH] Add tbu@ and tbl@ words

Jd Lyons lyons_dj at yahoo.com
Thu Dec 28 08:51:20 CET 2017



> On Dec 27, 2017, at 1:35 PM, John Arbuckle <programmingkidx at gmail.com> wrote:
> 
> The PowerPC timebase register is made available to forth using
> the tbu@ and tbl@ words. The tbu@ word pushes the upper 32 bits
> of this register. The tbl@ word pushes the lower 32 bits of
> this register.
> 
> Signed-off-by: John Arbuckle <programmingkidx at gmail.com>
> ---
> arch/ppc/qemu/init.c | 20 ++++++++++++++++++++
> 1 file changed, 20 insertions(+)
> 
> diff --git a/arch/ppc/qemu/init.c b/arch/ppc/qemu/init.c
> index 5ce080c..d12084c 100644
> --- a/arch/ppc/qemu/init.c
> +++ b/arch/ppc/qemu/init.c
> @@ -751,6 +751,22 @@ static void adler32(void)
>     RET(s2 << 16 | s1);
> }
> 
> +/* reads the upper timebase register ( -- tbu ) */
> +static void get_tbu(void)
> +{
> +    int time;
> +    asm volatile("mftbu %0" : "=r"(time)); // load from TBU register
> +    PUSH(time);
> +}
> +
> +/* reads the lower timebase register ( -- tbl ) */
> +static void get_tbl(void)
> +{
> +    int time;
> +    asm volatile("mftb %0" : "=r"(time)); // load from TBL register
> +    PUSH(time);
> +}
> +
> void
> arch_of_init(void)
> {
> @@ -1022,4 +1038,8 @@ arch_of_init(void)
> 
>     bind_func("platform-boot", boot);
>     bind_func("(arch-go)", arch_go);
> +    
> +    /* Makes the timebase register accessible from forth */
> +    bind_func("tbu@", get_tbu);
> +    bind_func("tbl@", get_tbl);
> }
> -- 
> 2.14.3 (Apple Git-98)
> 
> 
> -- 
> OpenBIOS                 http://openbios.org/
> Mailinglist:  http://lists.openbios.org/mailman/listinfo
> Free your System - May the Forth be with you

Ok, dumb question, how do I pull and apply this patch?






More information about the OpenBIOS mailing list