/* * Copyright © 2014 Red Hat Inc. * * Permission is hereby granted, free of charge, to any person obtaining a * copy of this software and associated documentation files (the "Software"), * to deal in the Software without restriction, including without limitation * the rights to use, copy, modify, merge, publish, distribute, sublicense, * and/or sell copies of the Software, and to permit persons to whom the * Software is furnished to do so, subject to the following conditions: * * The above copyright notice and this permission notice shall be included in * all copies or substantial portions of the Software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE COPYRIGHT HOLDER(S) OR AUTHOR(S) BE LIABLE FOR ANY CLAIM, DAMAGES OR * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR * OTHER DEALINGS IN THE SOFTWARE. */ #ifndef DRM_DISPLAYID_H #define DRM_DISPLAYID_H #define DATA_BLOCK_PRODUCT_ID 0x00 #define DATA_BLOCK_DISPLAY_PARAMETERS 0x01 #define DATA_BLOCK_COLOR_CHARACTERISTICS 0x02 #define DATA_BLOCK_TYPE_1_DETAILED_TIMING 0x03 #define DATA_BLOCK_TYPE_2_DETAILED_TIMING 0x04 #define DATA_BLOCK_TYPE_3_SHORT_TIMING 0x05 #define DATA_BLOCK_TYPE_4_DMT_TIMING 0x06 #define DATA_BLOCK_VESA_TIMING 0x07 #define DATA_BLOCK_CEA_TIMING 0x08 #define DATA_BLOCK_VIDEO_TIMING_RANGE 0x09 #define DATA_BLOCK_PRODUCT_SERIAL_NUMBER 0x0a #define DATA_BLOCK_GP_ASCII_STRING 0x0b #define DATA_BLOCK_DISPLAY_DEVICE_DATA 0x0c #define DATA_BLOCK_INTERFACE_POWER_SEQUENCING 0x0d #define DATA_BLOCK_TRANSFER_CHARACTERISTICS 0x0e #define DATA_BLOCK_DISPLAY_INTERFACE 0x0f #define DATA_BLOCK_STEREO_DISPLAY_INTERFACE 0x10 #define DATA_BLOCK_TILED_DISPLAY 0x12 #define DATA_BLOCK_VENDOR_SPECIFIC 0x7f #define PRODUCT_TYPE_EXTENSION 0 #define PRODUCT_TYPE_TEST 1 #define PRODUCT_TYPE_PANEL 2 #define PRODUCT_TYPE_MONITOR 3 #define PRODUCT_TYPE_TV 4 #define PRODUCT_TYPE_REPEATER 5 #define PRODUCT_TYPE_DIRECT_DRIVE 6 struct displayid_hdr { u8 rev; u8 bytes; u8 prod_id; u8 ext_count; } __packed; struct displayid_block { u8 tag; u8 rev; u8 num_bytes; } __packed; struct displayid_tiled_block { struct displayid_block base; u8 tile_cap; u8 topo[3]; u8 tile_size[4]; u8 tile_pixel_bezel[5]; u8 topology_id[8]; } __packed; struct displayid_detailed_timings_1 { u8 pixel_clock[3]; u8 flags; u8 hactive[2]; u8 hblank[2]; u8 hsync[2]; u8 hsw[2]; u8 vactive[2]; u8 vblank[2]; u8 vsync[2]; u8 vsw[2]; } __packed; struct displayid_detailed_timing_block { struct displayid_block base; struct displayid_detailed_timings_1 timings[0]; }; #endif mmit/?id=08d85f3ea99f1eeafc4e8507936190e86a16ee8c'>root/include/dt-bindings/clock/r8a7740-clock.h
diff options
context:
space:
mode:
authorMarc Zyngier <marc.zyngier@arm.com>2017-01-17 16:00:48 +0000
committerThomas Gleixner <tglx@linutronix.de>2017-01-30 15:18:56 +0100
commit08d85f3ea99f1eeafc4e8507936190e86a16ee8c (patch)
tree410bb1acd0cd7dcfaad37ae7b63ff243b7fa4bee /include/dt-bindings/clock/r8a7740-clock.h
parent566cf877a1fcb6d6dc0126b076aad062054c2637 (diff)
irqdomain: Avoid activating interrupts more than once
Since commit f3b0946d629c ("genirq/msi: Make sure PCI MSIs are activated early"), we can end-up activating a PCI/MSI twice (once at allocation time, and once at startup time). This is normally of no consequences, except that there is some HW out there that may misbehave if activate is used more than once (the GICv3 ITS, for example, uses the activate callback to issue the MAPVI command, and the architecture spec says that "If there is an existing mapping for the EventID-DeviceID combination, behavior is UNPREDICTABLE"). While this could be worked around in each individual driver, it may make more sense to tackle the issue at the core level. In order to avoid getting in that situation, let's have a per-interrupt flag to remember if we have already activated that interrupt or not. Fixes: f3b0946d629c ("genirq/msi: Make sure PCI MSIs are activated early") Reported-and-tested-by: Andre Przywara <andre.przywara@arm.com> Signed-off-by: Marc Zyngier <marc.zyngier@arm.com> Cc: stable@vger.kernel.org Link: http://lkml.kernel.org/r/1484668848-24361-1-git-send-email-marc.zyngier@arm.com Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Diffstat (limited to 'include/dt-bindings/clock/r8a7740-clock.h')