4 * Copyright (c) 2012 - 2013 Samsung Electronics Co., Ltd.
6 * Licensed under the Apache License, Version 2.0 (the License);
7 * you may not use this file except in compliance with the License.
8 * You may obtain a copy of the License at
10 * http://www.apache.org/licenses/LICENSE-2.0
12 * Unless required by applicable law or agreed to in writing, software
13 * distributed under the License is distributed on an "AS IS" BASIS,
14 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15 * See the License for the specific language governing permissions and
16 * limitations under the License.
20 #ifndef __DISPLAY_OPS_H__
21 #define __DISPLAY_OPS_H__
24 #include "display-plugin.h"
25 #include "shared/common.h"
26 #include "shared/devices.h"
27 //#include "display.h"
31 void (*init) (void *data);
32 void (*exit) (void *data);
33 int (*func) (unsigned int cmd, void *arg);
36 void display_ops_init(void *data);
37 void display_ops_exit(void *data);
39 #define DISPLAY_OPS_REGISTER(disp) \
40 static void __CONSTRUCTOR__ module_init(void) \
44 static void __DESTRUCTOR__ module_exit(void) \
46 remove_display(disp); \
49 void add_display(const struct display_ops *disp);
50 void remove_display(const struct display_ops *disp);
51 const struct display_ops *find_display_feature(const char *name);
53 #define FIND_DISPLAY(dev, name) do { \
54 if (!dev) dev = find_display_feature(name); \
57 #define FIND_DISPLAY_INT(dev, name)do { \
58 if (!dev) dev = find_display_feature(name); if (!dev) return -ENODEV; \
61 #define DISPLAY_FUNC(a, b) (((a) << 16) | (b))