浏览代码

nios2: use builtin functions for control registers access

The commit 51926d5ee0be029fb45f10f42756df97279f8ad3
  COMMON: Use __stringify() instead of rest of implementations
forgot to update the wrctl funtion, and causes compilation error.

But there are builtin functions for control registers access in
nios2 comipiler. It is convenient to use them instead.

Signed-off-by: Thomas Chou <thomas@wytron.com.tw>
Cc: Marek Vasut <marex@denx.de>
Thomas Chou 12 年之前
父节点
当前提交
4f63bfb689
共有 1 个文件被更改,包括 2 次插入10 次删除
  1. 2 10
      include/nios2.h

+ 2 - 10
include/nios2.h

@@ -24,8 +24,6 @@
 #ifndef __NIOS2_H__
 #ifndef __NIOS2_H__
 #define __NIOS2_H__
 #define __NIOS2_H__
 
 
-#include <linux/stringify.h>
-
 /*------------------------------------------------------------------------
 /*------------------------------------------------------------------------
  * Control registers -- use with wrctl() & rdctl()
  * Control registers -- use with wrctl() & rdctl()
  *----------------------------------------------------------------------*/
  *----------------------------------------------------------------------*/
@@ -39,14 +37,8 @@
  * Access to control regs
  * Access to control regs
  *----------------------------------------------------------------------*/
  *----------------------------------------------------------------------*/
 
 
-#define rdctl(reg)\
-	({unsigned int val;\
-	asm volatile("rdctl %0, ctl" __stringify(reg) \
-		: "=r" (val) ); val;})
-
-#define wrctl(reg,val)\
-	asm volatile( "wrctl ctl" _str_(reg) ",%0"\
-		: : "r" (val))
+#define rdctl(reg) __builtin_rdctl(reg)
+#define wrctl(reg, val) __builtin_wrctl(reg, val)
 
 
 /*------------------------------------------------------------------------
 /*------------------------------------------------------------------------
  * Control reg bit masks
  * Control reg bit masks