/qemu/include/qemu/ |
H A D | bitops.h | 9 * See the COPYING.LIB file in the top-level directory. 16 #include "host-utils.h" 28 (((~0ULL) >> (64 - (length))) << (shift)) 33 * We provide a set of functions which work on arbitrary-length arrays of 37 * - Bits stored in an array of 'unsigned long': set_bit(), clear_bit(), etc 38 * - Bits stored in an array of 'uint32_t': set_bit32(), clear_bit32(), etc 43 * be some guest-visible register view of the bit array. 63 * set_bit - Set a bit in memory 65 * @addr: the address to start counting from 76 * set_bit_atomic - Set a bit in memory atomically [all …]
|
/qemu/hw/watchdog/ |
H A D | wdt_imx2.c | 9 * See the COPYING file in the top-level directory. 17 #include "hw/qdev-properties.h" 28 s->wicr |= IMX2_WDT_WICR_WTIS; in imx2_wdt_interrupt() 29 qemu_set_irq(s->irq, 1); in imx2_wdt_interrupt() 38 s->wrsr = IMX2_WDT_WRSR_TOUT; in imx2_wdt_expired() 41 if (s->wcr & IMX2_WDT_WCR_WDE) { in imx2_wdt_expired() 50 ptimer_transaction_begin(s->timer); in imx2_wdt_reset() 51 ptimer_stop(s->timer); in imx2_wdt_reset() 52 ptimer_transaction_commit(s->timer); in imx2_wdt_reset() 54 if (s->pretimeout_support) { in imx2_wdt_reset() [all …]
|
/qemu/hw/net/rocker/ |
H A D | rocker_tlv.h | 2 * QEMU rocker switch emulation - TLV parsing and composing 22 (((len) + ROCKER_TLV_ALIGNTO - 1) & ~(ROCKER_TLV_ALIGNTO - 1)) 26 * <------- ROCKER_TLV_HDRLEN -------> <--- ROCKER_TLV_ALIGN(payload) ---> 27 * +-----------------------------+- - -+- - - - - - - - - - - - - - -+- - -+ 30 * +-----------------------------+- - -+- - - - - - - - - - - - - - -+- - -+ 31 * <--------------------------- tlv->len --------------------------> 36 int totlen = ROCKER_TLV_ALIGN(le16_to_cpu(tlv->len)); in rocker_tlv_next() 38 *remaining -= totlen; in rocker_tlv_next() 45 le16_to_cpu(tlv->len) >= ROCKER_TLV_HDRLEN && in rocker_tlv_ok() 46 le16_to_cpu(tlv->len) <= remaining; in rocker_tlv_ok() [all …]
|
/qemu/chardev/ |
H A D | char-hmp-cmds.c | 10 * the COPYING file in the top-level directory. 12 * Contributions after 2012-01-13 are licensed under the terms of the 21 #include "qapi/qapi-commands-char.h" 23 #include "qemu/config-file.h" 31 for (info = char_info; info; info = info->next) { in hmp_info_chardev() 32 monitor_printf(mon, "%s: filename=%s\n", info->value->label, in hmp_info_chardev() 33 info->value->filename); in hmp_info_chardev() 148 ChardevBackendInfoList *list, *start; in chardev_add_completion() local 156 start = list = qmp_query_chardev_backends(NULL); in chardev_add_completion() 158 const char *chr_name = list->value->name; in chardev_add_completion() [all …]
|
/qemu/tests/qtest/ |
H A D | i440fx-test.c | 4 * Copyright IBM, Corp. 2012-2013 12 * See the COPYING file in the top-level directory. 17 #include "libqtest-single.h" 19 #include "libqos/pci-pc.h" 30 /* decides whether we're testing -bios or -pflash */ 38 cmdline = g_strdup_printf("-machine pc -smp %d", s->num_cpus); in test_start_get_bus() 49 uint32_t value; in test_i440fx_defaults() local 76 value = qpci_config_readw(dev, 0x50); /* PMCCFG */ in test_i440fx_defaults() 77 if (s->num_cpus == 1) { /* WPE */ in test_i440fx_defaults() 78 g_assert(!(value & (1 << 15))); in test_i440fx_defaults() [all …]
|
/qemu/hw/block/ |
H A D | trace-events | 4 fdc_ioport_read(uint8_t reg, uint8_t value) "read reg 0x%02x val 0x%02x" 5 fdc_ioport_write(uint8_t reg, uint8_t value) "write reg 0x%02x val 0x%02x" 7 # fdc-sysbus.c 13 pflash_chip_erase_start(const char *name) "%s: start chip erase" 14 …ar *name, uint64_t offset, unsigned size, uint32_t value) "%s: data offset:0x%04"PRIx64" size:%u v… 15 …ar *name, uint64_t offset, unsigned size, uint32_t value) "%s: data offset:0x%04"PRIx64" size:%u v… 16 … uint64_t offset, unsigned size, uint32_t value, uint64_t counter) "%s: data offset:0x%04"PRIx64" … 21 …t offset, unsigned int size, uint32_t value, uint8_t cmd, uint8_t wcycle) "%s: offset:0x%04" PRIx6… 22 …uint64_t offset, unsigned int size, uint32_t value, uint8_t wcycle) "%s: offset:0x%04"PRIx64" size… 30 …onst char *name, int width1, uint64_t start, int width2, uint64_t end) "%s: start sector erase at:… [all …]
|
/qemu/hw/gpio/ |
H A D | bcm2838_gpio.c | 10 * SPDX-License-Identifier: GPL-2.0-or-later 80 uint32_t value = 0; in gpfsel_get() local 83 if (index < sizeof(s->fsel)) { in gpfsel_get() 84 value |= (s->fsel[index] & MASK_FSELN) << (NUM_BITS_FSELN * i); in gpfsel_get() 87 return value; in gpfsel_get() 90 static void gpfsel_set(BCM2838GpioState *s, uint8_t reg, uint32_t value) in gpfsel_set() argument 95 if (index < sizeof(s->fsel)) { in gpfsel_set() 96 int fsel = (value >> (NUM_BITS_FSELN * i)) & MASK_FSELN; in gpfsel_set() 97 s->fsel[index] = fsel; in gpfsel_set() 101 /* SD controller selection (48-53) */ in gpfsel_set() [all …]
|
H A D | bcm2835_gpio.c | 11 * See the COPYING file in the top-level directory. 58 uint32_t value = 0; in gpfsel_get() local 61 if (index < sizeof(s->fsel)) { in gpfsel_get() 62 value |= (s->fsel[index] & 0x7) << (3 * i); in gpfsel_get() 65 return value; in gpfsel_get() 68 static void gpfsel_set(BCM2835GpioState *s, uint8_t reg, uint32_t value) in gpfsel_set() argument 73 if (index < sizeof(s->fsel)) { in gpfsel_set() 74 int fsel = (value >> (3 * i)) & 0x7; in gpfsel_set() 75 s->fsel[index] = fsel; in gpfsel_set() 79 /* SD controller selection (48-53) */ in gpfsel_set() [all …]
|
/qemu/qom/ |
H A D | qom-hmp-cmds.c | 5 * later. See the COPYING file in the top-level directory. 9 #include "hw/qdev-core.h" 13 #include "qapi/qapi-commands-qom.h" 33 ObjectPropertyInfoList *start = list; in hmp_qom_list() local 35 ObjectPropertyInfo *value = list->value; in hmp_qom_list() local 38 value->name, value->type); in hmp_qom_list() 39 list = list->next; in hmp_qom_list() 41 qapi_free_ObjectPropertyInfoList(start); in hmp_qom_list() 51 const char *value = qdict_get_str(qdict, "value"); in hmp_qom_set() local 61 object_property_parse(obj, property, value, &err); in hmp_qom_set() [all …]
|
/qemu/tests/unit/ |
H A D | test-bitops.c | 5 * See the COPYING.LIB file in the top-level directory. 13 uint32_t value; member 14 int start; member 20 uint64_t value; member 21 int start; member 27 { 0x38463983, 4, 4, -8 }, 33 { 0x8459826734967223ULL, 60, 4, -8 }, 43 int32_t r = sextract32(test->value, test->start, test->length); in test_sextract32() 45 g_assert_cmpint(r, ==, test->result); in test_sextract32() 55 int64_t r = sextract64(test->value, test->start, test->length); in test_sextract64() [all …]
|
/qemu/include/hw/nvram/ |
H A D | fw_cfg.h | 5 #include "standard-headers/linux/qemu_fw_cfg.h" 13 #define TYPE_FW_CFG_DATA_GENERATOR_INTERFACE "fw_cfg-data-generator" 31 * @errp: pointer to a NULL-initialized error object 53 typedef void (*FWCfgWriteCallback)(void *opaque, off_t start, size_t len); 103 * @key: selector key value for new fw_cfg item 104 * @data: pointer to start of item data 116 * @key: selector key value for new fw_cfg item 117 * @value: NUL-terminated ascii string 123 void fw_cfg_add_string(FWCfgState *s, uint16_t key, const char *value); 128 * @key: selector key value for new fw_cfg item [all …]
|
/qemu/hw/timer/ |
H A D | exynos4210_mct.c | 4 * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. 31 * | <-------------------------------------------------------------- | 32 * | --------------------------------------------frc---------------> | 37 * | -------------> | 47 * local timer contains two counters: TCNT and ICNT. TCNT == 0 -> ICNT--. 121 #define GET_G_COMP_IDX(offset) (((offset) - G_COMP0_L) / 0x10) 122 #define GET_G_COMP_ADD_INCR_IDX(offset) (((offset) - G_COMP0_ADD_INCR) / 0x10) 145 #define GET_L_TIMER_IDX(offset) ((((offset) & 0xF00) - L0_TCNTB) / 0x100) 147 (((offset) - (L0_TCNTB + 0x100 * (lt_i))) >> 2) 201 uint64_t count; /* Value FRC was armed with */ [all …]
|
H A D | aspeed_timer.c | 9 * the COPYING file in the top-level directory. 22 #include "hw/qdev-properties.h" 28 #define TIMER_CTRL_MASK ((1 << TIMER_CTRL_BITS) - 1) 49 * Minimum value of the reload register to filter out short period 64 const AspeedTimer (*timers)[] = (void *)t - (t->id * sizeof(*t)); in timer_to_ctrl() 70 return !!(timer_to_ctrl(t)->ctrl & BIT(t->id * TIMER_CTRL_BITS + op)); in timer_ctrl_status() 85 return t->id >= TIMER_FIRST_CAP_PULSE; in timer_can_pulse() 98 aspeed_scu_get_apb_freq(s->scu); in calculate_rate() 103 uint64_t delta_ns = now_ns - MIN(now_ns, t->start); in calculate_ticks() 107 return t->reload - MIN(t->reload, ticks); in calculate_ticks() [all …]
|
/qemu/tests/tcg/s390x/ |
H A D | precise-smc-user.c | 2 * Test s390x-linux-user precise self-modifying code handling. 4 * SPDX-License-Identifier: GPL-2.0-or-later 18 uint64_t value = 21; in main() local 21 err = mprotect(aligned_smc, smc_end - aligned_smc, in main() 25 asm("jg 0f\n" /* start a new TB */ in main() 28 "agr %[value],%[value]\n" /* replaces sgr */ in main() 30 "0: vstl %[patch],%[idx],%[smc]\n" /* start writing before TB */ in main() 31 "sgr %[value],%[value]" /* this becomes `agr %r0,%r0` */ in main() 33 , [value] "+r" (value) in main() 35 , [idx] "r" (sizeof(patch) - 1) in main() [all …]
|
/qemu/include/hw/ |
H A D | ptimer.h | 15 * The countdown timer has a value (which can be read and written via 17 * using ptimer_run(), the value will count downwards at the frequency 20 * can be set to either reload itself from a specified limit value 21 * and keep counting down, or to stop (as a one-shot timer). 23 * A transaction-based API is used for modifying ptimer state: all calls 29 * list of state-modifying functions and detailed semantics of the callback.) 49 * - Starting to run with a period = 0 emits error message and stops the 52 * - Setting period to 0 of the running timer emits error message and 55 * - Starting to run with counter = 0 or setting it to "0" while timer 56 * is running causes a trigger and reloads counter with a limit value. [all …]
|
/qemu/hw/usb/ |
H A D | dev-serial.c | 5 * Copyright (c) 2008 Samuel Thibault <samuel.thibault@ens-lyon.org> 14 #include "qemu/error-report.h" 16 #include "hw/qdev-properties.h" 17 #include "hw/qdev-properties-system.h" 21 #include "chardev/char-serial.h" 22 #include "chardev/char-fe.h" 27 #define RECV_BUF (512 - (2 * 8)) 111 #define TYPE_USB_SERIAL "usb-serial-dev" 196 s->flow_control = flow_control; in usb_serial_set_flow_control() 197 trace_usb_serial_set_flow_control(bus->busnr, dev->addr, flow_control); in usb_serial_set_flow_control() [all …]
|
/qemu/include/block/ |
H A D | replication.h | 12 * See the COPYING file in the top-level directory. 18 #include "qapi/qapi-types-block-core.h" 49 * .start = replication_start, 58 * BDRVReplicationState *s = bs->opaque; 59 * s->rs = replication_new(bs, &replication_ops); 65 * BDRVReplicationState *s = bs->opaque; 66 * replication_remove(s->rs); 87 * Then in migration, we can use replication_(start/stop/do_checkpoint/ 93 * @opaque: opaque pointer value passed to this ReplicationState 105 * @start: callback to start replication [all …]
|
/qemu/system/ |
H A D | memory.c | 10 * the COPYING file in the top-level directory. 12 * Contributions after 2012-01-13 are licensed under the terms of the 22 #include "qemu/error-report.h" 23 #include "qemu/main-loop.h" 24 #include "qemu/qemu-print.h" 34 #include "system/address-spaces.h" 36 #include "memory-internal.h" 60 Int128 start; member 64 static AddrRange addrrange_make(Int128 start, Int128 size) in addrrange_make() argument 66 return (AddrRange) { start, size }; in addrrange_make() [all …]
|
/qemu/accel/kvm/ |
H A D | kvm-all.c | 12 * See the COPYING file in the top-level directory. 24 #include "qemu/config-file.h" 25 #include "qemu/error-report.h" 34 #include "system/accel-blocker.h" 40 #include "qemu/main-loop.h" 44 #include "qapi/qapi-types-common.h" 45 #include "qapi/qapi-visit-common.h" 47 #include "qemu/guest-random.h" 49 #include "kvm-cpus.h" 56 /* This check must be after config-host.h is included */ [all …]
|
/qemu/block/ |
H A D | gluster.c | 7 * See the COPYING file in the top-level directory. 14 #include "block/block-io.h" 20 #include "qemu/error-report.h" 45 #define GLUSTER_LOGFILE_DEFAULT "-" /* handled in libgfapi as /dev/stderr */ 47 * Several versions of GlusterFS (3.12? -> 6.0.1) fail when the transfer size 90 .name = "qemu-gluster-create-opts", 113 .help = "Gluster log level, valid range is 0-9", 136 .help = "Gluster log level, valid range is 0-9", 164 .help = "Gluster log level, valid range is 0-9", 228 .help = "ipv4 bool value, not supported by gluster", [all …]
|
/qemu/hw/i2c/ |
H A D | allwinner-i2c.c | 7 * by Jean-Christophe DUBOIS . 22 * SPDX-License-Identifier: MIT 26 #include "hw/i2c/allwinner-i2c.h" 91 /* Status value in STAT register is shifted by 3 bits */ 125 /* Master mode, 10-bit */ 160 return s->srst & TWI_SRST_MASK; in allwinner_i2c_is_reset() 165 return s->cntr & TWI_CNTR_BUS_EN; in allwinner_i2c_bus_is_enabled() 170 return s->cntr & TWI_CNTR_INT_EN; in allwinner_i2c_interrupt_is_enabled() 177 if (STAT_TO_STA(s->stat) != STAT_IDLE) { in allwinner_i2c_reset_hold() 178 i2c_end_transfer(s->bus); in allwinner_i2c_reset_hold() [all …]
|
/qemu/util/ |
H A D | userfaultfd.c | 2 * Linux UFFD-WP support 10 * later. See the COPYING file in the top-level directory. 15 #include "qemu/error-report.h" 58 return -EINVAL; in uffd_open() 65 * Returns: 0 on success, negative value in case of an error 73 int ret = -1; in uffd_query_features() 78 return -1; in uffd_query_features() 99 * Returns non-negative file descriptor or negative value in case of an error 102 * @non_blocking: create UFFD file descriptor for non-blocking operation 115 return -1; in uffd_create_fd() [all …]
|
/qemu/tests/migration-stress/ |
H A D | stress.c | 57 char *start, *end; in get_command_arg_str() local 62 return -1; in get_command_arg_str() 69 return -1; in get_command_arg_str() 73 start = strstr(line, name); in get_command_arg_str() 74 if (!start) in get_command_arg_str() 77 start += strlen(name); in get_command_arg_str() 79 if (*start != '=') { in get_command_arg_str() 80 fprintf(stderr, "%s (%05d): ERROR: no value provided for '%s' in /proc/cmdline\n", in get_command_arg_str() 83 start++; in get_command_arg_str() 85 end = strstr(start, " "); in get_command_arg_str() [all …]
|
/qemu/target/ppc/ |
H A D | internal.h | 23 #include "exec/page-protection.h" 24 #include "accel/tcg/tb-cpu-state.h" 36 static inline ret_type name(uint##size##_t start, \ 39 ret_type ret, max_bit = size - 1; \ 41 if (likely(start == 0)) { \ 42 ret = max_val << (max_bit - end); \ 44 ret = max_val >> start; \ 46 ret = (((uint##size##_t)(-1ULL)) >> (start)) ^ \ 47 (((uint##size##_t)(-1ULL) >> (end)) >> 1); \ 48 if (unlikely(start > end)) { \ [all …]
|
/qemu/docs/interop/ |
H A D | parallels.rst | 6 Copyright (c) 2015 Vladimir Sementsov-Ogievskiy 9 See the COPYING file in the top-level directory. 18 All numbers in a Parallels expandable image are stored in little-endian byte 23 ----------- 26 A 512-byte data chunk. 35 guest-to-host I/O data address translation. 38 ------ 40 The header is placed at the start of an image and contains the following 44 0 - 15: magic 47 16 - 19: version [all …]
|