summaryrefslogtreecommitdiffstats
path: root/arch/openrisc/include/asm/bitops
diff options
context:
space:
mode:
authorStefan Kristiansson <stefan.kristiansson@saunalahti.fi>2011-11-26 19:04:49 +0000
committerWolfgang Denk <wd@denx.de>2012-01-13 21:16:37 +0100
commitca9d3ab5c7e12929d1c64e3618bbd30e1ed2ea70 (patch)
treef8ce381cbe18de64e877edb25f2dac1a3b97de04 /arch/openrisc/include/asm/bitops
parent30de1014a78e742159ecae483afd491e78a559c0 (diff)
downloadtalos-obmc-uboot-ca9d3ab5c7e12929d1c64e3618bbd30e1ed2ea70.tar.gz
talos-obmc-uboot-ca9d3ab5c7e12929d1c64e3618bbd30e1ed2ea70.zip
openrisc: Add architecture header files
Signed-off-by: Stefan Kristiansson <stefan.kristiansson@saunalahti.fi>
Diffstat (limited to 'arch/openrisc/include/asm/bitops')
-rw-r--r--arch/openrisc/include/asm/bitops/ffs.h26
-rw-r--r--arch/openrisc/include/asm/bitops/fls.h26
2 files changed, 52 insertions, 0 deletions
diff --git a/arch/openrisc/include/asm/bitops/ffs.h b/arch/openrisc/include/asm/bitops/ffs.h
new file mode 100644
index 0000000000..1de5295816
--- /dev/null
+++ b/arch/openrisc/include/asm/bitops/ffs.h
@@ -0,0 +1,26 @@
+/*
+ * OpenRISC Linux
+ *
+ * Copyright (C) 2010-2011 Jonas Bonn <jonas@southpole.se>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ */
+
+#ifndef __ASM_OPENRISC_FFS_H
+#define __ASM_OPENRISC_FFS_H
+
+static inline int ffs(int x)
+{
+ int ret;
+
+ __asm__ ("l.ff1 %0,%1"
+ : "=r" (ret)
+ : "r" (x));
+
+ return ret;
+}
+
+#endif /* __ASM_OPENRISC_FFS_H */
diff --git a/arch/openrisc/include/asm/bitops/fls.h b/arch/openrisc/include/asm/bitops/fls.h
new file mode 100644
index 0000000000..8c77c13776
--- /dev/null
+++ b/arch/openrisc/include/asm/bitops/fls.h
@@ -0,0 +1,26 @@
+/*
+ * OpenRISC Linux
+ *
+ * Copyright (C) 2010-2011 Jonas Bonn <jonas@southpole.se>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ */
+
+#ifndef __ASM_OPENRISC_FLS_H
+#define __ASM_OPENRISC_FLS_H
+
+static inline int fls(int x)
+{
+ int ret;
+
+ __asm__ ("l.fl1 %0,%1"
+ : "=r" (ret)
+ : "r" (x));
+
+ return ret;
+}
+
+#endif /* __ASM_OPENRISC_FLS_H */
OpenPOWER on IntegriCloud