pinmux.git
23 months agoFixed print formatting
Andrey Miroshnikov [Tue, 31 May 2022 14:01:10 +0000 (15:01 +0100)]
Fixed print formatting

23 months agoImproved iomux logic based on lessons from gpio block. Test ordered or randomised.
Andrey Miroshnikov [Tue, 31 May 2022 13:11:51 +0000 (14:11 +0100)]
Improved iomux logic based on lessons from gpio block. Test ordered or randomised.

23 months agoAdded granuality assert (for now)
Andrey Miroshnikov [Tue, 24 May 2022 21:01:54 +0000 (22:01 +0100)]
Added granuality assert (for now)

23 months agoFixed the we usage as explained by Luke in bug #762 c#26
Andrey Miroshnikov [Tue, 24 May 2022 14:26:36 +0000 (14:26 +0000)]
Fixed the we usage as explained by Luke in bug #762 c#26

23 months agoAdded the driver changes to support WB sel control, also code is more flexible if...
Andrey Miroshnikov [Mon, 23 May 2022 21:42:48 +0000 (21:42 +0000)]
Added the driver changes to support WB sel control, also code is more flexible if granuality changes

23 months agoChanged ack behaviour for rd (1 clk) and wr (2 clk)
Andrey Miroshnikov [Mon, 23 May 2022 18:21:21 +0000 (18:21 +0000)]
Changed ack behaviour for rd (1 clk) and wr (2 clk)

23 months agoRemoved redundant use of Array()
Andrey Miroshnikov [Sun, 22 May 2022 23:11:37 +0000 (23:11 +0000)]
Removed redundant use of Array()

23 months agoFinally put together fix based on Luke's suggestion in bug #762 c#18...took a bit...
Andrey Miroshnikov [Sat, 21 May 2022 22:56:49 +0000 (22:56 +0000)]
Finally put together fix based on Luke's suggestion in bug #762 c#18...took a bit more time to work out Layout, 1-clk delay required.

2 years agoClean up gpio code
Andrey Miroshnikov [Tue, 10 May 2022 14:21:05 +0000 (15:21 +0100)]
Clean up gpio code

2 years agoFixed the rd transaction, had to delay ack
Andrey Miroshnikov [Tue, 10 May 2022 12:51:01 +0000 (13:51 +0100)]
Fixed the rd transaction, had to delay ack

2 years agoreplaced duplicate code with functions, almost working
Andrey Miroshnikov [Sat, 7 May 2022 22:39:38 +0000 (23:39 +0100)]
replaced duplicate code with functions, almost working

2 years agoSimplified rd bus connection, almost working, need to debug
Andrey Miroshnikov [Tue, 26 Apr 2022 23:49:39 +0000 (00:49 +0100)]
Simplified rd bus connection, almost working, need to debug

2 years agoImplemented fix suggested by luke, bug 762 c#16, not quite working yet
Andrey Miroshnikov [Fri, 22 Apr 2022 13:16:02 +0000 (14:16 +0100)]
Implemented fix suggested by luke, bug 762 c#16, not quite working yet

2 years agoMultibus connection to different GPIOs fixed for read and write, however need to...
Andrey Miroshnikov [Tue, 5 Apr 2022 23:07:34 +0000 (00:07 +0100)]
Multibus connection to different GPIOs fixed for read and write, however need to debug when awake

2 years agoAdded some gpio logic, still need reading implemented
Andrey Miroshnikov [Tue, 22 Mar 2022 23:37:35 +0000 (23:37 +0000)]
Added some gpio logic, still need reading implemented

2 years agoFixed GPIO block issue that accessed out of bounds Array()
Andrey Miroshnikov [Mon, 21 Mar 2022 00:03:58 +0000 (00:03 +0000)]
Fixed GPIO block issue that accessed out of bounds Array()

2 years agoForgot to add m.d.comb... Now need to debug gpio
Andrey Miroshnikov [Sat, 12 Mar 2022 22:38:40 +0000 (22:38 +0000)]
Forgot to add m.d.comb... Now need to debug gpio

2 years agoAdded signals to export for il
Andrey Miroshnikov [Thu, 10 Mar 2022 23:38:02 +0000 (23:38 +0000)]
Added signals to export for il

2 years agotop level signals not showing up yet
Andrey Miroshnikov [Thu, 10 Mar 2022 23:37:32 +0000 (23:37 +0000)]
top level signals not showing up yet

2 years agoFixed issue with single gpio not working
Andrey Miroshnikov [Wed, 9 Mar 2022 17:28:20 +0000 (17:28 +0000)]
Fixed issue with single gpio not working

2 years agocreated file for 1-pin pinmux, not working yet
Andrey Miroshnikov [Wed, 9 Mar 2022 00:13:51 +0000 (00:13 +0000)]
created file for 1-pin pinmux, not working yet

2 years agocleanup
Andrey Miroshnikov [Wed, 9 Mar 2022 00:13:17 +0000 (00:13 +0000)]
cleanup

2 years agoConverted to comb logic
Andrey Miroshnikov [Tue, 8 Mar 2022 19:07:53 +0000 (19:07 +0000)]
Converted to comb logic

2 years agoAdded basic toggle test. Need to convert to comb domain, too much waiting going on...
Andrey Miroshnikov [Tue, 8 Mar 2022 15:52:22 +0000 (15:52 +0000)]
Added basic toggle test. Need to convert to comb domain, too much waiting going on with clk transitions...

2 years agosingle i/o/oe pin IOMux working (test needs improving).
Andrey Miroshnikov [Mon, 7 Mar 2022 23:24:10 +0000 (23:24 +0000)]
single i/o/oe pin IOMux working (test needs improving).

2 years agoFinally got iomux test running (but block not working yet)
Andrey Miroshnikov [Wed, 2 Mar 2022 23:14:45 +0000 (23:14 +0000)]
Finally got iomux test running (but block not working yet)

2 years agoAdded rd/wr methods to GPIO manager
Andrey Miroshnikov [Tue, 22 Feb 2022 23:58:37 +0000 (23:58 +0000)]
Added rd/wr methods to GPIO manager

2 years agoAdded gtkw doc generation to simple gpio block test
Andrey Miroshnikov [Wed, 16 Feb 2022 22:25:18 +0000 (22:25 +0000)]
Added gtkw doc generation to simple gpio block test

2 years agoAdded GTKWave doc generation
Andrey Miroshnikov [Mon, 14 Feb 2022 20:45:09 +0000 (20:45 +0000)]
Added GTKWave doc generation

2 years agoAdded reverse arg fix, tests working
Andrey Miroshnikov [Thu, 10 Feb 2022 15:56:57 +0000 (15:56 +0000)]
Added reverse arg fix, tests working

2 years agoOriginal 4 JTAG test cases working, woohoo!
Andrey Miroshnikov [Wed, 9 Feb 2022 18:27:49 +0000 (18:27 +0000)]
Original 4 JTAG test cases working, woohoo!

2 years agoGetting closer, now playing with result printing for test comparison
Andrey Miroshnikov [Tue, 8 Feb 2022 23:35:23 +0000 (23:35 +0000)]
Getting closer, now playing with result printing for test comparison

2 years agoMade progress in figuring out JTAG. Getting TDO, still need more testing
Andrey Miroshnikov [Tue, 8 Feb 2022 00:10:28 +0000 (00:10 +0000)]
Made progress in figuring out JTAG. Getting TDO, still need more testing

2 years agoCreated GPIOManager class for tracking config state, setting/reading configuration.
Andrey Miroshnikov [Thu, 3 Feb 2022 23:40:13 +0000 (23:40 +0000)]
Created GPIOManager class for tracking config state, setting/reading configuration.

2 years agoCreated gpio manager class for easier control of individual and group gpios
Andrey Miroshnikov [Tue, 1 Feb 2022 21:46:57 +0000 (21:46 +0000)]
Created gpio manager class for easier control of individual and group gpios

2 years agoTrying to debug the TDO issue with JTAG test
Andrey Miroshnikov [Sun, 30 Jan 2022 17:01:06 +0000 (17:01 +0000)]
Trying to debug the TDO issue with JTAG test

2 years agoReplaced hard-coded config shifts with auto-generated dict from the csrbus layout...
Andrey Miroshnikov [Fri, 28 Jan 2022 22:43:53 +0000 (22:43 +0000)]
Replaced hard-coded config shifts with auto-generated dict from the csrbus layout. Removed redundant signals replaced by gpio_ports. Multi-row addressing not working yet.

2 years agoAdded WB data wordsize param, added gpio port layout
Andrey Miroshnikov [Thu, 27 Jan 2022 00:01:38 +0000 (00:01 +0000)]
Added WB data wordsize param, added gpio port layout

2 years agoAdded prefix to layout, modifyingfunctions for testing
Andrey Miroshnikov [Tue, 25 Jan 2022 00:32:19 +0000 (00:32 +0000)]
Added prefix to layout, modifyingfunctions for testing

2 years agomulti-gpio config working, needs further testing.
Andrey Miroshnikov [Fri, 21 Jan 2022 23:51:12 +0000 (23:51 +0000)]
multi-gpio config working, needs further testing.

2 years agoFixed gpio_addr. Output/input asserts working. Need clean up and documenting
Andrey Miroshnikov [Wed, 19 Jan 2022 20:55:45 +0000 (20:55 +0000)]
Fixed gpio_addr. Output/input asserts working. Need clean up and documenting

2 years agoFixed issue with out/in not updating io. Now issue with address resetting...
Andrey Miroshnikov [Wed, 19 Jan 2022 00:04:12 +0000 (00:04 +0000)]
Fixed issue with out/in not updating io. Now issue with address resetting...

2 years agoMoved config update to combinatorial. Still need to figure out input state read
Andrey Miroshnikov [Mon, 17 Jan 2022 23:59:41 +0000 (23:59 +0000)]
Moved config update to combinatorial. Still need to figure out input state read

2 years agoAdded fixes to Record. ie not being driven correctly.
Andrey Miroshnikov [Sun, 16 Jan 2022 23:12:30 +0000 (23:12 +0000)]
Added fixes to Record. ie not being driven correctly.

2 years agoAdded Record for GPIO config, not working yet
Andrey Miroshnikov [Sun, 16 Jan 2022 11:28:07 +0000 (11:28 +0000)]
Added Record for GPIO config, not working yet

2 years agoImplemented GPIO changes discussed yesterday (except fitting multiple GPIOs in one...
Andrey Miroshnikov [Sat, 15 Jan 2022 22:30:45 +0000 (22:30 +0000)]
Implemented GPIO changes discussed yesterday (except fitting multiple GPIOs in one word). Still sorting out sim

2 years agoMade changes discussed in IRC, will fix sim tomorrow
Andrey Miroshnikov [Fri, 14 Jan 2022 23:32:37 +0000 (23:32 +0000)]
Made changes discussed in IRC, will fix sim tomorrow

2 years agoCreated and started making a basic IO mux block, unit test next.
Andrey Miroshnikov [Thu, 13 Jan 2022 22:30:32 +0000 (22:30 +0000)]
Created and started making a basic IO mux block, unit test next.

2 years agoCleaned up old comments
Andrey Miroshnikov [Thu, 13 Jan 2022 00:51:22 +0000 (00:51 +0000)]
Cleaned up old comments

2 years agoAdded a few TODOs
Andrey Miroshnikov [Thu, 13 Jan 2022 00:19:01 +0000 (00:19 +0000)]
Added a few TODOs

2 years agoCSR, output setting working. Input reading (and setting by sim) working.
Andrey Miroshnikov [Thu, 13 Jan 2022 00:03:01 +0000 (00:03 +0000)]
CSR, output setting working. Input reading (and setting by sim) working.

2 years agoGPIO extension almost working, input still needs fix to the set function
Andrey Miroshnikov [Tue, 11 Jan 2022 23:33:47 +0000 (23:33 +0000)]
GPIO extension almost working, input still needs fix to the set function

2 years agoFirst test of autopep8
Andrey Miroshnikov [Tue, 11 Jan 2022 12:51:41 +0000 (12:51 +0000)]
First test of autopep8

2 years agoRemoved test_case1 as it is now redundant, removed extra redundant code.
Andrey Miroshnikov [Tue, 11 Jan 2022 11:54:27 +0000 (11:54 +0000)]
Removed test_case1 as it is now redundant, removed extra redundant code.

2 years agoImprove JTAG test code clarity for future expansion
Andrey Miroshnikov [Tue, 11 Jan 2022 11:47:33 +0000 (11:47 +0000)]
Improve JTAG test code clarity for future expansion

2 years agoMade JTAG test case into a function to improve clarity
Andrey Miroshnikov [Mon, 10 Jan 2022 21:59:06 +0000 (21:59 +0000)]
Made JTAG test case into a function to improve clarity

2 years agoStarted on implementing i/oe/bank_sel
Andrey Miroshnikov [Fri, 7 Jan 2022 20:22:00 +0000 (20:22 +0000)]
Started on implementing i/oe/bank_sel

2 years agoAdding simple_gpio from soc repo, not modified yet.
Andrey Miroshnikov [Thu, 6 Jan 2022 23:14:19 +0000 (23:14 +0000)]
Adding simple_gpio from soc repo, not modified yet.

2 years agoAlmost finished asserts in unit test, starting cleanup.
Andrey Miroshnikov [Thu, 6 Jan 2022 23:13:37 +0000 (23:13 +0000)]
Almost finished asserts in unit test, starting cleanup.

2 years agoios_keys output control working
Andrey Miroshnikov [Wed, 29 Dec 2021 00:22:01 +0000 (00:22 +0000)]
ios_keys output control working

2 years agoFixed mistake of double jtag writing
Andrey Miroshnikov [Mon, 13 Dec 2021 22:04:04 +0000 (22:04 +0000)]
Fixed mistake of double jtag writing

2 years agoRefactored jtag sim test, made four basic test cases (no asserts yet).
Andrey Miroshnikov [Mon, 13 Dec 2021 21:27:53 +0000 (21:27 +0000)]
Refactored jtag sim test, made four basic test cases (no asserts yet).

2 years agoAdded bs addr for different test modes, still need to add comprehensive tests for...
Andrey Miroshnikov [Sat, 11 Dec 2021 22:47:41 +0000 (22:47 +0000)]
Added bs addr for different test modes, still need to add comprehensive tests for both connected/disconnected core/pad

2 years agoFigured out how to send jtag bs stream, and how to read, now need to add asserts.
Andrey Miroshnikov [Fri, 10 Dec 2021 22:47:10 +0000 (22:47 +0000)]
Figured out how to send jtag bs stream, and how to read, now need to add asserts.

2 years agoTried using other jtag_ commands, still need some extra config to fill shift reg
Andrey Miroshnikov [Thu, 9 Dec 2021 20:23:22 +0000 (20:23 +0000)]
Tried using other jtag_ commands, still need some extra config to fill shift reg

2 years agoAdded DMI and WB code from test_jtag_tap, basic pad/core toggling not working yet
Andrey Miroshnikov [Thu, 9 Dec 2021 13:13:13 +0000 (13:13 +0000)]
Added DMI and WB code from test_jtag_tap, basic pad/core toggling not working yet

2 years agoChanged jtag function imports to use test_jtag_tap, pad/core pin toggling not working yet
Andrey Miroshnikov [Tue, 7 Dec 2021 22:56:21 +0000 (22:56 +0000)]
Changed jtag function imports to use test_jtag_tap, pad/core pin toggling not working yet

2 years agoSolved one issue, found another. See bug #50 c#72
Andrey Miroshnikov [Tue, 7 Dec 2021 18:46:16 +0000 (18:46 +0000)]
Solved one issue, found another. See bug #50 c#72

2 years agoAdded jtag bs core/pad toggling, not working yet
Andrey Miroshnikov [Tue, 7 Dec 2021 18:33:28 +0000 (18:33 +0000)]
Added jtag bs core/pad toggling, not working yet

2 years agoRemoved redunant jtag files that already reside in soc repo
Andrey Miroshnikov [Tue, 7 Dec 2021 17:21:01 +0000 (17:21 +0000)]
Removed redunant jtag files that already reside in soc repo

2 years agoStarted working on jtag bs chain test
Andrey Miroshnikov [Mon, 6 Dec 2021 22:31:21 +0000 (22:31 +0000)]
Started working on jtag bs chain test

2 years agoget access to jtag boundary scan pads for uart_0_tx/rx
Luke Kenneth Casson Leighton [Mon, 6 Dec 2021 19:29:08 +0000 (19:29 +0000)]
get access to jtag boundary scan pads for uart_0_tx/rx

2 years agoadded i2c/uart prints to the debug test
Andrey Miroshnikov [Mon, 6 Dec 2021 18:30:31 +0000 (18:30 +0000)]
added i2c/uart prints to the debug test

2 years agoAdded I2C test based on the UART and GPIO tests
Andrey Miroshnikov [Mon, 6 Dec 2021 15:02:09 +0000 (15:02 +0000)]
Added I2C test based on the UART and GPIO tests

2 years agoBasic UART test working
Andrey Miroshnikov [Mon, 6 Dec 2021 10:23:32 +0000 (10:23 +0000)]
Basic UART test working

2 years agoStarting to write UART test
Andrey Miroshnikov [Fri, 3 Dec 2021 23:48:18 +0000 (23:48 +0000)]
Starting to write UART test

2 years agoUnit test now covers i/o/oe. Extra debug prints moved to separate test case.
Andrey Miroshnikov [Fri, 3 Dec 2021 19:48:46 +0000 (19:48 +0000)]
Unit test now covers i/o/oe. Extra debug prints moved to separate test case.

2 years agoAdded assert test for all input oand gpio_o_test combinations.
Andrey Miroshnikov [Fri, 3 Dec 2021 16:12:53 +0000 (16:12 +0000)]
Added assert test for all input oand gpio_o_test combinations.

2 years agoremove code trying to treat Pins/Resources as Signals/Records (again)
Luke Kenneth Casson Leighton [Fri, 3 Dec 2021 11:16:35 +0000 (11:16 +0000)]
remove code trying to treat Pins/Resources as Signals/Records (again)

2 years agoTrying to read core input, possibly a pin again
Andrey Miroshnikov [Fri, 3 Dec 2021 10:47:41 +0000 (10:47 +0000)]
Trying to read core input, possibly a pin again

2 years agoAdded input toggling, still implementing
Andrey Miroshnikov [Thu, 2 Dec 2021 23:03:06 +0000 (23:03 +0000)]
Added input toggling, still implementing

2 years agoAdded asserts for gpios 2/3
Andrey Miroshnikov [Thu, 2 Dec 2021 13:08:54 +0000 (13:08 +0000)]
Added asserts for gpios 2/3

2 years agoMoved main code under if __main__ statement for clarity.
Andrey Miroshnikov [Thu, 2 Dec 2021 12:53:17 +0000 (12:53 +0000)]
Moved main code under if __main__ statement for clarity.

2 years agosort out mess of trying to access the Pin resource instead of the pad
Luke Kenneth Casson Leighton [Thu, 2 Dec 2021 12:18:47 +0000 (12:18 +0000)]
sort out mess of trying to access the Pin resource instead of the pad
it was connected to.  faillllll

2 years agoChanged assert, TypeError occurring with pad output.
Andrey Miroshnikov [Thu, 2 Dec 2021 12:09:26 +0000 (12:09 +0000)]
Changed assert, TypeError occurring with pad output.

2 years agoGPIO output test waveforms working, asserts not working yet.
Andrey Miroshnikov [Wed, 1 Dec 2021 23:12:31 +0000 (23:12 +0000)]
GPIO output test waveforms working, asserts not working yet.

2 years agoIn process of writing test case outlined in bug50 c#60, not finished
Andrey Miroshnikov [Wed, 1 Dec 2021 01:13:08 +0000 (01:13 +0000)]
In process of writing test case outlined in bug50 c#60, not finished

2 years agoCan control gpio input via resource_table_pads
Andrey Miroshnikov [Tue, 30 Nov 2021 19:19:53 +0000 (19:19 +0000)]
Can control gpio input via resource_table_pads

2 years agomore messing about
Luke Kenneth Casson Leighton [Mon, 29 Nov 2021 22:25:36 +0000 (22:25 +0000)]
more messing about

2 years agobit of exploration
Luke Kenneth Casson Leighton [Mon, 29 Nov 2021 22:15:35 +0000 (22:15 +0000)]
bit of exploration

2 years agotesting comments
Luke Kenneth Casson Leighton [Mon, 29 Nov 2021 21:47:24 +0000 (21:47 +0000)]
testing comments

2 years agoGPIO o/oe can be controlled for unit testing, still need to figure out inputs.
Andrey Miroshnikov [Mon, 29 Nov 2021 21:41:35 +0000 (21:41 +0000)]
GPIO o/oe can be controlled for unit testing, still need to figure out inputs.

2 years agoAble to control gpio oe signal, not properly though.
Andrey Miroshnikov [Mon, 29 Nov 2021 21:07:54 +0000 (21:07 +0000)]
Able to control gpio oe signal, not properly though.

2 years agoadd gpio and start doing print-outs to find out what is in Blinker.gpio
Luke Kenneth Casson Leighton [Mon, 29 Nov 2021 17:19:05 +0000 (17:19 +0000)]
add gpio and start doing print-outs to find out what is in Blinker.gpio

2 years agoReturned code I removed, fixed my test case, added example test from cesar. Can't...
Andrey Miroshnikov [Mon, 29 Nov 2021 16:44:04 +0000 (16:44 +0000)]
Returned code I removed, fixed my test case, added example test from cesar. Can't figure out signal names to drive.

2 years agoTest case 0 for sanity, not working
Andrey Miroshnikov [Mon, 29 Nov 2021 14:51:35 +0000 (14:51 +0000)]
Test case 0 for sanity, not working

2 years agoadd pinmux docs
Luke Kenneth Casson Leighton [Mon, 29 Nov 2021 12:44:20 +0000 (12:44 +0000)]
add pinmux docs

2 years agomove prototype / proof-of-concept code from ASICPlatform / Blinker test
Luke Kenneth Casson Leighton [Sun, 28 Nov 2021 20:38:36 +0000 (20:38 +0000)]
move prototype / proof-of-concept code from ASICPlatform / Blinker test
into actual JTAG class.  start tidyup

2 years agoturn bi-directional GPIO pads back into triplet independent
Luke Kenneth Casson Leighton [Sun, 28 Nov 2021 16:46:25 +0000 (16:46 +0000)]
turn bi-directional GPIO pads back into triplet independent
i/o/oe pads

2 years agoconnect up Platform resources to pads
Luke Kenneth Casson Leighton [Sun, 28 Nov 2021 16:30:22 +0000 (16:30 +0000)]
connect up Platform resources to pads