mtfsfi.c 391 B

1234567891011121314151617181920212223
  1. #include <linux/types.h>
  2. #include <linux/errno.h>
  3. #include <asm/uaccess.h>
  4. #include "soft-fp.h"
  5. int
  6. mtfsfi(unsigned int crfD, unsigned int IMM)
  7. {
  8. u32 mask = 0xf;
  9. if (!crfD)
  10. mask = 9;
  11. __FPU_FPSCR &= ~(mask << ((7 - crfD) << 2));
  12. __FPU_FPSCR |= (IMM & 0xf) << ((7 - crfD) << 2);
  13. #ifdef DEBUG
  14. printk("%s: %d %x: %08lx\n", __FUNCTION__, crfD, IMM, __FPU_FPSCR);
  15. #endif
  16. return 0;
  17. }