From 65c3d57dadac32b20048bb9446116214bf6309c3 Mon Sep 17 00:00:00 2001 From: Oleksij Rempel Date: Sat, 1 Oct 2016 14:10:41 +0200 Subject: [PATCH] remove unused cmnos_printf.c Signed-off-by: Oleksij Rempel --- .../magpie_fw_dev/target/cmnos/cmnos_printf.c | 322 ------------------ 1 file changed, 322 deletions(-) delete mode 100755 target_firmware/magpie_fw_dev/target/cmnos/cmnos_printf.c diff --git a/target_firmware/magpie_fw_dev/target/cmnos/cmnos_printf.c b/target_firmware/magpie_fw_dev/target/cmnos/cmnos_printf.c deleted file mode 100755 index c9a1826..0000000 --- a/target_firmware/magpie_fw_dev/target/cmnos/cmnos_printf.c +++ /dev/null @@ -1,322 +0,0 @@ -//####ECOSGPLCOPYRIGHTBEGIN#### -// ------------------------------------------- -// This file is part of eCos, the Embedded Configurable Operating System. -// Copyright (C) 1998, 1999, 2000, 2001, 2002 Red Hat, Inc. -// Copyright (C) 2002 Gary Thomas -// -// eCos is free software; you can redistribute it and/or modify it under -// the terms of the GNU General Public License as published by the Free -// Software Foundation; either version 2 or (at your option) any later version. -// -// eCos is distributed in the hope that it will be useful, but WITHOUT ANY -// WARRANTY; without even the implied warranty of MERCHANTABILITY or -// FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -// for more details. -// -// You should have received a copy of the GNU General Public License along -// with eCos; if not, write to the Free Software Foundation, Inc., -// 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -// -// As a special exception, if other files instantiate templates or use macros -// or inline functions from this file, or you compile this file and link it -// with other works to produce a work based on this file, this file does not -// by itself cause the resulting work to be covered by the GNU General Public -// License. However the source code for this file must still be made available -// in accordance with section (3) of the GNU General Public License. -// -// This exception does not invalidate any other reasons why a work based on -// this file might be covered by the GNU General Public License. -// -// Alternative licenses for eCos may be arranged by contacting Red Hat, Inc. -// at http://sources.redhat.com/ecos/ecos-license/ -// ------------------------------------------- -//####ECOSGPLCOPYRIGHTEND#### - -#include "dt_defs.h" -#include "sys_cfg.h" - -#if SYSTEM_MODULE_PRINT - -#include "athos_api.h" - -#define is_digit(c) ((c >= '0') && (c <= '9')) - -#if defined(__GNUC__) && defined(__mips__) -#define va_list __builtin_va_list -#define va_arg __builtin_va_arg -#define va_start __builtin_va_start -#define va_end __builtin_va_end -#define va_copy __builtin_va_copy -#endif - -#if defined(__XCC__) -#include "stdarg.h" -#define va_list __gnuc_va_list -#endif - -void -cmnos_write_char(char c) -{ - if (c == '\n') { - A_PUTC('\r'); - A_PUTC('\n'); - } else if (c == '\r') { - } else { - A_PUTC(c); - } -} - -void (*_putc)(char c) = cmnos_write_char; - -static int _cvt(unsigned long val, char *buf, long radix, char *digits) -{ - char temp[80]; - char *cp = temp; - int length = 0; - - if (val == 0) { - /* Special case */ - *cp++ = '0'; - } else { - while (val) { - *cp++ = digits[val % radix]; - val /= radix; - } - } - while (cp != temp) { - *buf++ = *--cp; - length++; - } - *buf = '\0'; - return (length); -} - - -static int cmnos_vprintf(void (*putc)(char c), const char *fmt, va_list ap) -{ - char buf[sizeof(long)*8]; - char c, sign, *cp=buf; - int left_prec, right_prec, zero_fill, pad, pad_on_right, - i, islong, islonglong; - long val = 0; - int res = 0, length = 0; - - while ((c = *fmt++) != '\0') { - if (c == '%') { - c = *fmt++; - left_prec = right_prec = pad_on_right = islong = islonglong = 0; - if (c == '-') { - c = *fmt++; - pad_on_right++; - } - if (c == '0') { - zero_fill = TRUE; - c = *fmt++; - } else { - zero_fill = FALSE; - } - while (is_digit(c)) { - left_prec = (left_prec * 10) + (c - '0'); - c = *fmt++; - } - if (c == '.') { - c = *fmt++; - zero_fill++; - while (is_digit(c)) { - right_prec = (right_prec * 10) + (c - '0'); - c = *fmt++; - } - } else { - right_prec = left_prec; - } - sign = '\0'; - if (c == 'l') { - // 'long' qualifier - c = *fmt++; - islong = 1; - if (c == 'l') { - // long long qualifier - c = *fmt++; - islonglong = 1; - } - } - // Fetch value [numeric descriptors only] - switch (c) { - case 'p': - islong = 1; - case 'd': - case 'D': - case 'x': - case 'X': - case 'u': - case 'U': - case 'b': - case 'B': - if (islonglong) { - val = va_arg(ap, long); - } else if (islong) { - val = (long)va_arg(ap, long); - } else{ - val = (long)va_arg(ap, int); - } - if ((c == 'd') || (c == 'D')) { - if (val < 0) { - sign = '-'; - val = -val; - } - } else { - // Mask to unsigned, sized quantity - if (islong) { - val &= (1ULL << (sizeof(long) * 8)) - 1; - } else{ - val &= (1ULL << (sizeof(int) * 8)) - 1; - } - } - break; - default: - break; - } - // Process output - switch (c) { - case 'p': // Pointer - (*putc)('0'); - (*putc)('x'); - zero_fill = TRUE; - left_prec = sizeof(unsigned long)*2; - case 'd': - case 'D': - case 'u': - case 'U': - case 'x': - case 'X': - switch (c) { - case 'd': - case 'D': - case 'u': - case 'U': - length = _cvt(val, buf, 10, "0123456789"); - break; - case 'p': - case 'x': - length = _cvt(val, buf, 16, "0123456789abcdef"); - break; - case 'X': - length = _cvt(val, buf, 16, "0123456789ABCDEF"); - break; - } - cp = buf; - break; - case 's': - case 'S': - cp = va_arg(ap, char *); - if (cp == NULL) { - cp = ""; - } - length = 0; - while (cp[length] != '\0') length++; - break; - case 'c': - case 'C': - c = va_arg(ap, int /*char*/); - (*putc)(c); - res++; - continue; - case 'b': - case 'B': - length = left_prec; - if (left_prec == 0) { - if (islonglong) - length = sizeof(long)*8; - else if (islong) - length = sizeof(long)*8; - else - length = sizeof(int)*8; - } - for (i = 0; i < length-1; i++) { - buf[i] = ((val & ((long)1< 0) { - (*putc)(c); - res++; - } - } - if (sign != '\0') { - (*putc)(sign); - res++; - } - while (length-- > 0) { - c = *cp++; - (*putc)(c); - res++; - } - if (pad_on_right) { - while (pad-- > 0) { - (*putc)(' '); - res++; - } - } - } else { - (*putc)(c); - res++; - } - } - return (res); -} - -int cmnos_printf(const char *fmt, ...) -{ - va_list ap; - int ret; - - va_start(ap, fmt); - - //if (A_SERIAL_ENABLED()) { - if (1) { - ret = cmnos_vprintf(_putc, fmt, ap); - } else { - ret = 0; - } - - va_end(ap); - - return (ret); -} - -void -cmnos_printf_init(void) -{ -} - -void cmnos_printf_module_install(struct printf_api *tbl) -{ - tbl->_printf_init = cmnos_printf_init; - tbl->_printf = cmnos_printf; -} - -#endif /* SYSTEM_MODULE_PRINT */ - -- 2.31.1