From 15e5d9ec58649fc45490aff113f018c5e6a76d6e Mon Sep 17 00:00:00 2001 From: mycroft Date: Thu, 27 Mar 2003 19:46:14 +0000 Subject: [PATCH] Add a couple of byte-wide variants that weren't implemented -- I guess because nobody else has a byte-accessible bus. --- sys/arch/arm/arm/bus_space_asm_generic.S | 29 +++++++++++++++++++++++- 1 file changed, 28 insertions(+), 1 deletion(-) diff --git a/sys/arch/arm/arm/bus_space_asm_generic.S b/sys/arch/arm/arm/bus_space_asm_generic.S index d5bd5e15f1d0..e36fe7334a9b 100644 --- a/sys/arch/arm/arm/bus_space_asm_generic.S +++ b/sys/arch/arm/arm/bus_space_asm_generic.S @@ -1,4 +1,4 @@ -/* $NetBSD: bus_space_asm_generic.S,v 1.2 2002/08/29 17:27:48 briggs Exp $ */ +/* $NetBSD: bus_space_asm_generic.S,v 1.3 2003/03/27 19:46:14 mycroft Exp $ */ /* * Copyright (c) 1997 Causality Limited. @@ -225,6 +225,20 @@ ENTRY(generic_bs_rr_4) * write region. */ +ENTRY(generic_bs_wr_1) + add r0, r1, r2 + mov r1, r3 + ldr r2, [sp, #0] + teq r2, #0 + moveq pc, lr + +1: ldrb r3, [r1], #1 + strb r3, [r0], #1 + subs r2, r2, #1 + bne 1b + + mov pc, lr + #if (ARM_ARCH_4 + ARM_ARCH_5) > 0 ENTRY(generic_armv4_bs_wr_2) add r0, r1, r2 @@ -259,6 +273,19 @@ ENTRY(generic_bs_wr_4) * set region */ +ENTRY(generic_bs_sr_1) + add r0, r1, r2 + mov r1, r3 + ldr r2, [sp, #0] + teq r2, #0 + moveq pc, lr + +1: strb r1, [r0], #1 + subs r2, r2, #1 + bne 1b + + mov pc, lr + #if (ARM_ARCH_4 + ARM_ARCH_5) > 0 ENTRY(generic_armv4_bs_sr_2) add r0, r1, r2