From patchwork Fri Jun 1 14:12:18 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Peter Maydell X-Patchwork-Id: 137534 Delivered-To: patches@linaro.org Received: by 2002:a2e:9706:0:0:0:0:0 with SMTP id r6-v6csp992051lji; Fri, 1 Jun 2018 07:12:30 -0700 (PDT) X-Google-Smtp-Source: ADUXVKKhJ3pej95v5S3UjX3qyXFgXyawdIhStPo6cN9EdnigmK3mIMNL656fUsBagRcOUhsp1rri X-Received: by 2002:a17:902:bd96:: with SMTP id q22-v6mr660502pls.247.1527862350754; Fri, 01 Jun 2018 07:12:30 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1527862350; cv=none; d=google.com; s=arc-20160816; b=C7pNj7FHBnDRMCixtugZsywZgCXLFBlsGQjUPLO8e1Hi76Y7JYC/ixf9HpfF9Inmvv tItUG7u9WUbPWaZ3T4S25HTP9p7ekCRiRdwL0bFw8SHFU66XMsqbeDMutQ5bqu/+f1Ct SkoViLSQxTp3ksrW0o0uM4svYkcJyU2iXU6vXzehxlgxhw0x/10LT+py99f1C/ltz3nW 8dC8bIEZ9t4cP+Hhy24U6zBskH+SebmvLpjeg1arHAjmrqNTTzNe+7AHIowrJXrDZWEZ /IBIt2iRjLRoBo8/c0iw8VIiGeS9/KNUEhGQKg0gOPrsKCW8QWqQKrQDRe30gVkLxUFA R8Cw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=references:in-reply-to:message-id:date:subject:cc:to:from :arc-authentication-results; bh=mPbGgI8gf7FvaAtBqgUaBbD3XkVaUMD3dubgz7VrptY=; b=yTkYC5dzaqeUFOyZXpyC0yStBSuLF2h205kkXHRaJzZ3u1MrOTC69uINkhcAZ/Xie5 WV9xXV7h8gUXi/XuNIsvx/c7nfuVmyBkYciyiaqrkpYTWcVPxytsaiibwinddZ8jleyy 7gHfGajLN9bYASYPk5ZLVBc2IDecr8k/rqS0aRomlOwPjVIOieeNcBvUZpOq/kZ2hSsK L+H8E54SJJduRUMtDSwxkALpIShjBnknEz9cOMfUo5EF8GQu+Lf4fpjFUbJ6Nicsikbt /yZcPOC8Biv1W7BGXjyja5Srb7ycPuZR/Lzmz67luNP/bDM/eTne59Ih2sTOpWEu+t/E TH7g== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of pm215@archaic.org.uk designates 2001:8b0:1d0::2 as permitted sender) smtp.mailfrom=pm215@archaic.org.uk; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from orth.archaic.org.uk (orth.archaic.org.uk. [2001:8b0:1d0::2]) by mx.google.com with ESMTPS id e9-v6si1575622pgo.397.2018.06.01.07.12.29 for (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Fri, 01 Jun 2018 07:12:30 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of pm215@archaic.org.uk designates 2001:8b0:1d0::2 as permitted sender) client-ip=2001:8b0:1d0::2; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of pm215@archaic.org.uk designates 2001:8b0:1d0::2 as permitted sender) smtp.mailfrom=pm215@archaic.org.uk; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from pm215 by orth.archaic.org.uk with local (Exim 4.89) (envelope-from ) id 1fOkn3-00042K-CC; Fri, 01 Jun 2018 15:12:25 +0100 From: Peter Maydell To: qemu-devel@nongnu.org Cc: patches@linaro.org, Kevin Wolf , Max Reitz , "Michael S. Tsirkin" , Paolo Bonzini , Thomas Huth , Aurelien Jarno , qemu-block@nongnu.org, Yongbok Kim Subject: [PATCH 1/6] hw/sh/sh7750: Convert away from old_mmio Date: Fri, 1 Jun 2018 15:12:18 +0100 Message-Id: <20180601141223.26630-2-peter.maydell@linaro.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180601141223.26630-1-peter.maydell@linaro.org> References: <20180601141223.26630-1-peter.maydell@linaro.org> Convert the sh7750 device away from using the old_mmio field of MemoryRegionOps. This device is used by the sh4 r2d board. Signed-off-by: Peter Maydell --- hw/sh4/sh7750.c | 44 ++++++++++++++++++++++++++++++++++++-------- 1 file changed, 36 insertions(+), 8 deletions(-) -- 2.17.1 Reviewed-by: Philippe Mathieu-Daudé diff --git a/hw/sh4/sh7750.c b/hw/sh4/sh7750.c index 5a7d47d31e..b932f33409 100644 --- a/hw/sh4/sh7750.c +++ b/hw/sh4/sh7750.c @@ -451,15 +451,43 @@ static void sh7750_mem_writel(void *opaque, hwaddr addr, } } +static uint64_t sh7750_mem_readfn(void *opaque, hwaddr addr, unsigned size) +{ + switch (size) { + case 1: + return sh7750_mem_readb(opaque, addr); + case 2: + return sh7750_mem_readw(opaque, addr); + case 4: + return sh7750_mem_readl(opaque, addr); + default: + g_assert_not_reached(); + } +} + +static void sh7750_mem_writefn(void *opaque, hwaddr addr, + uint64_t value, unsigned size) +{ + switch (size) { + case 1: + sh7750_mem_writeb(opaque, addr, value); + break; + case 2: + sh7750_mem_writew(opaque, addr, value); + break; + case 4: + sh7750_mem_writel(opaque, addr, value); + break; + default: + g_assert_not_reached(); + } +} + static const MemoryRegionOps sh7750_mem_ops = { - .old_mmio = { - .read = {sh7750_mem_readb, - sh7750_mem_readw, - sh7750_mem_readl }, - .write = {sh7750_mem_writeb, - sh7750_mem_writew, - sh7750_mem_writel }, - }, + .read = sh7750_mem_readfn, + .write = sh7750_mem_writefn, + .valid.min_access_size = 1, + .valid.max_access_size = 4, .endianness = DEVICE_NATIVE_ENDIAN, }; From patchwork Fri Jun 1 14:12:19 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Peter Maydell X-Patchwork-Id: 137528 Delivered-To: patches@linaro.org Received: by 2002:a2e:9706:0:0:0:0:0 with SMTP id r6-v6csp991954lji; Fri, 1 Jun 2018 07:12:27 -0700 (PDT) X-Google-Smtp-Source: ADUXVKKwUIDeR/7U46k86Yb4nQWWuV05zSjWdMQYbysSW1ZS7ytlYCE3FO+5iialh7jzziX1bqxs X-Received: by 2002:a1c:6dd3:: with SMTP id b80-v6mr2709677wmi.32.1527862346893; Fri, 01 Jun 2018 07:12:26 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1527862346; cv=none; d=google.com; s=arc-20160816; b=gFzX64YUSaaeMYY1330AZom3E2rpnjwc7VmgKCd03J+knn8XcTa8kQmHBBkxsdvidU f6WpWUra1WfuAMG9AQUkwNvn7m2JrFrEWUKlVcIzGXPQCbXxRDQrn7ENVcwA0n5CcdYS GUTg2bryG1waDgoMmDM3Tqp4c+XV69pOBTILe1jaVzSqaB2z03/Hiad9jiNqircxmnLY jmTFt05Z8AkRGbwZC/oo/M3a3PxR/O5JazRYbgQaDx1mfX/jX5mZgIUbNpWR101srsoX Tgi8wUVyhzr/Ec/FsVOBQYbUNXCdGRP4zymVLVvQWWvWmwi1FQEgmefsY3jgCkHrUUFh dA2Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=references:in-reply-to:message-id:date:subject:cc:to:from :arc-authentication-results; bh=CZA6/pth5J/a8ZEhv4mVKYUpumliB/yl7lo+l9uG3Xk=; b=mrG62tqUspYvr41YNOuW9dldVqoi1vTq48mkAfeQzDoVluUVHvqge7EfH2MMPSXF32 iu5iDyZE6BbN/NImeXYiR+cYfz00khGVHJ8cWsVt0kt1gQgKhk7wVpGHQgh/JMYdtIhO ECOJMQHmnksKg4Nmi/y2iox5G7HtLyzfrjhUyG40HDj1wSh+FV/ehJQPb8Xt3zetnYph t2xXolXE7ZGPnCnjsPVfPOBovTdu8qNf5c+8Zp1iphf9qeE+8SnmbC9XYWqX0k/InVqe U+GBuJeu/Qix//y9qC5SmrZzH+7zHtjE6m5oVWYA8U/37nZKHn0rG103TmZQS/2keUjO K8AQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of pm215@archaic.org.uk designates 2001:8b0:1d0::2 as permitted sender) smtp.mailfrom=pm215@archaic.org.uk; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from orth.archaic.org.uk (orth.archaic.org.uk. [2001:8b0:1d0::2]) by mx.google.com with ESMTPS id k78-v6si1623133wmc.8.2018.06.01.07.12.26 for (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Fri, 01 Jun 2018 07:12:26 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of pm215@archaic.org.uk designates 2001:8b0:1d0::2 as permitted sender) client-ip=2001:8b0:1d0::2; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of pm215@archaic.org.uk designates 2001:8b0:1d0::2 as permitted sender) smtp.mailfrom=pm215@archaic.org.uk; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from pm215 by orth.archaic.org.uk with local (Exim 4.89) (envelope-from ) id 1fOkn4-00042X-3J; Fri, 01 Jun 2018 15:12:26 +0100 From: Peter Maydell To: qemu-devel@nongnu.org Cc: patches@linaro.org, Kevin Wolf , Max Reitz , "Michael S. Tsirkin" , Paolo Bonzini , Thomas Huth , Aurelien Jarno , qemu-block@nongnu.org, Yongbok Kim Subject: [PATCH 2/6] hw/m68k/mcf5206: Convert away from old_mmio Date: Fri, 1 Jun 2018 15:12:19 +0100 Message-Id: <20180601141223.26630-3-peter.maydell@linaro.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180601141223.26630-1-peter.maydell@linaro.org> References: <20180601141223.26630-1-peter.maydell@linaro.org> Convert the mcf5206 device away from using the old_mmio field of MemoryRegionOps. This device is used by the an5206 board. Signed-off-by: Peter Maydell --- hw/m68k/mcf5206.c | 48 +++++++++++++++++++++++++++++++++++------------ 1 file changed, 36 insertions(+), 12 deletions(-) -- 2.17.1 Acked-by: Thomas Huth diff --git a/hw/m68k/mcf5206.c b/hw/m68k/mcf5206.c index 6ad1e4bd2d..0962911837 100644 --- a/hw/m68k/mcf5206.c +++ b/hw/m68k/mcf5206.c @@ -513,19 +513,43 @@ static void m5206_mbar_writel(void *opaque, hwaddr offset, m5206_mbar_write(s, offset, value, 4); } +static uint64_t m5206_mbar_readfn(void *opaque, hwaddr addr, unsigned size) +{ + switch (size) { + case 1: + return m5206_mbar_readb(opaque, addr); + case 2: + return m5206_mbar_readw(opaque, addr); + case 4: + return m5206_mbar_readl(opaque, addr); + default: + g_assert_not_reached(); + } +} + +static void m5206_mbar_writefn(void *opaque, hwaddr addr, + uint64_t value, unsigned size) +{ + switch (size) { + case 1: + m5206_mbar_writeb(opaque, addr, value); + break; + case 2: + m5206_mbar_writew(opaque, addr, value); + break; + case 4: + m5206_mbar_writel(opaque, addr, value); + break; + default: + g_assert_not_reached(); + } +} + static const MemoryRegionOps m5206_mbar_ops = { - .old_mmio = { - .read = { - m5206_mbar_readb, - m5206_mbar_readw, - m5206_mbar_readl, - }, - .write = { - m5206_mbar_writeb, - m5206_mbar_writew, - m5206_mbar_writel, - }, - }, + .read = m5206_mbar_readfn, + .write = m5206_mbar_writefn, + .valid.min_access_size = 1, + .valid.max_access_size = 4, .endianness = DEVICE_NATIVE_ENDIAN, }; From patchwork Fri Jun 1 14:12:20 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Peter Maydell X-Patchwork-Id: 137533 Delivered-To: patches@linaro.org Received: by 2002:a2e:9706:0:0:0:0:0 with SMTP id r6-v6csp992006lji; Fri, 1 Jun 2018 07:12:29 -0700 (PDT) X-Google-Smtp-Source: ADUXVKLkbzzP4NUjYgDxRaRkmLgia0pCSMgQQ+bh0j2CxFICHdYRKLBNz5aUHA8GfhOPbDF6A/T5 X-Received: by 2002:a63:8a4a:: with SMTP id y71-v6mr8765129pgd.291.1527862349197; Fri, 01 Jun 2018 07:12:29 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1527862349; cv=none; d=google.com; s=arc-20160816; b=mVfpV+1Cr0CtQ1kFV5IgPXe100mR0oKf/xx5DRfzo3RTyRbmNnMQPh+oEyWXmhR74X UVhpYfM56S+cxjQGT9bt6oaxdSnBZFBJikp86dVm8h5Zn4CrBpqq5N9YscbVVATpyT95 DqYIwe/m+bOH78Now+fwpdYXFyt72KjBWjdec+GJlW0Q1yY/aZTWD6EvHn8jUSTWX/q9 Cy4euytmqziERn6Du8/oQf/Jv0tWM17fCMSXdZR2L565+TVJevvOkvuElhjvmcbVjFiX HjqYC70iPtd30UnY7fiT+ROg85KL9xcCgnf5vgfSrGtF++O4WAP/TKY4BhzjIr/hYPmy OADA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=references:in-reply-to:message-id:date:subject:cc:to:from :arc-authentication-results; bh=WA714iFzBPdXYQ54fVa7m4yRaYKIfjIMUvvDplTPo9Y=; b=NZY4kZDldYOJ5zwBco+NXPGk2oKp/Ja05VPztmPqP3k7pnzZovYVFKt5PmeGrcbET6 aQMH9naQlYn8UnlrlwUE1IBhZxVYzRRV66c32vTxPzuXV8bH7D87oXTKZkxT4lBcyZaZ WaXTH/8uSxY7U2YsriPNfv6tXmi/+h2ii27+0iXAz/2EU81oVEzWMn2UTyQu7kVW1yIQ 6bYEtwychJkj/FRuSNtGh8QADYk9L5el05K8GenBpA7/viEk1O4NkCpgyuN7++I6clS0 7a2FEqnko2cmhK+vfA9v8IQA+LpKDOsqcnDfHTV4Y7mYXdtZD+x20VZPStTEOGOXZjnH DHhA== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of pm215@archaic.org.uk designates 2001:8b0:1d0::2 as permitted sender) smtp.mailfrom=pm215@archaic.org.uk; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from orth.archaic.org.uk (orth.archaic.org.uk. [2001:8b0:1d0::2]) by mx.google.com with ESMTPS id y13-v6si1889841pfc.302.2018.06.01.07.12.28 for (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Fri, 01 Jun 2018 07:12:28 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of pm215@archaic.org.uk designates 2001:8b0:1d0::2 as permitted sender) client-ip=2001:8b0:1d0::2; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of pm215@archaic.org.uk designates 2001:8b0:1d0::2 as permitted sender) smtp.mailfrom=pm215@archaic.org.uk; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from pm215 by orth.archaic.org.uk with local (Exim 4.89) (envelope-from ) id 1fOkn4-00042r-Ox; Fri, 01 Jun 2018 15:12:26 +0100 From: Peter Maydell To: qemu-devel@nongnu.org Cc: patches@linaro.org, Kevin Wolf , Max Reitz , "Michael S. Tsirkin" , Paolo Bonzini , Thomas Huth , Aurelien Jarno , qemu-block@nongnu.org, Yongbok Kim Subject: [PATCH 3/6] hw/block/pflash_cfi02: Convert away from old_mmio Date: Fri, 1 Jun 2018 15:12:20 +0100 Message-Id: <20180601141223.26630-4-peter.maydell@linaro.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180601141223.26630-1-peter.maydell@linaro.org> References: <20180601141223.26630-1-peter.maydell@linaro.org> Convert the pflash_cfi02 device away from using the old_mmio field of MemoryRegionOps. Signed-off-by: Peter Maydell --- hw/block/pflash_cfi02.c | 97 ++++++++--------------------------------- 1 file changed, 18 insertions(+), 79 deletions(-) -- 2.17.1 Acked-by: Max Reitz Reviewed-by: Philippe Mathieu-Daudé diff --git a/hw/block/pflash_cfi02.c b/hw/block/pflash_cfi02.c index 75d1ae1026..84d4584100 100644 --- a/hw/block/pflash_cfi02.c +++ b/hw/block/pflash_cfi02.c @@ -494,102 +494,41 @@ static void pflash_write (pflash_t *pfl, hwaddr offset, pfl->cmd = 0; } - -static uint32_t pflash_readb_be(void *opaque, hwaddr addr) +static uint64_t pflash_be_readfn(void *opaque, hwaddr addr, unsigned size) { - return pflash_read(opaque, addr, 1, 1); + return pflash_read(opaque, addr, size, 1); } -static uint32_t pflash_readb_le(void *opaque, hwaddr addr) +static void pflash_be_writefn(void *opaque, hwaddr addr, + uint64_t value, unsigned size) { - return pflash_read(opaque, addr, 1, 0); + pflash_write(opaque, addr, value, size, 1); } -static uint32_t pflash_readw_be(void *opaque, hwaddr addr) +static uint64_t pflash_le_readfn(void *opaque, hwaddr addr, unsigned size) { - pflash_t *pfl = opaque; - - return pflash_read(pfl, addr, 2, 1); + return pflash_read(opaque, addr, size, 0); } -static uint32_t pflash_readw_le(void *opaque, hwaddr addr) +static void pflash_le_writefn(void *opaque, hwaddr addr, + uint64_t value, unsigned size) { - pflash_t *pfl = opaque; - - return pflash_read(pfl, addr, 2, 0); -} - -static uint32_t pflash_readl_be(void *opaque, hwaddr addr) -{ - pflash_t *pfl = opaque; - - return pflash_read(pfl, addr, 4, 1); -} - -static uint32_t pflash_readl_le(void *opaque, hwaddr addr) -{ - pflash_t *pfl = opaque; - - return pflash_read(pfl, addr, 4, 0); -} - -static void pflash_writeb_be(void *opaque, hwaddr addr, - uint32_t value) -{ - pflash_write(opaque, addr, value, 1, 1); -} - -static void pflash_writeb_le(void *opaque, hwaddr addr, - uint32_t value) -{ - pflash_write(opaque, addr, value, 1, 0); -} - -static void pflash_writew_be(void *opaque, hwaddr addr, - uint32_t value) -{ - pflash_t *pfl = opaque; - - pflash_write(pfl, addr, value, 2, 1); -} - -static void pflash_writew_le(void *opaque, hwaddr addr, - uint32_t value) -{ - pflash_t *pfl = opaque; - - pflash_write(pfl, addr, value, 2, 0); -} - -static void pflash_writel_be(void *opaque, hwaddr addr, - uint32_t value) -{ - pflash_t *pfl = opaque; - - pflash_write(pfl, addr, value, 4, 1); -} - -static void pflash_writel_le(void *opaque, hwaddr addr, - uint32_t value) -{ - pflash_t *pfl = opaque; - - pflash_write(pfl, addr, value, 4, 0); + pflash_write(opaque, addr, value, size, 0); } static const MemoryRegionOps pflash_cfi02_ops_be = { - .old_mmio = { - .read = { pflash_readb_be, pflash_readw_be, pflash_readl_be, }, - .write = { pflash_writeb_be, pflash_writew_be, pflash_writel_be, }, - }, + .read = pflash_be_readfn, + .write = pflash_be_writefn, + .valid.min_access_size = 1, + .valid.max_access_size = 4, .endianness = DEVICE_NATIVE_ENDIAN, }; static const MemoryRegionOps pflash_cfi02_ops_le = { - .old_mmio = { - .read = { pflash_readb_le, pflash_readw_le, pflash_readl_le, }, - .write = { pflash_writeb_le, pflash_writew_le, pflash_writel_le, }, - }, + .read = pflash_le_readfn, + .write = pflash_le_writefn, + .valid.min_access_size = 1, + .valid.max_access_size = 4, .endianness = DEVICE_NATIVE_ENDIAN, }; From patchwork Fri Jun 1 14:12:21 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Peter Maydell X-Patchwork-Id: 137530 Delivered-To: patches@linaro.org Received: by 2002:a2e:9706:0:0:0:0:0 with SMTP id r6-v6csp991972lji; Fri, 1 Jun 2018 07:12:28 -0700 (PDT) X-Google-Smtp-Source: ADUXVKKI0JdivcPUXfCH+aVGFgf9NS8QjbY6S4sngrI9u/uTwWMx+aFeaRl4thGtDbFchQ1zxYhI X-Received: by 2002:a1c:9ec2:: with SMTP id h185-v6mr2956344wme.68.1527862348015; Fri, 01 Jun 2018 07:12:28 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1527862348; cv=none; d=google.com; s=arc-20160816; b=X9OPtjf76xa8PrsASSQ1h2N26Dv+xWA6FEgr/Y/h5TR2t0iIV2Y6t0W5pGkGCcEBSd bR4YLrLzr74enSKZz9NsP3x4yamwFFuL6qozdGj6gp0oeCvSs4iY2EUqBbJ3FJP7hF/i DN0TiE6iZR8p8fosdQUZKhK9TNVdESMEn4bFGrbf9MMk14YEP3HOXoj4SSEYIsdlPzJf Rp2m8IMZKrOZCi/9H89xh+H7QALeo3YgsAfVRTN8c3NvOTJfGq9Uab9aIVXVBs5U2xJ3 ZWcSx5itoc1ou4Pam3JIJfC1eNsR9KTjgPxYeT1yhstfbc80IA3oK+g0FpTIJxhT3Dig Nu+g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=references:in-reply-to:message-id:date:subject:cc:to:from :arc-authentication-results; bh=efv/44YN/WI64ZzTdEsBSzfL4nChTvmbkVXvhlNLho0=; b=Zi8UJkzgdzkAuEAJPWGPFjVD/pT7Ynkpy7ROxLGj9V42UhY1rBw8Gtv7HN8zCDz63b Er/N+rBv10WjuwdnA/RHrhjTjc6xfe5ufmjOb3u46szy/waVBcWICT+o9gD3YTP76Qa/ szypQO2mVGBx5Q5AWW5LWkmaaczoDdRWSTDw29VZpL2LKSpX/9XU9HecOLURKfQEqRzh NXSYggm1BotVYQAAL9B//uGwxG7yay84Fhqx6NPom+thf78ZlZh1MkTIFogJAv59d5qS TY2R3Zs5BRB3GvYLYDuhcpTk9Og8y+hD2BUq7aqWfW/ZNXNeRPA1VHCHgg0BjKvJ8zwI 46+Q== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of pm215@archaic.org.uk designates 2001:8b0:1d0::2 as permitted sender) smtp.mailfrom=pm215@archaic.org.uk; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from orth.archaic.org.uk (orth.archaic.org.uk. [2001:8b0:1d0::2]) by mx.google.com with ESMTPS id h9-v6si5643222wrp.127.2018.06.01.07.12.27 for (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Fri, 01 Jun 2018 07:12:27 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of pm215@archaic.org.uk designates 2001:8b0:1d0::2 as permitted sender) client-ip=2001:8b0:1d0::2; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of pm215@archaic.org.uk designates 2001:8b0:1d0::2 as permitted sender) smtp.mailfrom=pm215@archaic.org.uk; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from pm215 by orth.archaic.org.uk with local (Exim 4.89) (envelope-from ) id 1fOkn5-000439-FE; Fri, 01 Jun 2018 15:12:27 +0100 From: Peter Maydell To: qemu-devel@nongnu.org Cc: patches@linaro.org, Kevin Wolf , Max Reitz , "Michael S. Tsirkin" , Paolo Bonzini , Thomas Huth , Aurelien Jarno , qemu-block@nongnu.org, Yongbok Kim Subject: [PATCH 4/6] hw/watchdog/wdt_i6300esb: Convert away from old_mmio Date: Fri, 1 Jun 2018 15:12:21 +0100 Message-Id: <20180601141223.26630-5-peter.maydell@linaro.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180601141223.26630-1-peter.maydell@linaro.org> References: <20180601141223.26630-1-peter.maydell@linaro.org> Convert the wdt_i6300esb device away from using the old_mmio field of MemoryRegionOps. Signed-off-by: Peter Maydell --- hw/watchdog/wdt_i6300esb.c | 48 ++++++++++++++++++++++++++++---------- 1 file changed, 36 insertions(+), 12 deletions(-) -- 2.17.1 Reviewed-by: Philippe Mathieu-Daudé diff --git a/hw/watchdog/wdt_i6300esb.c b/hw/watchdog/wdt_i6300esb.c index e596b0804d..7b59469888 100644 --- a/hw/watchdog/wdt_i6300esb.c +++ b/hw/watchdog/wdt_i6300esb.c @@ -361,19 +361,43 @@ static void i6300esb_mem_writel(void *vp, hwaddr addr, uint32_t val) } } +static uint64_t i6300esb_mem_readfn(void *opaque, hwaddr addr, unsigned size) +{ + switch (size) { + case 1: + return i6300esb_mem_readb(opaque, addr); + case 2: + return i6300esb_mem_readw(opaque, addr); + case 4: + return i6300esb_mem_readl(opaque, addr); + default: + g_assert_not_reached(); + } +} + +static void i6300esb_mem_writefn(void *opaque, hwaddr addr, + uint64_t value, unsigned size) +{ + switch (size) { + case 1: + i6300esb_mem_writeb(opaque, addr, value); + break; + case 2: + i6300esb_mem_writew(opaque, addr, value); + break; + case 4: + i6300esb_mem_writel(opaque, addr, value); + break; + default: + g_assert_not_reached(); + } +} + static const MemoryRegionOps i6300esb_ops = { - .old_mmio = { - .read = { - i6300esb_mem_readb, - i6300esb_mem_readw, - i6300esb_mem_readl, - }, - .write = { - i6300esb_mem_writeb, - i6300esb_mem_writew, - i6300esb_mem_writel, - }, - }, + .read = i6300esb_mem_readfn, + .write = i6300esb_mem_writefn, + .valid.min_access_size = 1, + .valid.max_access_size = 4, .endianness = DEVICE_LITTLE_ENDIAN, }; From patchwork Fri Jun 1 14:12:22 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Peter Maydell X-Patchwork-Id: 137531 Delivered-To: patches@linaro.org Received: by 2002:a2e:9706:0:0:0:0:0 with SMTP id r6-v6csp991989lji; Fri, 1 Jun 2018 07:12:28 -0700 (PDT) X-Google-Smtp-Source: ADUXVKIyMTeii1ZJ/9AUVqjHF6q+KlBBc9JO3gbGgqoZvmhxIYn9mMtuLkmbu3S4cJu3/GnD0n8a X-Received: by 2002:a1c:690f:: with SMTP id e15-v6mr2689465wmc.34.1527862348714; Fri, 01 Jun 2018 07:12:28 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1527862348; cv=none; d=google.com; s=arc-20160816; b=rbXFEEVkArhQ60oLc3HCVulfPSuYiyvofQ9koGb2wRfn/eKMxhy/iJfG8M8MTjT4wQ 8lNGY6QxpJa3XJ2aGoHcsAMCcMK0JAmSMzW/niJJtmbnxxGmyLhslNcWAutYkhSjA8lb KSJD32xrDCncIrCXQ75STfkxvG6B+Huyccg9vAgsa5tMp/3Ay2N4l8LseiDnSTd7w9Cw iNCA2GqIVMkd8QbpF1mLC2kOERb0yS2eVe0jSmKLDJBTDiHbzUVhRRSH24nh7az4viPz YqUtr4imIh/GNw0S+IeB0WRbuJBk3Yq1lO62cdkT5G9FeHWyQ1pYYPc/kOXkyNlVpO0V ugLA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=references:in-reply-to:message-id:date:subject:cc:to:from :arc-authentication-results; bh=GmWB4rqY1BE6OM+Mwajf65F/yK7lQPORLvYh2UXcg3s=; b=NibLotS/J3K6tR41PX2rKSupVAbfAB3UB4TX5tLD5Qq620Cze6K0RDTE2iMvcZMQHL ayVxvRTxWYUhc04wS5S3OU9I1RQ4v8V+O00PO//Mbb1LxxLXOOTfAQ0RM/fSs6yhSxnb fcJUeBGbsZsRpdUa/bayEGGMMnLaMjEsxlaXnKGZ+vn2y83Wf/plbbAbGbQ4HEVlaZWc /t6iYi9g+tV9YMc1Vi305TPfXJjCY1HsSbGJeA9JSaplsm114OohgPYT1caGne4qtYki IQbr6CmX8RYWJ+7w177bfHCZvXOECAa8cC436xLg5g5uDf3jZiAltdNjO/geRD+mSijU uypQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of pm215@archaic.org.uk designates 2001:8b0:1d0::2 as permitted sender) smtp.mailfrom=pm215@archaic.org.uk; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from orth.archaic.org.uk (orth.archaic.org.uk. [2001:8b0:1d0::2]) by mx.google.com with ESMTPS id 184-v6si1582206wmg.214.2018.06.01.07.12.28 for (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Fri, 01 Jun 2018 07:12:28 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of pm215@archaic.org.uk designates 2001:8b0:1d0::2 as permitted sender) client-ip=2001:8b0:1d0::2; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of pm215@archaic.org.uk designates 2001:8b0:1d0::2 as permitted sender) smtp.mailfrom=pm215@archaic.org.uk; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from pm215 by orth.archaic.org.uk with local (Exim 4.89) (envelope-from ) id 1fOkn6-00043V-6L; Fri, 01 Jun 2018 15:12:28 +0100 From: Peter Maydell To: qemu-devel@nongnu.org Cc: patches@linaro.org, Kevin Wolf , Max Reitz , "Michael S. Tsirkin" , Paolo Bonzini , Thomas Huth , Aurelien Jarno , qemu-block@nongnu.org, Yongbok Kim Subject: [PATCH 5/6] hw/input/pckbd: Convert away from old_mmio Date: Fri, 1 Jun 2018 15:12:22 +0100 Message-Id: <20180601141223.26630-6-peter.maydell@linaro.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180601141223.26630-1-peter.maydell@linaro.org> References: <20180601141223.26630-1-peter.maydell@linaro.org> Convert the pckbd device away from using the old_mmio field of MemoryRegionOps. This change only affects the memory-mapped variant of the i8042, which is used by the Unicore32 'puv3' board and the MIPS Jazz boards 'magnum' and 'pica61'. Signed-off-by: Peter Maydell --- hw/input/pckbd.c | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) -- 2.17.1 Reviewed-by: Philippe Mathieu-Daudé diff --git a/hw/input/pckbd.c b/hw/input/pckbd.c index f17f18e51b..f33e3fc63d 100644 --- a/hw/input/pckbd.c +++ b/hw/input/pckbd.c @@ -434,7 +434,7 @@ static const VMStateDescription vmstate_kbd = { }; /* Memory mapped interface */ -static uint32_t kbd_mm_readb (void *opaque, hwaddr addr) +static uint64_t kbd_mm_readfn(void *opaque, hwaddr addr, unsigned size) { KBDState *s = opaque; @@ -444,7 +444,8 @@ static uint32_t kbd_mm_readb (void *opaque, hwaddr addr) return kbd_read_data(s, 0, 1) & 0xff; } -static void kbd_mm_writeb (void *opaque, hwaddr addr, uint32_t value) +static void kbd_mm_writefn(void *opaque, hwaddr addr, + uint64_t value, unsigned size) { KBDState *s = opaque; @@ -454,12 +455,13 @@ static void kbd_mm_writeb (void *opaque, hwaddr addr, uint32_t value) kbd_write_data(s, 0, value & 0xff, 1); } + static const MemoryRegionOps i8042_mmio_ops = { + .read = kbd_mm_readfn, + .write = kbd_mm_writefn, + .valid.min_access_size = 1, + .valid.max_access_size = 4, .endianness = DEVICE_NATIVE_ENDIAN, - .old_mmio = { - .read = { kbd_mm_readb, kbd_mm_readb, kbd_mm_readb }, - .write = { kbd_mm_writeb, kbd_mm_writeb, kbd_mm_writeb }, - }, }; void i8042_mm_init(qemu_irq kbd_irq, qemu_irq mouse_irq, From patchwork Fri Jun 1 14:12:23 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Peter Maydell X-Patchwork-Id: 137532 Delivered-To: patches@linaro.org Received: by 2002:a2e:9706:0:0:0:0:0 with SMTP id r6-v6csp992015lji; Fri, 1 Jun 2018 07:12:29 -0700 (PDT) X-Google-Smtp-Source: ADUXVKLd9Fjs8Ut68sH9LQpzCuNt/j4bnCv3EcznFZQcG4YgNkSj8XDnSDBR+oFwEu5WUjpYAnO0 X-Received: by 2002:adf:dd8c:: with SMTP id x12-v6mr9739235wrl.212.1527862349376; Fri, 01 Jun 2018 07:12:29 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1527862349; cv=none; d=google.com; s=arc-20160816; b=ekSXiti7BlyQ2lai8lv8ie5kFlkUTmoh4IZeXPQiNirhm4lX/rXZmdhW0yeg+iTgn0 nIRuJJnW/ImzwH7GQ6jKZ9XZ1hBpkJAXLQgBjAo52ZjN7vsVzEaAf/Hrk71nzvziK+cb Ewzv9WyDzaURTyacAOMOrmpDu+VtPuCPBQPUieQMOTS8LGw6sGidcBrEqyXI0fGzEKID qDF0B2vayKaBlsT/5JN17E7GEunB66HfA4hWGp+B5wBBEgk1lir7Nlkw8krEh/M3kQVr aB+Ew4IdqyPt3J/hzcrlcoNhzJOPszm4d/7h+8REyqA2IE/xaPq/ojvmdUrHQqD7FPOX nWIg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=references:in-reply-to:message-id:date:subject:cc:to:from :arc-authentication-results; bh=Yyyz7M2s/zRocVSpcrTueIs2tGfn4soddIOtQX/p0Ow=; b=0IQTtzI+eb+fiCP8DTQpMx93C+r8wHzBrNybD3pQY0rtjOcOJuSgQof70al98+ZWzK ymsdF04CEFqeODvAdlNDwoBGh7AFFxC6ppfmXqpobivFUnOcTc4aXeHapbAONDJrHA/x H0gEuDKPQGionSHC/VLAmxQFeMyyylDlEctEf30tdDbHYO7PT0seKyKnIQ1hE5ZgJDbr igLlW4vzEwu2+jBMLxX0ZCK8f+zuiZpa+IUYABgUmyjTySSLHG/lC5RrtGFKRAMYZhnZ 79j17dxPfNI2MQn1w7yjd9nz6BIn804MlffzjFEOlHFKU4RnqXaCweuT0CmxYpsWGbAr z1bQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of pm215@archaic.org.uk designates 2001:8b0:1d0::2 as permitted sender) smtp.mailfrom=pm215@archaic.org.uk; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from orth.archaic.org.uk (orth.archaic.org.uk. [2001:8b0:1d0::2]) by mx.google.com with ESMTPS id 134-v6si1583750wmp.229.2018.06.01.07.12.29 for (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Fri, 01 Jun 2018 07:12:29 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of pm215@archaic.org.uk designates 2001:8b0:1d0::2 as permitted sender) client-ip=2001:8b0:1d0::2; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of pm215@archaic.org.uk designates 2001:8b0:1d0::2 as permitted sender) smtp.mailfrom=pm215@archaic.org.uk; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from pm215 by orth.archaic.org.uk with local (Exim 4.89) (envelope-from ) id 1fOkn6-000446-Th; Fri, 01 Jun 2018 15:12:28 +0100 From: Peter Maydell To: qemu-devel@nongnu.org Cc: patches@linaro.org, Kevin Wolf , Max Reitz , "Michael S. Tsirkin" , Paolo Bonzini , Thomas Huth , Aurelien Jarno , qemu-block@nongnu.org, Yongbok Kim Subject: [PATCH 6/6] hw/char/parallel: Convert away from old_mmio Date: Fri, 1 Jun 2018 15:12:23 +0100 Message-Id: <20180601141223.26630-7-peter.maydell@linaro.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180601141223.26630-1-peter.maydell@linaro.org> References: <20180601141223.26630-1-peter.maydell@linaro.org> Convert the parallel device away from using the old_mmio field of MemoryRegionOps. This change only affects the memory-mapped variant, which is used by the MIPS Jazz boards 'magnum' and 'pica61'. Signed-off-by: Peter Maydell --- hw/char/parallel.c | 50 ++++++++++------------------------------------ 1 file changed, 11 insertions(+), 39 deletions(-) -- 2.17.1 Reviewed-by: Philippe Mathieu-Daudé diff --git a/hw/char/parallel.c b/hw/char/parallel.c index 1542d62201..35748e6c1b 100644 --- a/hw/char/parallel.c +++ b/hw/char/parallel.c @@ -554,56 +554,28 @@ static void parallel_isa_realizefn(DeviceState *dev, Error **errp) } /* Memory mapped interface */ -static uint32_t parallel_mm_readb (void *opaque, hwaddr addr) +static uint64_t parallel_mm_readfn(void *opaque, hwaddr addr, unsigned size) { ParallelState *s = opaque; - return parallel_ioport_read_sw(s, addr >> s->it_shift) & 0xFF; + return parallel_ioport_read_sw(s, addr >> s->it_shift) & + MAKE_64BIT_MASK(0, size * 8); } -static void parallel_mm_writeb (void *opaque, - hwaddr addr, uint32_t value) +static void parallel_mm_writefn(void *opaque, hwaddr addr, + uint64_t value, unsigned size) { ParallelState *s = opaque; - parallel_ioport_write_sw(s, addr >> s->it_shift, value & 0xFF); -} - -static uint32_t parallel_mm_readw (void *opaque, hwaddr addr) -{ - ParallelState *s = opaque; - - return parallel_ioport_read_sw(s, addr >> s->it_shift) & 0xFFFF; -} - -static void parallel_mm_writew (void *opaque, - hwaddr addr, uint32_t value) -{ - ParallelState *s = opaque; - - parallel_ioport_write_sw(s, addr >> s->it_shift, value & 0xFFFF); -} - -static uint32_t parallel_mm_readl (void *opaque, hwaddr addr) -{ - ParallelState *s = opaque; - - return parallel_ioport_read_sw(s, addr >> s->it_shift); -} - -static void parallel_mm_writel (void *opaque, - hwaddr addr, uint32_t value) -{ - ParallelState *s = opaque; - - parallel_ioport_write_sw(s, addr >> s->it_shift, value); + parallel_ioport_write_sw(s, addr >> s->it_shift, + value & MAKE_64BIT_MASK(0, size * 8)); } static const MemoryRegionOps parallel_mm_ops = { - .old_mmio = { - .read = { parallel_mm_readb, parallel_mm_readw, parallel_mm_readl }, - .write = { parallel_mm_writeb, parallel_mm_writew, parallel_mm_writel }, - }, + .read = parallel_mm_readfn, + .write = parallel_mm_writefn, + .valid.min_access_size = 1, + .valid.max_access_size = 4, .endianness = DEVICE_NATIVE_ENDIAN, };