12befccec034c13d34746a9e87149889d59ac767bFei Jiang/* 2f91c8768670386683a281cc39141e21bdda9c97fKun Wang * Copyright (c) 2011 Intel Corporation. All Rights Reserved. 32befccec034c13d34746a9e87149889d59ac767bFei Jiang * 4dc1209519284865899ca8d990b3a2c7dbca8ae08wangkun * 5f91c8768670386683a281cc39141e21bdda9c97fKun Wang * Permission is hereby granted, free of charge, to any person obtaining a 6f91c8768670386683a281cc39141e21bdda9c97fKun Wang * copy of this software and associated documentation files (the 7f91c8768670386683a281cc39141e21bdda9c97fKun Wang * "Software"), to deal in the Software without restriction, including 8f91c8768670386683a281cc39141e21bdda9c97fKun Wang * without limitation the rights to use, copy, modify, merge, publish, 9f91c8768670386683a281cc39141e21bdda9c97fKun Wang * distribute, sub license, and/or sell copies of the Software, and to 10f91c8768670386683a281cc39141e21bdda9c97fKun Wang * permit persons to whom the Software is furnished to do so, subject to 11f91c8768670386683a281cc39141e21bdda9c97fKun Wang * the following conditions: 123f3d1e8746d2b793c982ac19a73061e006b1b178Kun Wang * 13f91c8768670386683a281cc39141e21bdda9c97fKun Wang * The above copyright notice and this permission notice (including the 14f91c8768670386683a281cc39141e21bdda9c97fKun Wang * next paragraph) shall be included in all copies or substantial portions 15f91c8768670386683a281cc39141e21bdda9c97fKun Wang * of the Software. 163f3d1e8746d2b793c982ac19a73061e006b1b178Kun Wang * 17f91c8768670386683a281cc39141e21bdda9c97fKun Wang * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS 18f91c8768670386683a281cc39141e21bdda9c97fKun Wang * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 19f91c8768670386683a281cc39141e21bdda9c97fKun Wang * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. 20f91c8768670386683a281cc39141e21bdda9c97fKun Wang * IN NO EVENT SHALL PRECISION INSIGHT AND/OR ITS SUPPLIERS BE LIABLE FOR 21f91c8768670386683a281cc39141e21bdda9c97fKun Wang * ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, 22f91c8768670386683a281cc39141e21bdda9c97fKun Wang * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE 23f91c8768670386683a281cc39141e21bdda9c97fKun Wang * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 24f91c8768670386683a281cc39141e21bdda9c97fKun Wang * 25bde3ed7517cc876cb2a6e174ea2a96a75938e787Kun Wang * Authors: 26bde3ed7517cc876cb2a6e174ea2a96a75938e787Kun Wang * Binglin Chen <binglin.chen@intel.com> 27bde3ed7517cc876cb2a6e174ea2a96a75938e787Kun Wang * 28bde3ed7517cc876cb2a6e174ea2a96a75938e787Kun Wang */ 29bde3ed7517cc876cb2a6e174ea2a96a75938e787Kun Wang 307e8d39a9d261ff6b5256d7cf9c7a127947b2b2a5Fei,Jiang#ifndef _PSB_WS_DRIVER_H_ 317e8d39a9d261ff6b5256d7cf9c7a127947b2b2a5Fei,Jiang#define _PSB_WS_DRIVER_H_ 327e8d39a9d261ff6b5256d7cf9c7a127947b2b2a5Fei,Jiang 33437b3eda28a4bf098efa80598cab67f190275266Fei Jiang#include <linux/types.h> 347e8d39a9d261ff6b5256d7cf9c7a127947b2b2a5Fei,Jiang#include <wsbm/wsbm_util.h> 357e8d39a9d261ff6b5256d7cf9c7a127947b2b2a5Fei,Jiang#include <wsbm/wsbm_driver.h> 3638d89d625f11c0c3f0ff313cef450252e6467bafhding#ifdef ANDROID 37919dea6b2625ea6e74e0f93819ffe874b2601b9aThierry Strudel#include <drm/ttm/ttm_placement.h> 38d03b75a0bb7d76d8d05509f5b581ab3b5d36a20dXiaolin Zhang#include <linux/psb_drm.h> 3938d89d625f11c0c3f0ff313cef450252e6467bafhding#else 4038d89d625f11c0c3f0ff313cef450252e6467bafhding#include <psb_drm.h> 4138d89d625f11c0c3f0ff313cef450252e6467bafhding#endif 427e8d39a9d261ff6b5256d7cf9c7a127947b2b2a5Fei,Jiang 43dc1209519284865899ca8d990b3a2c7dbca8ae08wangkunstruct _PsbDrmValidateNode { 447e8d39a9d261ff6b5256d7cf9c7a127947b2b2a5Fei,Jiang struct _ValidateNode base; 457e8d39a9d261ff6b5256d7cf9c7a127947b2b2a5Fei,Jiang struct psb_validate_arg val_arg; 467e8d39a9d261ff6b5256d7cf9c7a127947b2b2a5Fei,Jiang}; 477e8d39a9d261ff6b5256d7cf9c7a127947b2b2a5Fei,Jiang 487e8d39a9d261ff6b5256d7cf9c7a127947b2b2a5Fei,Jiangextern struct _WsbmVNodeFuncs *psbVNodeFuncs(void); 497e8d39a9d261ff6b5256d7cf9c7a127947b2b2a5Fei,Jiang 507e8d39a9d261ff6b5256d7cf9c7a127947b2b2a5Fei,Jiangstatic inline struct psb_validate_req * 51bde3ed7517cc876cb2a6e174ea2a96a75938e787Kun WangpsbValReq(struct _ValidateNode *node) { 527e8d39a9d261ff6b5256d7cf9c7a127947b2b2a5Fei,Jiang return &(containerOf(node, struct _PsbDrmValidateNode, base)-> 53dc1209519284865899ca8d990b3a2c7dbca8ae08wangkun val_arg.d.req); 547e8d39a9d261ff6b5256d7cf9c7a127947b2b2a5Fei,Jiang} 557e8d39a9d261ff6b5256d7cf9c7a127947b2b2a5Fei,Jiang 567e8d39a9d261ff6b5256d7cf9c7a127947b2b2a5Fei,Jiang 57bde3ed7517cc876cb2a6e174ea2a96a75938e787Kun Wang#endif /* _PSB_WS_DRIVER_H_ */ 58