--- /dev/null
+Return-path: <libre-riscv-dev-bounces@lists.libre-riscv.org>
+Envelope-to: publicinbox@libre-riscv.org
+Delivery-date: Tue, 21 Apr 2020 22:19:57 +0100
+Received: from localhost ([::1] helo=libre-riscv.org)
+ by libre-soc.org with esmtp (Exim 4.89)
+ (envelope-from <libre-riscv-dev-bounces@lists.libre-riscv.org>)
+ id 1jR0JA-0005uV-Ds; Tue, 21 Apr 2020 22:19:56 +0100
+Received: from localhost ([127.0.0.1] helo=bugs.libre-soc.org)
+ by libre-soc.org with esmtp (Exim 4.89)
+ (envelope-from <bugzilla-daemon@libre-soc.org>) id 1jR0J8-0005uF-UF
+ for libre-riscv-dev@lists.libre-riscv.org; Tue, 21 Apr 2020 22:19:54 +0100
+From: bugzilla-daemon@libre-soc.org
+To: libre-riscv-dev@lists.libre-riscv.org
+Date: Tue, 21 Apr 2020 21:19:55 +0000
+X-Bugzilla-Reason: CC
+X-Bugzilla-Type: changed
+X-Bugzilla-Watch-Reason: None
+X-Bugzilla-Product: Libre-SOC's first SoC
+X-Bugzilla-Component: Hardware Layout
+X-Bugzilla-Version: unspecified
+X-Bugzilla-Keywords:
+X-Bugzilla-Severity: enhancement
+X-Bugzilla-Who: lkcl@lkcl.net
+X-Bugzilla-Status: CONFIRMED
+X-Bugzilla-Resolution:
+X-Bugzilla-Priority: ---
+X-Bugzilla-Assigned-To: tanner.of.kha@gmail.com
+X-Bugzilla-Flags:
+X-Bugzilla-Changed-Fields:
+Message-ID: <bug-217-13-yKwCWBam6U@https.bugs.libre-soc.org/>
+In-Reply-To: <bug-217-13@https.bugs.libre-soc.org/>
+References: <bug-217-13@https.bugs.libre-soc.org/>
+X-Bugzilla-URL: https://bugs.libre-soc.org/
+Auto-Submitted: auto-generated
+MIME-Version: 1.0
+Subject: [libre-riscv-dev] [Bug 217] create a "ring" system which allows pad
+ locations to be specified conveniently
+X-BeenThere: libre-riscv-dev@lists.libre-riscv.org
+X-Mailman-Version: 2.1.23
+Precedence: list
+List-Id: Libre-RISCV General Development
+ <libre-riscv-dev.lists.libre-riscv.org>
+List-Unsubscribe: <http://lists.libre-riscv.org/mailman/options/libre-riscv-dev>,
+ <mailto:libre-riscv-dev-request@lists.libre-riscv.org?subject=unsubscribe>
+List-Archive: <http://lists.libre-riscv.org/pipermail/libre-riscv-dev/>
+List-Post: <mailto:libre-riscv-dev@lists.libre-riscv.org>
+List-Help: <mailto:libre-riscv-dev-request@lists.libre-riscv.org?subject=help>
+List-Subscribe: <http://lists.libre-riscv.org/mailman/listinfo/libre-riscv-dev>,
+ <mailto:libre-riscv-dev-request@lists.libre-riscv.org?subject=subscribe>
+Reply-To: Libre-RISCV General Development
+ <libre-riscv-dev@lists.libre-riscv.org>
+Content-Type: text/plain; charset="utf-8"
+Content-Transfer-Encoding: base64
+Errors-To: libre-riscv-dev-bounces@lists.libre-riscv.org
+Sender: "libre-riscv-dev" <libre-riscv-dev-bounces@lists.libre-riscv.org>
+
+aHR0cHM6Ly9idWdzLmxpYnJlLXNvYy5vcmcvc2hvd19idWcuY2dpP2lkPTIxNwoKLS0tIENvbW1l
+bnQgIzg1IGZyb20gTHVrZSBLZW5uZXRoIENhc3NvbiBMZWlnaHRvbiA8bGtjbEBsa2NsLm5ldD4g
+LS0tCm9rIGkgaGF2ZSByZXBsYWNlZCBBTFUxNi5wbGFjZSgpIHdpdGggYSBuZXcgdmVyc2lvbi4K
+CmNvbW1pdCA4M2Y5MTgxMDdiYjI5ZjFhYjNlZjA4ZWFlNWMxNjI0ZDAzNzYxNzliCkF1dGhvcjog
+THVrZSBLZW5uZXRoIENhc3NvbiBMZWlnaHRvbiA8bGtjbEBsa2NsLm5ldD4KRGF0ZTogICBUdWUg
+QXByIDIxIDIxOjA1OjE4IDIwMjAgKzAwMDAKCiAgICBhdXRvbWF0aWNhbGx5IGxvY2F0ZWQgdGhl
+IGpvaW5pbmcgY2VsbHMgYmV0d2VlbiBhZGQgYW5kIHN1YgoKCnRoaXMgbmV3IHZlcnNpb24gbm8g
+bG9uZ2VyIGV4cGxpY2l0bHkgcmVnZXhwIHBhdHRlcm4tc2VhcmNoZXMgZm9yCnRoZSBjZWxscyBu
+YW1lZCBubXgyLCBubzIgYW5kIHNmZjEKCmluc3RlYWQgaXQgdXNlcyB0aGUgbmV3IGZ1bmN0aW9u
+LCBjYWxsaW5nIGdldF9uZXRfY29ubmVjdGlvbnMoIm8oJWQpIiAlIGkpLApmb3IgYWxsIGkgaW4g
+cmFuZ2UoMTYpLgoKaXQgcHJvZHVjZXMgLSBmaW5kcyAtIHRoZSBleGFjdCBzYW1lIHRocmVlIGNl
+bGxzIGFzIHRoZSByZWdleHAgcGF0dGVybgpzZWFyY2ggQUxVMTYubWF0Y2hfaW5zdGFuY2UoKQoK
+aG93ZXZlciB1bmxpa2UgbWF0Y2hfaW5zdGFuY2UoKSwgaWYgdGhlIHlvc3lzL0FCQyBjaGFuZ2Vz
+LCBwcm9kdWNlcwpjb21wbGV0ZWx5IGRpZmZlcmVuY2UgY2VsbHMsIGl0IHdpbGwgKnN0aWxsIGZp
+bmQgdGhlbSBhbGwqLgoKbm93IHdlIG5lZWQgc3RlcCAoMikKCnN0ZXAgKDIpIGlzOgoKKiBnaXZl
+biB0aGUgKGFyYml0cmFyeSkgbGlzdCBvZiBpbnN0YW5jZXMsIGF1dG8tcGxhY2UgdGhlbSB3aXRo
+aW4gYSBzZXQKICBib3guCgp5b3UgY2FuIHNlZSBpIGhhdmUgc3RhcnRlZCB0byB0cnkgdGhhdCwg
+YW5kIGl0IHByb2R1Y2VzIGEgc2VnZmF1bHQuCgphdHRlbXB0aW5nIHRvIGNhbGwgRXRlc2lhbi5j
+cmVhdGUoaW5zdC5nZXRDZWxsKCkpIGRvZXMgbm90IHdvcmsuCgphdHRlbXB0aW5nIHRvIGNhbGwg
+RXRlc2lhbi5jcmVhdGUoaW5zdC5nZXRNYXN0ZXJDZWxsKCkpIGRvZXMgbm90IHdvcmsuCgphdHRl
+bXB0aW5nIHRvIGNhbGwgRXRlc2lhbi5jcmVhdGUoaW5zdCkgc2VnZmF1bHRzLgoKdGhlIG9ubHkg
+b3RoZXIgdHJpY2sgaSBjYW4gdGhpbmsgb2YgaXMgdG8gTElURVJBTExZIHJlbW92ZSB0aGVtLApw
+cm9ncmFtbWF0aWNhbGx5LCBmcm9tIGFsdTE2LCBhbmQgbW92ZSB0aGVtIHRvIGEgbmV3IChmYWtl
+KSBDZWxsLgoKdGltZXMgMTYuCgp0aGlzIHdpbGwgYmUgZXh0cmVtZWx5IHRlZGlvdXMgYmVjYXVz
+ZSBpdCByZXF1aXJlcyBtb3ZpbmcgdGhlIG5ldGxpc3RzCmFzIHdlbGwuCgoKCndoYXQgaXMgKnJl
+YWxseSogbmVlZGVkIGlzLCB0byBiZSBhYmxlIHRvIHBhc3MgYSAqKkxJU1QqKiBvZiBDZWxscwp0
+byBFdGVzaWFuLmNyZWF0ZSgpLiAgKGFjdHVhbGx5LCBhIGxpc3Qgb2YgSW5zdGFuY2VzKQoKYW5k
+IHRvIGJlIGFibGUgdG8gaGF2ZSBFdGVzaWFuRW5naW5lIGNvbnN0cnVjdG9yIHRha2UgdGhhdCAq
+KkxJU1QqKgpvZiBJbnN0YW5jZXMKCmFuZCB0byBwZXJmb3JtIHRoZSBwbGFjZSBvbiB0aGF0ICoq
+TElTVCoqIG9mIEluc3RhbmNlcy4KCi0tIApZb3UgYXJlIHJlY2VpdmluZyB0aGlzIG1haWwgYmVj
+YXVzZToKWW91IGFyZSBvbiB0aGUgQ0MgbGlzdCBmb3IgdGhlIGJ1Zy4KX19fX19fX19fX19fX19f
+X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KbGlicmUtcmlzY3YtZGV2IG1haWxpbmcg
+bGlzdApsaWJyZS1yaXNjdi1kZXZAbGlzdHMubGlicmUtcmlzY3Yub3JnCmh0dHA6Ly9saXN0cy5s
+aWJyZS1yaXNjdi5vcmcvbWFpbG1hbi9saXN0aW5mby9saWJyZS1yaXNjdi1kZXYK
+