Quellcodebibliothek Statistik Leitseite products/sources/formale Sprachen/C/Linux/arch/mips/fw/arc/   (Open Source Betriebssystem Version 6.17.9©)  Datei vom 24.10.2025 mit Größe 1 kB image not shown  

Quelle  promlib.c   Sprache: C

 
/*
 * This file is subject to the terms and conditions of the GNU General Public
 * License.  See the file "COPYING" in the main directory of this archive
 * for more details.
 *
 * Copyright (C) 1996 David S. Miller (dm@sgi.com)
 * Compatibility with board caches, Ulf Carlsson
 */

#include <linux/kernel.h>
#include <asm/sgialib.h>
#include <asm/bcache.h>
#include <asm/setup.h>

#if defined(CONFIG_64BIT) && defined(CONFIG_FW_ARC32)
/*
 * For 64bit kernels working with a 32bit ARC PROM pointer arguments
 * for ARC calls need to reside in CKEG0/1. But as soon as the kernel
 * switches to its first kernel thread stack is set to an address in
 * XKPHYS, so anything on stack can't be used anymore. This is solved
 * by using a * static declaration variables are put into BSS, which is
 * linked to a CKSEG0 address. Since this is only used on UP platforms
 * there is no spinlock needed
 */

#define O32_STATIC static
#else
#define O32_STATIC
#endif

/*
 * IP22 boardcache is not compatible with board caches.  Thus we disable it
 * during romvec action.  Since r4xx0.c is always compiled and linked with your
 * kernel, this shouldn't cause any harm regardless what MIPS processor you
 * have.
 *
 * The ARC write and read functions seem to interfere with the serial lines
 * in some way. You should be careful with them.
 */


void prom_putchar(char c)
{
 O32_STATIC ULONG cnt;
 O32_STATIC CHAR it;

 it = c;

 bc_disable();
 ArcWrite(1, &it, 1, &cnt);
 bc_enable();
}

char prom_getchar(void)
{
 O32_STATIC ULONG cnt;
 O32_STATIC CHAR c;

 bc_disable();
 ArcRead(0, &c, 1, &cnt);
 bc_enable();

 return c;
}

Messung V0.5
C=96 H=54 G=77

¤ Dauer der Verarbeitung: 0.0 Sekunden  (vorverarbeitet)  ¤

*© Formatika GbR, Deutschland






Wurzel

Suchen

Beweissystem der NASA

Beweissystem Isabelle

NIST Cobol Testsuite

Cephes Mathematical Library

Wiener Entwicklungsmethode

Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.

Bemerkung:

Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.