Skip to content

Commit

Permalink
Merge tag 'pull-trivial-patches' of https://gitlab.com/mjt0k/qemu int…
Browse files Browse the repository at this point in the history
…o staging

trivial patches for 2023-09-08

# -----BEGIN PGP SIGNATURE-----
#
# iQFDBAABCAAtFiEEe3O61ovnosKJMUsicBtPaxppPlkFAmT68tMPHG1qdEB0bHMu
# bXNrLnJ1AAoJEHAbT2saaT5ZbEwH/2XcX1f4KcEJbgUn0JVhGQ5GH2c2jepZlkTZ
# 2dhvdEECbOPMg73hty0fyyWlyuLWdJ9cMpONfMtzmHTH8RKEOAbpn/zusyo3H+48
# 6cunyUpBqbmb7MHPchrN+JmvtvaSPSazsj2Zdkh+Y4WlfEYj+yVysQ4zQlBlRyHv
# iOTi6OdjxXg1QcbtJxAUhp+tKaRJzagiCpLkoyW2m8DIuV9cLVHMJsE3OMgfKNgK
# /S+O1fLcaDhuSCrHAbZzArF3Tr4bfLqSwDtGCJfQpqKeIQDJuI+41GLIlm1nYY70
# IFJzEWMOrX/rcMG1CQnUFZOOyDSO+NfILwNnU+eyM49MUekmY54=
# =mmPS
# -----END PGP SIGNATURE-----
# gpg: Signature made Fri 08 Sep 2023 06:09:23 EDT
# gpg:                using RSA key 7B73BAD68BE7A2C289314B22701B4F6B1A693E59
# gpg:                issuer "mjt@tls.msk.ru"
# gpg: Good signature from "Michael Tokarev <mjt@tls.msk.ru>" [full]
# gpg:                 aka "Michael Tokarev <mjt@corpit.ru>" [full]
# gpg:                 aka "Michael Tokarev <mjt@debian.org>" [full]
# Primary key fingerprint: 6EE1 95D1 886E 8FFB 810D  4324 457C E0A0 8044 65C5
#      Subkey fingerprint: 7B73 BAD6 8BE7 A2C2 8931  4B22 701B 4F6B 1A69 3E59

* tag 'pull-trivial-patches' of https://gitlab.com/mjt0k/qemu: (22 commits)
  qxl: don't assert() if device isn't yet initialized
  hw/net/vmxnet3: Fix guest-triggerable assert()
  tests/qtest/usb-hcd: Remove the empty "init" tests
  target/ppc: use g_free() in test_opcode_table()
  hw/ppc: use g_free() in spapr_tce_table_post_load()
  trivial: Simplify the spots that use TARGET_BIG_ENDIAN as a numeric value
  accel/tcg: Fix typo in translator_io_start() description
  tests/qtest/test-hmp: Fix migrate_set_parameter xbzrle-cache-size test
  docs tests: Fix use of migrate_set_parameter
  qemu-options.hx: Rephrase the descriptions of the -hd* and -cdrom options
  hw/display/xlnx_dp: update comments
  block: spelling fixes
  misc/other: spelling fixes
  qga/: spelling fixes
  tests/: spelling fixes
  scripts/: spelling fixes
  include/: spelling fixes
  audio: spelling fixes
  xen: spelling fix
  riscv: spelling fixes
  ...

Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
  • Loading branch information
stefanhaRH committed Sep 8, 2023
2 parents 0b63052 + 95bef68 commit c5ea91d
Show file tree
Hide file tree
Showing 164 changed files with 272 additions and 327 deletions.
2 changes: 1 addition & 1 deletion audio/mixeng.h
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ typedef struct st_sample st_sample;
typedef void (t_sample) (struct st_sample *dst, const void *src, int samples);
typedef void (f_sample) (void *dst, const struct st_sample *src, int samples);

/* indices: [stereo][signed][swap endiannes][8, 16 or 32-bits] */
/* indices: [stereo][signed][swap endianness][8, 16 or 32-bits] */
extern t_sample *mixeng_conv[2][2][2][3];
extern f_sample *mixeng_clip[2][2][2][3];

Expand Down
2 changes: 1 addition & 1 deletion backends/tpm/tpm_ioctl.h
Original file line number Diff line number Diff line change
Expand Up @@ -238,7 +238,7 @@ struct ptm_lockstorage {
} req; /* request */
struct {
ptm_res tpm_result;
} resp; /* reponse */
} resp; /* response */
} u;
};

Expand Down
2 changes: 1 addition & 1 deletion block.c
Original file line number Diff line number Diff line change
Expand Up @@ -7589,7 +7589,7 @@ int bdrv_try_change_aio_context(BlockDriverState *bs, AioContext *ctx,
/*
* Recursion phase: go through all nodes of the graph.
* Take care of checking that all nodes support changing AioContext
* and drain them, builing a linear list of callbacks to run if everything
* and drain them, building a linear list of callbacks to run if everything
* is successful (the transaction itself).
*/
tran = tran_new();
Expand Down
4 changes: 2 additions & 2 deletions block/block-copy.c
Original file line number Diff line number Diff line change
Expand Up @@ -67,7 +67,7 @@ typedef struct BlockCopyCallState {
QLIST_ENTRY(BlockCopyCallState) list;

/*
* Fields that report information about return values and erros.
* Fields that report information about return values and errors.
* Protected by lock in BlockCopyState.
*/
bool error_is_read;
Expand Down Expand Up @@ -462,7 +462,7 @@ static coroutine_fn int block_copy_task_run(AioTaskPool *pool,
* Do copy of cluster-aligned chunk. Requested region is allowed to exceed
* s->len only to cover last cluster when s->len is not aligned to clusters.
*
* No sync here: nor bitmap neighter intersecting requests handling, only copy.
* No sync here: neither bitmap nor intersecting requests handling, only copy.
*
* @method is an in-out argument, so that copy_range can be either extended to
* a full-size buffer or disabled if the copy_range attempt fails. The output
Expand Down
2 changes: 1 addition & 1 deletion block/export/vduse-blk.c
Original file line number Diff line number Diff line change
Expand Up @@ -138,7 +138,7 @@ static void vduse_blk_enable_queue(VduseDev *dev, VduseVirtq *vq)

aio_set_fd_handler(vblk_exp->export.ctx, vduse_queue_get_fd(vq),
on_vduse_vq_kick, NULL, NULL, NULL, vq);
/* Make sure we don't miss any kick afer reconnecting */
/* Make sure we don't miss any kick after reconnecting */
eventfd_write(vduse_queue_get_fd(vq), 1);
}

Expand Down
2 changes: 1 addition & 1 deletion block/export/vhost-user-blk-server.c
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/*
* Sharing QEMU block devices via vhost-user protocal
* Sharing QEMU block devices via vhost-user protocol
*
* Parts of the code based on nbd/server.c.
*
Expand Down
2 changes: 1 addition & 1 deletion block/export/vhost-user-blk-server.h
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/*
* Sharing QEMU block devices via vhost-user protocal
* Sharing QEMU block devices via vhost-user protocol
*
* Copyright (c) Coiby Xu <coiby.xu@gmail.com>.
* Copyright (c) 2020 Red Hat, Inc.
Expand Down
8 changes: 4 additions & 4 deletions block/file-posix.c
Original file line number Diff line number Diff line change
Expand Up @@ -1159,9 +1159,9 @@ static int raw_reopen_prepare(BDRVReopenState *state,
* As part of reopen prepare we also want to create new fd by
* raw_reconfigure_getfd(). But it wants updated "perm", when in
* bdrv_reopen_multiple() .bdrv_reopen_prepare() callback called prior to
* permission update. Happily, permission update is always a part (a seprate
* stage) of bdrv_reopen_multiple() so we can rely on this fact and
* reconfigure fd in raw_check_perm().
* permission update. Happily, permission update is always a part
* (a separate stage) of bdrv_reopen_multiple() so we can rely on this
* fact and reconfigure fd in raw_check_perm().
*/

s->reopen_state = state;
Expand Down Expand Up @@ -3374,7 +3374,7 @@ static void raw_account_discard(BDRVRawState *s, uint64_t nbytes, int ret)
* of an array of zone descriptors.
* zones is an array of zone descriptors to hold zone information on reply;
* offset can be any byte within the entire size of the device;
* nr_zones is the maxium number of sectors the command should operate on.
* nr_zones is the maximum number of sectors the command should operate on.
*/
#if defined(CONFIG_BLKZONED)
static int coroutine_fn raw_co_zone_report(BlockDriverState *bs, int64_t offset,
Expand Down
2 changes: 1 addition & 1 deletion block/graph-lock.c
Original file line number Diff line number Diff line change
Expand Up @@ -95,7 +95,7 @@ static uint32_t reader_count(void)

QEMU_LOCK_GUARD(&aio_context_list_lock);

/* rd can temporarly be negative, but the total will *always* be >= 0 */
/* rd can temporarily be negative, but the total will *always* be >= 0 */
rd = orphaned_reader_count;
QTAILQ_FOREACH(brdv_graph, &aio_context_list, next_aio) {
rd += qatomic_read(&brdv_graph->reader_count);
Expand Down
2 changes: 1 addition & 1 deletion block/io.c
Original file line number Diff line number Diff line change
Expand Up @@ -342,7 +342,7 @@ static void coroutine_fn bdrv_co_yield_to_drain(BlockDriverState *bs,
* timer callback), it is a bug in the caller that should be fixed. */
assert(data.done);

/* Reaquire the AioContext of bs if we dropped it */
/* Reacquire the AioContext of bs if we dropped it */
if (ctx != co_ctx) {
aio_context_acquire(ctx);
}
Expand Down
2 changes: 1 addition & 1 deletion block/linux-aio.c
Original file line number Diff line number Diff line change
Expand Up @@ -227,7 +227,7 @@ static void qemu_laio_process_completions(LinuxAioState *s)

/* If we are nested we have to notify the level above that we are done
* by setting event_max to zero, upper level will then jump out of it's
* own `for` loop. If we are the last all counters droped to zero. */
* own `for` loop. If we are the last all counters dropped to zero. */
s->event_max = 0;
s->event_idx = 0;
}
Expand Down
2 changes: 1 addition & 1 deletion block/mirror.c
Original file line number Diff line number Diff line change
Expand Up @@ -502,7 +502,7 @@ static void coroutine_fn mirror_iteration(MirrorBlockJob *s)

job_pause_point(&s->common.job);

/* Find the number of consective dirty chunks following the first dirty
/* Find the number of consecutive dirty chunks following the first dirty
* one, and wait for in flight requests in them. */
bdrv_dirty_bitmap_lock(s->dirty_bitmap);
while (nb_chunks * s->granularity < s->buf_size) {
Expand Down
2 changes: 1 addition & 1 deletion block/qcow2-refcount.c
Original file line number Diff line number Diff line change
Expand Up @@ -2645,7 +2645,7 @@ rebuild_refcount_structure(BlockDriverState *bs, BdrvCheckResult *res,
* repeat all this until the reftable stops growing.
*
* (This loop will terminate, because with every cluster the
* reftable grows, it can accomodate a multitude of more refcounts,
* reftable grows, it can accommodate a multitude of more refcounts,
* so that at some point this must be able to cover the reftable
* and all refblocks describing it.)
*
Expand Down
2 changes: 1 addition & 1 deletion block/vhdx.c
Original file line number Diff line number Diff line change
Expand Up @@ -1077,7 +1077,7 @@ static int vhdx_open(BlockDriverState *bs, QDict *options, int flags,
goto fail;
}

/* endian convert populated BAT field entires */
/* endian convert populated BAT field entries */
for (i = 0; i < s->bat_entries; i++) {
s->bat[i] = le64_to_cpu(s->bat[i]);
}
Expand Down
4 changes: 2 additions & 2 deletions block/vhdx.h
Original file line number Diff line number Diff line change
Expand Up @@ -212,7 +212,7 @@ typedef struct QEMU_PACKED VHDXLogDataSector {
uint32_t sequence_high; /* 4 MSB of 8 byte sequence_number */
uint8_t data[4084]; /* raw data, bytes 8-4091 (inclusive).
see the data descriptor field for the
other mising bytes */
other missing bytes */
uint32_t sequence_low; /* 4 LSB of 8 byte sequence_number */
} VHDXLogDataSector;

Expand Down Expand Up @@ -257,7 +257,7 @@ typedef struct QEMU_PACKED VHDXMetadataTableHeader {

#define VHDX_META_FLAGS_IS_USER 0x01 /* max 1024 entries */
#define VHDX_META_FLAGS_IS_VIRTUAL_DISK 0x02 /* virtual disk metadata if set,
otherwise file metdata */
otherwise file metadata */
#define VHDX_META_FLAGS_IS_REQUIRED 0x04 /* parse must understand this
entry to open the file */
typedef struct QEMU_PACKED VHDXMetadataTableEntry {
Expand Down
2 changes: 1 addition & 1 deletion bsd-user/trace-events
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# See docs/tracing.txt for syntax documentation.
# See docs/devel/tracing.rst for syntax documentation.

# bsd-user/signal.c
user_setup_frame(void *env, uint64_t frame_addr) "env=%p frame_addr=0x%"PRIx64
Expand Down
6 changes: 3 additions & 3 deletions chardev/char-socket.c
Original file line number Diff line number Diff line change
Expand Up @@ -710,15 +710,15 @@ static void tcp_chr_telnet_init(Chardev *chr)

if (!s->is_tn3270) {
init->buflen = 12;
/* Prep the telnet negotion to put telnet in binary,
/* Prep the telnet negotiation to put telnet in binary,
* no echo, single char mode */
IACSET(init->buf, 0xff, 0xfb, 0x01); /* IAC WILL ECHO */
IACSET(init->buf, 0xff, 0xfb, 0x03); /* IAC WILL Suppress go ahead */
IACSET(init->buf, 0xff, 0xfb, 0x00); /* IAC WILL Binary */
IACSET(init->buf, 0xff, 0xfd, 0x00); /* IAC DO Binary */
} else {
init->buflen = 21;
/* Prep the TN3270 negotion based on RFC1576 */
/* Prep the TN3270 negotiation based on RFC1576 */
IACSET(init->buf, 0xff, 0xfd, 0x19); /* IAC DO EOR */
IACSET(init->buf, 0xff, 0xfb, 0x19); /* IAC WILL EOR */
IACSET(init->buf, 0xff, 0xfd, 0x00); /* IAC DO BINARY */
Expand Down Expand Up @@ -1298,7 +1298,7 @@ static bool qmp_chardev_validate_socket(ChardevSocket *sock,
return false;
}

/* Validate any options which have a dependancy on client vs server */
/* Validate any options which have a dependency on client vs server */
if (!sock->has_server || sock->server) {
if (sock->has_reconnect) {
error_setg(errp,
Expand Down
2 changes: 1 addition & 1 deletion chardev/char.c
Original file line number Diff line number Diff line change
Expand Up @@ -1115,7 +1115,7 @@ ChardevReturn *qmp_chardev_change(const char *id, ChardevBackend *backend,
return NULL;
}

/* change successfull, clean up */
/* change successful, clean up */
chr_new->handover_yank_instance = false;

/*
Expand Down
6 changes: 1 addition & 5 deletions cpu.c
Original file line number Diff line number Diff line change
Expand Up @@ -420,11 +420,7 @@ int cpu_memory_rw_debug(CPUState *cpu, vaddr addr,

bool target_words_bigendian(void)
{
#if TARGET_BIG_ENDIAN
return true;
#else
return false;
#endif
return TARGET_BIG_ENDIAN;
}

const char *target_name(void)
Expand Down
2 changes: 1 addition & 1 deletion crypto/afalg.c
Original file line number Diff line number Diff line change
Expand Up @@ -73,7 +73,7 @@ qcrypto_afalg_comm_alloc(const char *type, const char *name,
QCryptoAFAlg *afalg;

afalg = g_new0(QCryptoAFAlg, 1);
/* initilize crypto API socket */
/* initialize crypto API socket */
afalg->opfd = -1;
afalg->tfmfd = qcrypto_afalg_socket_bind(type, name, errp);
if (afalg->tfmfd == -1) {
Expand Down
6 changes: 3 additions & 3 deletions crypto/block-luks.c
Original file line number Diff line number Diff line change
Expand Up @@ -244,7 +244,7 @@ qcrypto_block_luks_has_format(const uint8_t *buf,
*
* When calculating ESSIV IVs, the cipher length used by ESSIV
* may be different from the cipher length used for the block
* encryption, becauses dm-crypt uses the hash digest length
* encryption, because dm-crypt uses the hash digest length
* as the key size. ie, if you have AES 128 as the block cipher
* and SHA 256 as ESSIV hash, then ESSIV will use AES 256 as
* the cipher since that gets a key length matching the digest
Expand Down Expand Up @@ -393,7 +393,7 @@ qcrypto_block_luks_from_disk_endian(QCryptoBlockLUKSHeader *hdr)
}

/*
* Stores the main LUKS header, taking care of endianess
* Stores the main LUKS header, taking care of endianness
*/
static int
qcrypto_block_luks_store_header(QCryptoBlock *block,
Expand Down Expand Up @@ -423,7 +423,7 @@ qcrypto_block_luks_store_header(QCryptoBlock *block,
}

/*
* Loads the main LUKS header,and byteswaps it to native endianess
* Loads the main LUKS header, and byteswaps it to native endianness
* And run basic sanity checks on it
*/
static int
Expand Down
2 changes: 1 addition & 1 deletion crypto/der.c
Original file line number Diff line number Diff line change
Expand Up @@ -76,7 +76,7 @@ enum QCryptoDERTagEnc {
/**
* qcrypto_der_encode_length:
* @src_len: the length of source data
* @dst: distination to save the encoded 'length', if dst is NULL, only compute
* @dst: destination to save the encoded 'length', if dst is NULL, only compute
* the expected buffer size in bytes.
* @dst_len: output parameter, indicates how many bytes wrote.
*
Expand Down
6 changes: 3 additions & 3 deletions crypto/der.h
Original file line number Diff line number Diff line change
Expand Up @@ -249,7 +249,7 @@ void qcrypto_der_encode_octet_str(QCryptoEncodeContext *ctx,
* Start encoding a octet string, All fields between
* qcrypto_der_encode_octet_str_begin and qcrypto_der_encode_octet_str_end
* are encoded as an octet string. This is useful when we need to encode a
* encoded SEQUNCE as OCTET STRING.
* encoded SEQUENCE as OCTET STRING.
*/
void qcrypto_der_encode_octet_str_begin(QCryptoEncodeContext *ctx);

Expand All @@ -260,7 +260,7 @@ void qcrypto_der_encode_octet_str_begin(QCryptoEncodeContext *ctx);
* Finish encoding a octet string, All fields between
* qcrypto_der_encode_octet_str_begin and qcrypto_der_encode_octet_str_end
* are encoded as an octet string. This is useful when we need to encode a
* encoded SEQUNCE as OCTET STRING.
* encoded SEQUENCE as OCTET STRING.
*/
void qcrypto_der_encode_octet_str_end(QCryptoEncodeContext *ctx);

Expand All @@ -275,7 +275,7 @@ size_t qcrypto_der_encode_ctx_buffer_len(QCryptoEncodeContext *ctx);
/**
* qcrypto_der_encode_ctx_flush_and_free:
* @ctx: the encode context.
* @dst: the distination to save the encoded data, the length of dst should
* @dst: the destination to save the encoded data, the length of dst should
* not less than qcrypto_der_encode_cxt_buffer_len
*
* Flush all encoded data into dst, then free ctx.
Expand Down
12 changes: 6 additions & 6 deletions docs/multi-thread-compression.txt
Original file line number Diff line number Diff line change
Expand Up @@ -117,13 +117,13 @@ to support the multiple thread compression migration:
{qemu} migrate_set_capability compress on

3. Set the compression thread count on source:
{qemu} migrate_set_parameter compress_threads 12
{qemu} migrate_set_parameter compress-threads 12

4. Set the compression level on the source:
{qemu} migrate_set_parameter compress_level 1
{qemu} migrate_set_parameter compress-level 1

5. Set the decompression thread count on destination:
{qemu} migrate_set_parameter decompress_threads 3
{qemu} migrate_set_parameter decompress-threads 3

6. Start outgoing migration:
{qemu} migrate -d tcp:destination.host:4444
Expand All @@ -133,9 +133,9 @@ to support the multiple thread compression migration:

The following are the default settings:
compress: off
compress_threads: 8
decompress_threads: 2
compress_level: 1 (which means best speed)
compress-threads: 8
decompress-threads: 2
compress-level: 1 (which means best speed)

So, only the first two steps are required to use the multiple
thread compression in migration. You can do more if the default
Expand Down
2 changes: 1 addition & 1 deletion docs/rdma.txt
Original file line number Diff line number Diff line change
Expand Up @@ -89,7 +89,7 @@ RUNNING:
First, set the migration speed to match your hardware's capabilities:

QEMU Monitor Command:
$ migrate_set_parameter max_bandwidth 40g # or whatever is the MAX of your RDMA device
$ migrate_set_parameter max-bandwidth 40g # or whatever is the MAX of your RDMA device

Next, on the destination machine, add the following to the QEMU command line:

Expand Down
2 changes: 1 addition & 1 deletion ebpf/trace-events
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# See docs/devel/tracing.txt for syntax documentation.
# See docs/devel/tracing.rst for syntax documentation.

# ebpf-rss.c
ebpf_error(const char *s1, const char *s2) "error in %s: %s"
8 changes: 4 additions & 4 deletions hw/audio/fmopl.c
Original file line number Diff line number Diff line change
Expand Up @@ -355,7 +355,7 @@ static void set_algorithm( OPL_CH *CH)
CH->connect2 = carrier;
}

/* ---------- frequency counter for operater update ---------- */
/* ---------- frequency counter for operator update ---------- */
static inline void CALC_FCSLOT(OPL_CH *CH,OPL_SLOT *SLOT)
{
int ksr;
Expand Down Expand Up @@ -640,7 +640,7 @@ static int OPLOpenTable( void )
TL_TABLE[t] = TL_TABLE[TL_MAX+t] = 0;
}

/* make sinwave table (total level offet) */
/* make sinwave table (total level offset) */
/* degree 0 = degree 180 = off */
SIN_TABLE[0] = SIN_TABLE[SIN_ENT/2] = &TL_TABLE[EG_ENT-1];
for (s = 1;s <= SIN_ENT/4;s++){
Expand Down Expand Up @@ -1075,7 +1075,7 @@ FM_OPL *OPLCreate(int clock, int rate)
char *ptr;
FM_OPL *OPL;
int state_size;
int max_ch = 9; /* normaly 9 channels */
int max_ch = 9; /* normally 9 channels */

if( OPL_LockTable() ==-1) return NULL;
/* allocate OPL state space */
Expand All @@ -1092,7 +1092,7 @@ FM_OPL *OPLCreate(int clock, int rate)
OPL->clock = clock;
OPL->rate = rate;
OPL->max_ch = max_ch;
/* init grobal tables */
/* init global tables */
OPL_initialize(OPL);
/* reset chip */
OPLResetChip(OPL);
Expand Down
2 changes: 1 addition & 1 deletion hw/audio/fmopl.h
Original file line number Diff line number Diff line change
Expand Up @@ -69,7 +69,7 @@ typedef struct fm_opl_f {
/* FM channel slots */
OPL_CH *P_CH; /* pointer of CH */
int max_ch; /* maximum channel */
/* Rhythm sention */
/* Rhythm section */
uint8_t rhythm; /* Rhythm mode , key flag */
/* time tables */
int32_t AR_TABLE[76]; /* attack rate tables */
Expand Down
4 changes: 2 additions & 2 deletions hw/audio/gusemu_hal.c
Original file line number Diff line number Diff line change
Expand Up @@ -154,7 +154,7 @@ unsigned int gus_read(GUSEmuState * state, int port, int size)
case 0x8d:
{
int offset = 2 * (GUSregb(FunkSelReg3x3) & 0x0f);
offset += ((int) GUSregb(VoiceSelReg3x2) & 0x1f) << 5; /* = Voice*32 + Funktion*2 */
offset += ((int) GUSregb(VoiceSelReg3x2) & 0x1f) << 5; /* = Voice*32 + Function*2 */
value_read = GUSregw(offset);
}
break;
Expand Down Expand Up @@ -353,7 +353,7 @@ void gus_write(GUSEmuState * state, int port, int size, unsigned int data)
if (!(GUSregb(GUS4cReset) & 0x01))
break; /* reset flag active? */
offset = 2 * (GUSregb(FunkSelReg3x3) & 0x0f);
offset += (GUSregb(VoiceSelReg3x2) & 0x1f) << 5; /* = Voice*32 + Funktion*2 */
offset += (GUSregb(VoiceSelReg3x2) & 0x1f) << 5; /* = Voice*32 + Function*2 */
GUSregw(offset) = (uint16_t) ((GUSregw(offset) & readmask) | writedata);
}
break;
Expand Down

0 comments on commit c5ea91d

Please sign in to comment.