PageRenderTime 180ms CodeModel.GetById 16ms RepoModel.GetById 0ms app.codeStats 0ms

/arch/sh/include/cpu-sh3/cpu/dac.h

https://bitbucket.org/thekraven/iscream_thunderc-2.6.35
C++ Header | 41 lines | 30 code | 8 blank | 3 comment | 6 complexity | 794c2118f1e820971143cc70b3dd3a2d MD5 | raw file
Possible License(s): GPL-2.0, LGPL-2.0, AGPL-1.0
  1. #ifndef __ASM_CPU_SH3_DAC_H
  2. #define __ASM_CPU_SH3_DAC_H
  3. /*
  4. * Copyright (C) 2003 Andriy Skulysh
  5. */
  6. #define DADR0 0xa40000a0
  7. #define DADR1 0xa40000a2
  8. #define DACR 0xa40000a4
  9. #define DACR_DAOE1 0x80
  10. #define DACR_DAOE0 0x40
  11. #define DACR_DAE 0x20
  12. static __inline__ void sh_dac_enable(int channel)
  13. {
  14. unsigned char v;
  15. v = __raw_readb(DACR);
  16. if(channel) v |= DACR_DAOE1;
  17. else v |= DACR_DAOE0;
  18. __raw_writeb(v,DACR);
  19. }
  20. static __inline__ void sh_dac_disable(int channel)
  21. {
  22. unsigned char v;
  23. v = __raw_readb(DACR);
  24. if(channel) v &= ~DACR_DAOE1;
  25. else v &= ~DACR_DAOE0;
  26. __raw_writeb(v,DACR);
  27. }
  28. static __inline__ void sh_dac_output(u8 value, int channel)
  29. {
  30. if(channel) __raw_writeb(value,DADR1);
  31. else __raw_writeb(value,DADR0);
  32. }
  33. #endif /* __ASM_CPU_SH3_DAC_H */