qemu

FORK: QEMU emulator
git clone https://git.neptards.moe/neptards/qemu.git
Log | Files | Refs | Submodules | LICENSE

sga.c (2285B)


      1 /*
      2  * QEMU dummy ISA device for loading sgabios option rom.
      3  *
      4  * Copyright (c) 2011 Glauber Costa, Red Hat Inc.
      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  * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
     20  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
     21  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
     22  * THE SOFTWARE.
     23  *
     24  * sgabios code originally available at code.google.com/p/sgabios
     25  *
     26  */
     27 
     28 #include "qemu/osdep.h"
     29 #include "hw/isa/isa.h"
     30 #include "hw/loader.h"
     31 #include "qemu/module.h"
     32 #include "qom/object.h"
     33 #include "qemu/error-report.h"
     34 
     35 #define SGABIOS_FILENAME "sgabios.bin"
     36 
     37 #define TYPE_SGA "sga"
     38 OBJECT_DECLARE_SIMPLE_TYPE(ISASGAState, SGA)
     39 
     40 struct ISASGAState {
     41     ISADevice parent_obj;
     42 };
     43 
     44 static void sga_realizefn(DeviceState *dev, Error **errp)
     45 {
     46     warn_report("-device sga is deprecated, use -machine graphics=off");
     47     rom_add_vga(SGABIOS_FILENAME);
     48 }
     49 
     50 static void sga_class_initfn(ObjectClass *klass, void *data)
     51 {
     52     DeviceClass *dc = DEVICE_CLASS(klass);
     53 
     54     set_bit(DEVICE_CATEGORY_DISPLAY, dc->categories);
     55     dc->realize = sga_realizefn;
     56     dc->desc = "Serial Graphics Adapter";
     57 }
     58 
     59 static const TypeInfo sga_info = {
     60     .name          = TYPE_SGA,
     61     .parent        = TYPE_ISA_DEVICE,
     62     .instance_size = sizeof(ISASGAState),
     63     .class_init    = sga_class_initfn,
     64 };
     65 
     66 static void sga_register_types(void)
     67 {
     68     type_register_static(&sga_info);
     69 }
     70 
     71 type_init(sga_register_types)