/* * Copyright (C) 2015 Anshuman Khandual, IBM Corporation. * * 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. */ #define VEC_MAX 128 #define VSX_MAX 32 #define VMX_MAX 32 /* * unsigned long vsx[32] * unsigned long load[128] */ int validate_vsx(unsigned long *vsx, unsigned long *load) { int i; for (i = 0; i < VSX_MAX; i++) { if (vsx[i] != load[2 * i + 1]) { printf("vsx[%d]: %lx load[%d] %lx\n", i, vsx[i], 2 * i + 1, load[2 * i + 1]); return TEST_FAIL; } } return TEST_PASS; } /* * unsigned long vmx[32][2] * unsigned long load[128] */ int validate_vmx(unsigned long vmx[][2], unsigned long *load) { int i; for (i = 0; i < VMX_MAX; i++) { #if __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__ if ((vmx[i][0] != load[64 + 2 * i]) || (vmx[i][1] != load[65 + 2 * i])) { printf("vmx[%d][0]: %lx load[%d] %lx\n", i, vmx[i][0], 64 + 2 * i, load[64 + 2 * i]); printf("vmx[%d][1]: %lx load[%d] %lx\n", i, vmx[i][1], 65 + 2 * i, load[65 + 2 * i]); return TEST_FAIL; } #else /* * In LE each value pair is stored in an * alternate manner. */ if ((vmx[i][0] != load[65 + 2 * i]) || (vmx[i][1] != load[64 + 2 * i])) { printf("vmx[%d][0]: %lx load[%d] %lx\n", i, vmx[i][0], 65 + 2 * i, load[65 + 2 * i]); printf("vmx[%d][1]: %lx load[%d] %lx\n", i, vmx[i][1], 64 + 2 * i, load[64 + 2 * i]); return TEST_FAIL; } #endif } return TEST_PASS; } /* * unsigned long store[128] * unsigned long load[128] */ int compare_vsx_vmx(unsigned long *store, unsigned long *load) { int i; for (i = 0; i < VSX_MAX; i++) { if (store[1 + 2 * i] != load[1 + 2 * i]) { printf("store[%d]: %lx load[%d] %lx\n", 1 + 2 * i, store[i], 1 + 2 * i, load[i]); return TEST_FAIL; } } #if __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__ for (i = 64; i < VEC_MAX; i++) { if (store[i] != load[i]) { printf("store[%d]: %lx load[%d] %lx\n", i, store[i], i, load[i]); return TEST_FAIL; } } #else /* In LE each value pair is stored in an alternate manner */ for (i = 64; i < VEC_MAX; i++) { if (!(i % 2) && (store[i] != load[i+1])) { printf("store[%d]: %lx load[%d] %lx\n", i, store[i], i+1, load[i+1]); return TEST_FAIL; } if ((i % 2) && (store[i] != load[i-1])) { printf("here store[%d]: %lx load[%d] %lx\n", i, store[i], i-1, load[i-1]); return TEST_FAIL; } } #endif return TEST_PASS; } void load_vsx_vmx(unsigned long *load, unsigned long *vsx, unsigned long vmx[][2]) { int i; for (i = 0; i < VSX_MAX; i++) vsx[i] = load[1 + 2 * i]; for (i = 0; i < VMX_MAX; i++) { vmx[i][0] = load[64 + 2 * i]; vmx[i][1] = load[65 + 2 * i]; } } void loadvsx(void *p, int tmp); void storevsx(void *p, int tmp); gi/linux/net-next.git/commit/?h=nds-private-remove&id=05e0be7c900797e9164976a6014d534ce3035909'>root/sound/soc/omap/omap-dmic.h
diff options
context:
space:
mode:
authorChristophe JAILLET <christophe.jaillet@wanadoo.fr>2017-01-31 00:47:30 -0800
committerDmitry Torokhov <dmitry.torokhov@gmail.com>2017-01-31 00:51:06 -0800
commit05e0be7c900797e9164976a6014d534ce3035909 (patch)
tree6064ddf732b21c686c958cb9da73f6eae6de5a27 /sound/soc/omap/omap-dmic.h
parent3f5c34c6d4688b3b7e1dbc7bbc68a2f03a0d6b0c (diff)
Input: synaptics-rmi4 - fix reversed conditions in enable/disable_irq_wake
These tests are reversed. A warning should be displayed if an error is returned, not on success. Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr> Reviewed-by: Benjamin Tissoires <benjamin.tissoires@redhat.com> Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Diffstat (limited to 'sound/soc/omap/omap-dmic.h')