xserver

xserver with xephyr scale patch
git clone https://git.neptards.moe/u3shit/xserver.git
Log | Files | Refs | README | LICENSE

xf86sbusBus.h (4498B)


      1 /*
      2  * SBUS bus-specific declarations
      3  *
      4  * Copyright (C) 2000 Jakub Jelinek (jakub@redhat.com)
      5  *
      6  * Permission is hereby granted, free of charge, to any person obtaining a copy
      7  * of this software and associated documentation files (the "Software"), to deal
      8  * in the Software without restriction, including without limitation the rights
      9  * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
     10  * copies of the Software, and to permit persons to whom the Software is
     11  * furnished to do so, subject to the following conditions:
     12  *
     13  * The above copyright notice and this permission notice shall be included in
     14  * all copies or substantial portions of the Software.
     15  *
     16  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
     17  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
     18  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
     19  * JAKUB JELINEK BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
     20  * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
     21  * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
     22  */
     23 
     24 #ifndef _XF86_SBUSBUS_H
     25 #define _XF86_SBUSBUS_H
     26 
     27 #include "xf86str.h"
     28 
     29 #define SBUS_DEVICE_BW2		0x0001
     30 #define SBUS_DEVICE_CG2		0x0002
     31 #define SBUS_DEVICE_CG3		0x0003
     32 #define SBUS_DEVICE_CG4		0x0004
     33 #define SBUS_DEVICE_CG6		0x0005
     34 #define SBUS_DEVICE_CG8		0x0006
     35 #define SBUS_DEVICE_CG12	0x0007
     36 #define SBUS_DEVICE_CG14	0x0008
     37 #define SBUS_DEVICE_LEO		0x0009
     38 #define SBUS_DEVICE_TCX		0x000a
     39 #define SBUS_DEVICE_FFB		0x000b
     40 #define SBUS_DEVICE_GT		0x000c
     41 #define SBUS_DEVICE_MGX		0x000d
     42 
     43 typedef struct sbus_prom_node {
     44     int node;
     45     /* Because of misdesigned openpromio */
     46     int cookie[2];
     47 } sbusPromNode, *sbusPromNodePtr;
     48 
     49 typedef struct sbus_device {
     50     int devId;
     51     int fbNum;
     52     int fd;
     53     int width, height;
     54     sbusPromNode node;
     55     const char *descr;
     56     const char *device;
     57 } sbusDevice, *sbusDevicePtr;
     58 
     59 struct sbus_devtable {
     60     int devId;
     61     int fbType;
     62     const char *promName;
     63     const char *driverName;
     64     const char *descr;
     65 };
     66 
     67 extern _X_EXPORT void xf86SbusProbe(void);
     68 extern _X_EXPORT sbusDevicePtr *xf86SbusInfo;
     69 extern _X_EXPORT struct sbus_devtable sbusDeviceTable[];
     70 
     71 extern _X_EXPORT int xf86MatchSbusInstances(const char *driverName,
     72                                             int sbusDevId, GDevPtr * devList,
     73                                             int numDevs, DriverPtr drvp,
     74                                             int **foundEntities);
     75 extern _X_EXPORT sbusDevicePtr xf86GetSbusInfoForEntity(int entityIndex);
     76 extern _X_EXPORT int xf86GetEntityForSbusInfo(sbusDevicePtr psdp);
     77 extern _X_EXPORT void xf86SbusUseBuiltinMode(ScrnInfoPtr pScrn,
     78                                              sbusDevicePtr psdp);
     79 extern _X_EXPORT void *xf86MapSbusMem(sbusDevicePtr psdp,
     80                                         unsigned long offset,
     81                                         unsigned long size);
     82 extern _X_EXPORT void xf86UnmapSbusMem(sbusDevicePtr psdp, void *addr,
     83                                        unsigned long size);
     84 extern _X_EXPORT void xf86SbusHideOsHwCursor(sbusDevicePtr psdp);
     85 extern _X_EXPORT void xf86SbusSetOsHwCursorCmap(sbusDevicePtr psdp, int bg,
     86                                                 int fg);
     87 extern _X_EXPORT Bool xf86SbusHandleColormaps(ScreenPtr pScreen,
     88                                               sbusDevicePtr psdp);
     89 
     90 extern _X_EXPORT int promRootNode;
     91 
     92 extern _X_EXPORT int promGetSibling(int node);
     93 extern _X_EXPORT int promGetChild(int node);
     94 extern _X_EXPORT char *promGetProperty(const char *prop, int *lenp);
     95 extern _X_EXPORT int promGetBool(const char *prop);
     96 
     97 extern _X_EXPORT int sparcPromInit(void);
     98 extern _X_EXPORT void sparcPromClose(void);
     99 extern _X_EXPORT char *sparcPromGetProperty(sbusPromNodePtr pnode,
    100                                             const char *prop, int *lenp);
    101 extern _X_EXPORT int sparcPromGetBool(sbusPromNodePtr pnode, const char *prop);
    102 extern _X_EXPORT void sparcPromAssignNodes(void);
    103 extern _X_EXPORT char *sparcPromNode2Pathname(sbusPromNodePtr pnode);
    104 extern _X_EXPORT int sparcPromPathname2Node(const char *pathName);
    105 extern _X_EXPORT char *sparcDriverName(void);
    106 
    107 extern Bool xf86SbusConfigure(void *busData, sbusDevicePtr sBus);
    108 extern void xf86SbusConfigureNewDev(void *busData, sbusDevicePtr sBus,
    109                                     GDevRec * GDev);
    110 
    111 #endif                          /* _XF86_SBUSBUS_H */