亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來(lái)到蟲(chóng)蟲(chóng)下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲(chóng)蟲(chóng)下載站

?? spitz.c

?? QEMU 0.91 source code, supports ARM processor including S3C24xx series
?? C
?? 第 1 頁(yè) / 共 3 頁(yè)
字號(hào):
        max_en = !level;        break;    }}#define MAX1111_BATT_VOLT	1#define MAX1111_BATT_TEMP	2#define MAX1111_ACIN_VOLT	3#define SPITZ_BATTERY_TEMP	0xe0	/* About 2.9V */#define SPITZ_BATTERY_VOLT	0xd0	/* About 4.0V */#define SPITZ_CHARGEON_ACIN	0x80	/* About 5.0V */static void spitz_adc_temp_on(void *opaque, int line, int level){    if (!max1111)        return;    if (level)        max111x_set_input(max1111, MAX1111_BATT_TEMP, SPITZ_BATTERY_TEMP);    else        max111x_set_input(max1111, MAX1111_BATT_TEMP, 0);}static void spitz_ssp_save(QEMUFile *f, void *opaque){    qemu_put_be32(f, lcd_en);    qemu_put_be32(f, ads_en);    qemu_put_be32(f, max_en);    qemu_put_be32(f, bl_intensity);    qemu_put_be32(f, bl_power);}static int spitz_ssp_load(QEMUFile *f, void *opaque, int version_id){    lcd_en = qemu_get_be32(f);    ads_en = qemu_get_be32(f);    max_en = qemu_get_be32(f);    bl_intensity = qemu_get_be32(f);    bl_power = qemu_get_be32(f);    return 0;}static void spitz_ssp_attach(struct pxa2xx_state_s *cpu){    qemu_irq *chipselects;    lcd_en = ads_en = max_en = 0;    ads7846 = ads7846_init(pxa2xx_gpio_in_get(cpu->gpio)[SPITZ_GPIO_TP_INT]);    max1111 = max1111_init(0);    max111x_set_input(max1111, MAX1111_BATT_VOLT, SPITZ_BATTERY_VOLT);    max111x_set_input(max1111, MAX1111_BATT_TEMP, 0);    max111x_set_input(max1111, MAX1111_ACIN_VOLT, SPITZ_CHARGEON_ACIN);    pxa2xx_ssp_attach(cpu->ssp[CORGI_SSP_PORT - 1], corgi_ssp_read,                    corgi_ssp_write, cpu);    chipselects = qemu_allocate_irqs(corgi_ssp_gpio_cs, cpu, 3);    pxa2xx_gpio_out_set(cpu->gpio, SPITZ_GPIO_LCDCON_CS,  chipselects[0]);    pxa2xx_gpio_out_set(cpu->gpio, SPITZ_GPIO_ADS7846_CS, chipselects[1]);    pxa2xx_gpio_out_set(cpu->gpio, SPITZ_GPIO_MAX1111_CS, chipselects[2]);    bl_intensity = 0x20;    bl_power = 0;    register_savevm("spitz_ssp", 0, 0, spitz_ssp_save, spitz_ssp_load, cpu);}/* CF Microdrive */static void spitz_microdrive_attach(struct pxa2xx_state_s *cpu){    struct pcmcia_card_s *md;    int index;    BlockDriverState *bs;    index = drive_get_index(IF_IDE, 0, 0);    if (index == -1)        return;    bs = drives_table[index].bdrv;    if (bdrv_is_inserted(bs) && !bdrv_is_removable(bs)) {        md = dscm1xxxx_init(bs);        pxa2xx_pcmcia_attach(cpu->pcmcia[1], md);    }}/* Wm8750 and Max7310 on I2C */#define AKITA_MAX_ADDR	0x18#define SPITZ_WM_ADDRL	0x1b#define SPITZ_WM_ADDRH	0x1a#define SPITZ_GPIO_WM	5#ifdef HAS_AUDIOstatic void spitz_wm8750_addr(void *opaque, int line, int level){    i2c_slave *wm = (i2c_slave *) opaque;    if (level)        i2c_set_slave_address(wm, SPITZ_WM_ADDRH);    else        i2c_set_slave_address(wm, SPITZ_WM_ADDRL);}#endifstatic void spitz_i2c_setup(struct pxa2xx_state_s *cpu){    /* Attach the CPU on one end of our I2C bus.  */    i2c_bus *bus = pxa2xx_i2c_bus(cpu->i2c[0]);#ifdef HAS_AUDIO    AudioState *audio;    i2c_slave *wm;    audio = AUD_init();    if (!audio)        return;    /* Attach a WM8750 to the bus */    wm = wm8750_init(bus, audio);    spitz_wm8750_addr(wm, 0, 0);    pxa2xx_gpio_out_set(cpu->gpio, SPITZ_GPIO_WM,                    qemu_allocate_irqs(spitz_wm8750_addr, wm, 1)[0]);    /* .. and to the sound interface.  */    cpu->i2s->opaque = wm;    cpu->i2s->codec_out = wm8750_dac_dat;    cpu->i2s->codec_in = wm8750_adc_dat;    wm8750_data_req_set(wm, cpu->i2s->data_req, cpu->i2s);#endif}static void spitz_akita_i2c_setup(struct pxa2xx_state_s *cpu){    /* Attach a Max7310 to Akita I2C bus.  */    i2c_set_slave_address(max7310_init(pxa2xx_i2c_bus(cpu->i2c[0])),                    AKITA_MAX_ADDR);}/* Other peripherals */static void spitz_out_switch(void *opaque, int line, int level){    switch (line) {    case 0:        spitz_printf("Charging %s.\n", level ? "off" : "on");        break;    case 1:        spitz_printf("Discharging %s.\n", level ? "on" : "off");        break;    case 2:        spitz_printf("Green LED %s.\n", level ? "on" : "off");        break;    case 3:        spitz_printf("Orange LED %s.\n", level ? "on" : "off");        break;    case 4:        spitz_bl_bit5(opaque, line, level);        break;    case 5:        spitz_bl_power(opaque, line, level);        break;    case 6:        spitz_adc_temp_on(opaque, line, level);        break;    }}#define SPITZ_SCP_LED_GREEN		1#define SPITZ_SCP_JK_B			2#define SPITZ_SCP_CHRG_ON		3#define SPITZ_SCP_MUTE_L		4#define SPITZ_SCP_MUTE_R		5#define SPITZ_SCP_CF_POWER		6#define SPITZ_SCP_LED_ORANGE		7#define SPITZ_SCP_JK_A			8#define SPITZ_SCP_ADC_TEMP_ON		9#define SPITZ_SCP2_IR_ON		1#define SPITZ_SCP2_AKIN_PULLUP		2#define SPITZ_SCP2_BACKLIGHT_CONT	7#define SPITZ_SCP2_BACKLIGHT_ON		8#define SPITZ_SCP2_MIC_BIAS		9static void spitz_scoop_gpio_setup(struct pxa2xx_state_s *cpu,                struct scoop_info_s *scp, int num){    qemu_irq *outsignals = qemu_allocate_irqs(spitz_out_switch, cpu, 8);    scoop_gpio_out_set(&scp[0], SPITZ_SCP_CHRG_ON, outsignals[0]);    scoop_gpio_out_set(&scp[0], SPITZ_SCP_JK_B, outsignals[1]);    scoop_gpio_out_set(&scp[0], SPITZ_SCP_LED_GREEN, outsignals[2]);    scoop_gpio_out_set(&scp[0], SPITZ_SCP_LED_ORANGE, outsignals[3]);    if (num >= 2) {        scoop_gpio_out_set(&scp[1], SPITZ_SCP2_BACKLIGHT_CONT, outsignals[4]);        scoop_gpio_out_set(&scp[1], SPITZ_SCP2_BACKLIGHT_ON, outsignals[5]);    }    scoop_gpio_out_set(&scp[0], SPITZ_SCP_ADC_TEMP_ON, outsignals[6]);}#define SPITZ_GPIO_HSYNC		22#define SPITZ_GPIO_SD_DETECT		9#define SPITZ_GPIO_SD_WP		81#define SPITZ_GPIO_ON_RESET		89#define SPITZ_GPIO_BAT_COVER		90#define SPITZ_GPIO_CF1_IRQ		105#define SPITZ_GPIO_CF1_CD		94#define SPITZ_GPIO_CF2_IRQ		106#define SPITZ_GPIO_CF2_CD		93static int spitz_hsync;static void spitz_lcd_hsync_handler(void *opaque, int line, int level){    struct pxa2xx_state_s *cpu = (struct pxa2xx_state_s *) opaque;    qemu_set_irq(pxa2xx_gpio_in_get(cpu->gpio)[SPITZ_GPIO_HSYNC], spitz_hsync);    spitz_hsync ^= 1;}static void spitz_gpio_setup(struct pxa2xx_state_s *cpu, int slots){    qemu_irq lcd_hsync;    /*     * Bad hack: We toggle the LCD hsync GPIO on every GPIO status     * read to satisfy broken guests that poll-wait for hsync.     * Simulating a real hsync event would be less practical and     * wouldn't guarantee that a guest ever exits the loop.     */    spitz_hsync = 0;    lcd_hsync = qemu_allocate_irqs(spitz_lcd_hsync_handler, cpu, 1)[0];    pxa2xx_gpio_read_notifier(cpu->gpio, lcd_hsync);    pxa2xx_lcd_vsync_notifier(cpu->lcd, lcd_hsync);    /* MMC/SD host */    pxa2xx_mmci_handlers(cpu->mmc,                    pxa2xx_gpio_in_get(cpu->gpio)[SPITZ_GPIO_SD_WP],                    pxa2xx_gpio_in_get(cpu->gpio)[SPITZ_GPIO_SD_DETECT]);    /* Battery lock always closed */    qemu_irq_raise(pxa2xx_gpio_in_get(cpu->gpio)[SPITZ_GPIO_BAT_COVER]);    /* Handle reset */    pxa2xx_gpio_out_set(cpu->gpio, SPITZ_GPIO_ON_RESET, cpu->reset);    /* PCMCIA signals: card's IRQ and Card-Detect */    if (slots >= 1)        pxa2xx_pcmcia_set_irq_cb(cpu->pcmcia[0],                        pxa2xx_gpio_in_get(cpu->gpio)[SPITZ_GPIO_CF1_IRQ],                        pxa2xx_gpio_in_get(cpu->gpio)[SPITZ_GPIO_CF1_CD]);    if (slots >= 2)        pxa2xx_pcmcia_set_irq_cb(cpu->pcmcia[1],                        pxa2xx_gpio_in_get(cpu->gpio)[SPITZ_GPIO_CF2_IRQ],                        pxa2xx_gpio_in_get(cpu->gpio)[SPITZ_GPIO_CF2_CD]);    /* Initialise the screen rotation related signals */    spitz_gpio_invert[3] = 0;	/* Always open */    if (graphic_rotate) {	/* Tablet mode */        spitz_gpio_invert[4] = 0;    } else {			/* Portrait mode */        spitz_gpio_invert[4] = 1;    }    qemu_set_irq(pxa2xx_gpio_in_get(cpu->gpio)[SPITZ_GPIO_SWA],                    spitz_gpio_invert[3]);    qemu_set_irq(pxa2xx_gpio_in_get(cpu->gpio)[SPITZ_GPIO_SWB],                    spitz_gpio_invert[4]);}/* Write the bootloader parameters memory area.  */#define MAGIC_CHG(a, b, c, d)	((d << 24) | (c << 16) | (b << 8) | a)struct __attribute__ ((__packed__)) sl_param_info {    uint32_t comadj_keyword;    int32_t comadj;    uint32_t uuid_keyword;    char uuid[16];    uint32_t touch_keyword;    int32_t touch_xp;    int32_t touch_yp;    int32_t touch_xd;    int32_t touch_yd;    uint32_t adadj_keyword;    int32_t adadj;    uint32_t phad_keyword;    int32_t phadadj;} spitz_bootparam = {    .comadj_keyword	= MAGIC_CHG('C', 'M', 'A', 'D'),    .comadj		= 125,    .uuid_keyword	= MAGIC_CHG('U', 'U', 'I', 'D'),    .uuid		= { -1 },    .touch_keyword	= MAGIC_CHG('T', 'U', 'C', 'H'),    .touch_xp		= -1,    .adadj_keyword	= MAGIC_CHG('B', 'V', 'A', 'D'),    .adadj		= -1,    .phad_keyword	= MAGIC_CHG('P', 'H', 'A', 'D'),    .phadadj		= 0x01,};static void sl_bootparam_write(uint32_t ptr){    memcpy(phys_ram_base + ptr, &spitz_bootparam,                    sizeof(struct sl_param_info));}#define SL_PXA_PARAM_BASE	0xa0000a00/* Board init.  */enum spitz_model_e { spitz, akita, borzoi, terrier };static void spitz_common_init(int ram_size, int vga_ram_size,                DisplayState *ds, const char *kernel_filename,                const char *kernel_cmdline, const char *initrd_filename,                const char *cpu_model, enum spitz_model_e model, int arm_id){    uint32_t spitz_ram = 0x04000000;    uint32_t spitz_rom = 0x00800000;    struct pxa2xx_state_s *cpu;    struct scoop_info_s *scp;    if (!cpu_model)        cpu_model = (model == terrier) ? "pxa270-c5" : "pxa270-c0";    /* Setup CPU & memory */    if (ram_size < spitz_ram + spitz_rom + PXA2XX_INTERNAL_SIZE) {        fprintf(stderr, "This platform requires %i bytes of memory\n",                        spitz_ram + spitz_rom + PXA2XX_INTERNAL_SIZE);        exit(1);    }    cpu = pxa270_init(spitz_ram, ds, cpu_model);    sl_flash_register(cpu, (model == spitz) ? FLASH_128M : FLASH_1024M);    cpu_register_physical_memory(0, spitz_rom,                    qemu_ram_alloc(spitz_rom) | IO_MEM_ROM);    /* Setup peripherals */    spitz_keyboard_register(cpu);    spitz_ssp_attach(cpu);    scp = spitz_scoop_init(cpu, (model == akita) ? 1 : 2);    spitz_scoop_gpio_setup(cpu, scp, (model == akita) ? 1 : 2);    spitz_gpio_setup(cpu, (model == akita) ? 1 : 2);    spitz_i2c_setup(cpu);    if (model == akita)        spitz_akita_i2c_setup(cpu);    if (model == terrier)        /* A 6.0 GB microdrive is permanently sitting in CF slot 1.  */        spitz_microdrive_attach(cpu);    else if (model != akita)        /* A 4.0 GB microdrive is permanently sitting in CF slot 1.  */        spitz_microdrive_attach(cpu);    /* Setup initial (reset) machine state */    cpu->env->regs[15] = PXA2XX_SDRAM_BASE;    arm_load_kernel(cpu->env, spitz_ram, kernel_filename, kernel_cmdline,                    initrd_filename, arm_id, PXA2XX_SDRAM_BASE);    sl_bootparam_write(SL_PXA_PARAM_BASE - PXA2XX_SDRAM_BASE);}static void spitz_init(int ram_size, int vga_ram_size,                const char *boot_device, DisplayState *ds,                const char *kernel_filename, const char *kernel_cmdline,                const char *initrd_filename, const char *cpu_model){    spitz_common_init(ram_size, vga_ram_size, ds, kernel_filename,                kernel_cmdline, initrd_filename, cpu_model, spitz, 0x2c9);}static void borzoi_init(int ram_size, int vga_ram_size,                const char *boot_device, DisplayState *ds,                const char *kernel_filename, const char *kernel_cmdline,                const char *initrd_filename, const char *cpu_model){    spitz_common_init(ram_size, vga_ram_size, ds, kernel_filename,                kernel_cmdline, initrd_filename, cpu_model, borzoi, 0x33f);}static void akita_init(int ram_size, int vga_ram_size,                const char *boot_device, DisplayState *ds,                const char *kernel_filename, const char *kernel_cmdline,                const char *initrd_filename, const char *cpu_model){    spitz_common_init(ram_size, vga_ram_size, ds, kernel_filename,                kernel_cmdline, initrd_filename, cpu_model, akita, 0x2e8);}static void terrier_init(int ram_size, int vga_ram_size,                const char *boot_device, DisplayState *ds,                const char *kernel_filename, const char *kernel_cmdline,                const char *initrd_filename, const char *cpu_model){    spitz_common_init(ram_size, vga_ram_size, ds, kernel_filename,                kernel_cmdline, initrd_filename, cpu_model, terrier, 0x33f);}QEMUMachine akitapda_machine = {    "akita",    "Akita PDA (PXA270)",    akita_init,};QEMUMachine spitzpda_machine = {    "spitz",    "Spitz PDA (PXA270)",    spitz_init,};QEMUMachine borzoipda_machine = {    "borzoi",    "Borzoi PDA (PXA270)",    borzoi_init,};QEMUMachine terrierpda_machine = {    "terrier",    "Terrier PDA (PXA270)",    terrier_init,};

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
xnxx国产精品| 亚洲国产一区二区三区| 欧美大片一区二区三区| 欧美日高清视频| 欧美日韩一区高清| 91久久精品国产91性色tv| 91小视频在线观看| av一二三不卡影片| 91丝袜美腿高跟国产极品老师| 成人免费观看av| a4yy欧美一区二区三区| caoporen国产精品视频| 99视频热这里只有精品免费| 成人av资源下载| 99精品欧美一区| 日本不卡高清视频| 日韩av在线播放中文字幕| 欧美精品一区二区三| eeuss鲁一区二区三区| 大尺度一区二区| av不卡免费电影| 在线观看91精品国产入口| 欧美视频一区二区在线观看| 欧美日韩精品高清| 日韩一二三区不卡| 久久麻豆一区二区| 日韩一区有码在线| 亚洲国产日韩精品| 免费高清成人在线| 国产在线精品国自产拍免费| 成人免费视频一区| 欧美影院一区二区三区| 日韩一级黄色大片| 中文字幕av不卡| 一区二区三区四区乱视频| 日韩精品91亚洲二区在线观看| 精品中文字幕一区二区小辣椒| 成人免费视频caoporn| 色爱区综合激月婷婷| 欧美精品18+| 久久久国产精品午夜一区ai换脸| 国产精品久久久一本精品| 夜夜精品视频一区二区| 麻豆精品一区二区三区| 成人av第一页| 欧美福利视频一区| 国产清纯在线一区二区www| 一区二区三区在线播放| 日本不卡123| av电影一区二区| 欧美一区二区三区啪啪| 国产精品美女一区二区三区| 亚洲一区成人在线| 国产成人精品1024| 欧美精品第1页| 国产精品美女一区二区在线观看| 日本欧美久久久久免费播放网| 成人av网站免费观看| 欧美日韩三级视频| 中文欧美字幕免费| 日本亚洲欧美天堂免费| 99国产精品久| 欧美成人精品福利| 亚洲午夜久久久久久久久电影网 | 5566中文字幕一区二区电影| 国产三级精品在线| 天天色天天爱天天射综合| 成人av片在线观看| 久久在线观看免费| 日韩精品一级二级| 日本电影欧美片| 国产蜜臀97一区二区三区| 青草av.久久免费一区| 91论坛在线播放| 国产午夜精品理论片a级大结局 | 欧美色网一区二区| 欧美激情一区二区在线| 免费成人深夜小野草| 日本电影欧美片| 自拍偷拍国产亚洲| 国产精品综合一区二区三区| 在线看一区二区| 中文av字幕一区| 国产馆精品极品| 欧美tickling网站挠脚心| 性做久久久久久免费观看| 91免费小视频| 国产精品久久久久一区二区三区 | 秋霞电影一区二区| 在线观看欧美日本| 亚洲欧美日韩中文字幕一区二区三区 | 成人午夜看片网址| 26uuu国产日韩综合| 日本成人中文字幕在线视频| 欧美在线三级电影| 一区二区三区日韩欧美| 99久久er热在这里只有精品15| 国产日韩精品一区二区三区在线| 久久疯狂做爰流白浆xx| 日韩一区二区不卡| 日韩激情中文字幕| 91麻豆精品久久久久蜜臀 | 国产呦精品一区二区三区网站| 欧美一区日韩一区| 日韩vs国产vs欧美| 91精品欧美福利在线观看| 亚洲成人动漫一区| 欧美日韩一区不卡| 香蕉久久一区二区不卡无毒影院| 欧美色成人综合| 天堂在线一区二区| 欧美一区二区三区电影| 日本不卡视频在线观看| 精品久久久久久久久久久久包黑料| 免费观看在线色综合| 精品日韩一区二区| 国产精品一区三区| 国产精品家庭影院| 91国偷自产一区二区开放时间| 洋洋av久久久久久久一区| 欧美日韩国产大片| 美腿丝袜在线亚洲一区| 久久综合久色欧美综合狠狠| 国产91精品一区二区麻豆网站 | 中文字幕一区二区三区乱码在线| av激情综合网| 亚洲国产综合在线| 欧美一级免费观看| 国产精品一二二区| 亚洲丝袜制服诱惑| 欧美精品久久久久久久多人混战 | 韩国av一区二区三区在线观看| 久久久久久综合| 91丨国产丨九色丨pron| 亚洲成精国产精品女| 欧美一区二区啪啪| 国产999精品久久| 悠悠色在线精品| 欧美一级片免费看| 成人黄页毛片网站| 亚洲r级在线视频| 精品国产99国产精品| 99热在这里有精品免费| 无码av中文一区二区三区桃花岛| 欧美mv日韩mv国产网站app| 成人激情文学综合网| 日韩精品亚洲一区二区三区免费| 久久综合色8888| 在线观看亚洲成人| 黄色精品一二区| 亚洲美女视频在线观看| 日韩久久精品一区| 91在线精品一区二区| 美女视频一区二区三区| 亚洲欧洲国产日韩| 欧美一区二区三区小说| 成人av在线影院| 日本成人中文字幕| 一区二区三区在线视频免费观看| 日韩免费高清视频| 色视频欧美一区二区三区| 捆绑调教一区二区三区| 亚洲精品国产a| 久久综合999| 欧美日韩激情在线| 成人午夜在线视频| 免费观看在线色综合| 亚洲黄网站在线观看| 久久―日本道色综合久久| 欧美日韩一区二区在线观看| 风间由美一区二区av101| 日本系列欧美系列| 亚洲精品乱码久久久久久| 亚洲成人免费视频| 欧美激情中文字幕一区二区| 欧美高清精品3d| 91丨九色porny丨蝌蚪| 国产经典欧美精品| 五月激情六月综合| 一区2区3区在线看| 中文一区一区三区高中清不卡| 337p亚洲精品色噜噜狠狠| 91网上在线视频| 高清不卡一区二区| 精品一区二区在线视频| 日韩中文字幕91| 亚洲一区二区在线观看视频| 中文字幕在线观看一区| 久久精品夜色噜噜亚洲a∨| 欧美一级理论片| 欧美精品丝袜久久久中文字幕| 91香蕉视频在线| 99精品欧美一区二区三区小说| 丁香六月久久综合狠狠色| 黑人巨大精品欧美一区| 秋霞成人午夜伦在线观看| 婷婷亚洲久悠悠色悠在线播放| 亚洲综合在线视频| 一区二区三区四区蜜桃| 亚洲美女在线国产|