OpenCores
URL https://opencores.org/ocsvn/or1k_old/or1k_old/trunk

Subversion Repositories or1k_old

[/] [or1k_old/] [trunk/] [rc203soc/] [sw/] [uClinux/] [include/] [asm-or32/] [semaphore.h] - Diff between revs 1633 and 1765

Go to most recent revision | Only display areas with differences | Details | Blame | View Log

Rev 1633 Rev 1765
#ifndef _OR32_SEMAPHORE_H
#ifndef _OR32_SEMAPHORE_H
#define _OR32_SEMAPHORE_H
#define _OR32_SEMAPHORE_H
 
 
/*
/*
 * SMP- and interrupt-safe semaphores..
 * SMP- and interrupt-safe semaphores..
 *
 *
 * (C) Copyright 1996 Linus Torvalds
 * (C) Copyright 1996 Linus Torvalds
 *
 *
 */
 */
 
 
struct semaphore {
struct semaphore {
        int count;
        int count;
        int waking;
        int waking;
        int lock;                       /* to make waking testing atomic */
        int lock;                       /* to make waking testing atomic */
        struct wait_queue * wait;
        struct wait_queue * wait;
};
};
 
 
#define MUTEX ((struct semaphore) { 1, 0, 0, NULL })
#define MUTEX ((struct semaphore) { 1, 0, 0, NULL })
#define MUTEX_LOCKED ((struct semaphore) { 0, 0, 0, NULL })
#define MUTEX_LOCKED ((struct semaphore) { 0, 0, 0, NULL })
 
 
extern void down(struct semaphore * sem);
extern void down(struct semaphore * sem);
extern int down_interruptible(struct semaphore * sem);
extern int down_interruptible(struct semaphore * sem);
extern void up(struct semaphore * sem);
extern void up(struct semaphore * sem);
 
 
extern void get_buzz_lock(int *lock_ptr);
extern void get_buzz_lock(int *lock_ptr);
extern void give_buzz_lock(int *lock_ptr);
extern void give_buzz_lock(int *lock_ptr);
 
 
 
 
#endif
#endif
 
 

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.