/* * hecubafb.h - definitions for the hecuba framebuffer driver * * Copyright (C) 2008 by Jaya Kumar * * This file is subject to the terms and conditions of the GNU General Public * License. See the file COPYING in the main directory of this archive for * more details. * */ #ifndef _LINUX_HECUBAFB_H_ #define _LINUX_HECUBAFB_H_ /* Apollo controller specific defines */ #define APOLLO_START_NEW_IMG 0xA0 #define APOLLO_STOP_IMG_DATA 0xA1 #define APOLLO_DISPLAY_IMG 0xA2 #define APOLLO_ERASE_DISPLAY 0xA3 #define APOLLO_INIT_DISPLAY 0xA4 /* Hecuba interface specific defines */ #define HCB_WUP_BIT 0x01 #define HCB_DS_BIT 0x02 #define HCB_RW_BIT 0x04 #define HCB_CD_BIT 0x08 #define HCB_ACK_BIT 0x80 /* struct used by hecuba. board specific stuff comes from *board */ struct hecubafb_par { struct fb_info *info; struct hecuba_board *board; void (*send_command)(struct hecubafb_par *, unsigned char); void (*send_data)(struct hecubafb_par *, unsigned char); }; /* board specific routines board drivers can implement wait_for_ack with interrupts if desired. if wait_for_ack is called with clear=0, then go to sleep and return when ack goes hi or if wait_for_ack with clear=1, then return when ack goes lo */ struct hecuba_board { struct module *owner; void (*remove)(struct hecubafb_par *); void (*set_ctl)(struct hecubafb_par *, unsigned char, unsigned char); void (*set_data)(struct hecubafb_par *, unsigned char); void (*wait_for_ack)(struct hecubafb_par *, int); int (*init)(struct hecubafb_par *); }; #endif net-next.git/'>summaryrefslogtreecommitdiff
path: root/include/trace/events/i2c.h
diff options
context:
space:
mode:
authorJohan Hovold <johan@kernel.org>2017-01-30 11:26:38 +0100
committerJiri Kosina <jkosina@suse.cz>2017-01-31 12:59:32 +0100
commit7a7b5df84b6b4e5d599c7289526eed96541a0654 (patch)
treecf7514c7ddf4410fe37ca9099a2785e1cf08fa7d /include/trace/events/i2c.h
parent877a021e08ccb6434718c0cc781fdf943c884cc0 (diff)
HID: cp2112: fix sleep-while-atomic
A recent commit fixing DMA-buffers on stack added a shared transfer buffer protected by a spinlock. This is broken as the USB HID request callbacks can sleep. Fix this up by replacing the spinlock with a mutex. Fixes: 1ffb3c40ffb5 ("HID: cp2112: make transfer buffers DMA capable") Cc: stable <stable@vger.kernel.org> # 4.9 Signed-off-by: Johan Hovold <johan@kernel.org> Reviewed-by: Benjamin Tissoires <benjamin.tissoires@redhat.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
Diffstat (limited to 'include/trace/events/i2c.h')