diff options
author | Elias Bakken <elias@iagent.no> | 2023-02-21 02:15:01 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-02-20 20:15:01 -0500 |
commit | b7978d37b360fb270782a8db5d690342654e6977 (patch) | |
tree | 5383243d85dee85a521f466ac966460ee092efa2 /src/ar100/util.c | |
parent | d7bd7f1f4ba6cecd19daa566fdc1864561269ae1 (diff) | |
download | kutter-b7978d37b360fb270782a8db5d690342654e6977.tar.gz kutter-b7978d37b360fb270782a8db5d690342654e6977.tar.xz kutter-b7978d37b360fb270782a8db5d690342654e6977.zip |
ar100: Support for ar100 (#6054)
Add files to support AR100
Signed-off-by: Elias Bakken <elias@iagent.no>
Diffstat (limited to 'src/ar100/util.c')
-rw-r--r-- | src/ar100/util.c | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/src/ar100/util.c b/src/ar100/util.c new file mode 100644 index 00000000..7f2f9cf7 --- /dev/null +++ b/src/ar100/util.c @@ -0,0 +1,34 @@ +// Helper functions for ar100 +// +// Copyright (C) 2020-2021 Elias Bakken <elias@iagent.no> +// +// This file may be distributed under the terms of the GNU GPLv3 license. + +#include "util.h" + +void *memcpy(void *restrict dest, const void *restrict src, size_t n){ + // Typecast src and dest addresses to (char *) + char *csrc = (char *)src; + char *cdest = (char *)dest; + + // Copy contents of src[] to dest[] + for (int i=0; i<n; i++) + cdest[i] = csrc[i]; + return dest; +} + +void *memset(void *dest, int c, size_t n){ + unsigned char *s = dest; + for(; n; n--){ + *s++ = c; + } + return dest; +} + +void set_bit(uint32_t addr, uint8_t bit){ + write_reg(addr, read_reg(addr) | (1<<bit)); +} + +void clear_bit(uint32_t addr, uint8_t bit){ + write_reg(addr, read_reg(addr) & ~(1<<bit)); +} |