{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":649469449,"defaultBranch":"main","name":"rust-mimxrt500","ownerLogin":"apparentlymart","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2023-06-04T23:46:37.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/20180?v=4","public":true,"private":false,"isOrgOwned":false},"refInfo":{"name":"","listCacheKey":"v0:1694393976.0","currentOid":""},"activityList":{"items":[{"before":"aad42860b907870b2237ff79be3b730ac11f3c59","after":"10e53af4358b3cfb1a736b17af6043cc22441e9c","ref":"refs/heads/main","pushedAt":"2023-09-11T00:59:36.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"apparentlymart","name":"Martin Atkins","path":"/apparentlymart","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/20180?s=80&v=4"},"commit":{"message":"chore: Release","shortMessageHtmlLink":"chore: Release"}},{"before":"0a20515d069e1c28323695dbd157a1c9200125e9","after":"aad42860b907870b2237ff79be3b730ac11f3c59","ref":"refs/heads/main","pushedAt":"2023-09-11T00:41:40.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"apparentlymart","name":"Martin Atkins","path":"/apparentlymart","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/20180?s=80&v=4"},"commit":{"message":"evk: bootstub-evk bin had wrong address for application vector table\n\nThis was incorrectly using the offset into flash rather than the\ncorresponding memory address.","shortMessageHtmlLink":"evk: bootstub-evk bin had wrong address for application vector table"}},{"before":"9a061ded246bdf04f0e87e87fa735825fec46cb0","after":"0a20515d069e1c28323695dbd157a1c9200125e9","ref":"refs/heads/main","pushedAt":"2023-09-11T00:31:28.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"apparentlymart","name":"Martin Atkins","path":"/apparentlymart","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/20180?s=80&v=4"},"commit":{"message":"Prepare for new releases","shortMessageHtmlLink":"Prepare for new releases"}},{"before":"6f1b9e15e7b3bc829e83d5de30094cde34b10d73","after":"9a061ded246bdf04f0e87e87fa735825fec46cb0","ref":"refs/heads/main","pushedAt":"2023-09-11T00:12:52.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"apparentlymart","name":"Martin Atkins","path":"/apparentlymart","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/20180?s=80&v=4"},"commit":{"message":"Documentation and tidyup after integrating the bootstub features","shortMessageHtmlLink":"Documentation and tidyup after integrating the bootstub features"}},{"before":"f0ac34b7d674460b5fedb75d5c9644057c5744fa","after":"6f1b9e15e7b3bc829e83d5de30094cde34b10d73","ref":"refs/heads/main","pushedAt":"2023-09-10T23:17:41.000Z","pushType":"push","commitsCount":4,"pusher":{"login":"apparentlymart","name":"Martin Atkins","path":"/apparentlymart","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/20180?s=80&v=4"},"commit":{"message":"Replace -rt package with bootstub shimming\n\nPreviously we had what was essentially a fork of cortex-m-rt to deal with\nthis target's unusual requirements for flash layout, including the need\nto interleave special values into the vector table. That's annoying though,\nbecause it makes it harder to use idiomatic embedded Rust patterns on\nthis target.\n\nTo avoid that, we'll now use a \"boot stub\", which effectively reserves the\nfirst 64KiB of flash for some mechanically-generated data and coded that\nshould satisfy the on-chip boot ROM enough to give us control, and then\nwe use a little trampoline to start a normal cortex-m-rt-styled program\nwhose vector table is in a different location.\n\nThis solution is not wholly satisfying because it does waste 64KiB of\nflash, but it seems like a better tradeoff than entirely forking the\ncortex-m-rt package.","shortMessageHtmlLink":"Replace -rt package with bootstub shimming"}},{"before":"5329c17f736ec03d2f26966fc7462ef1f6ad3ba9","after":"f0ac34b7d674460b5fedb75d5c9644057c5744fa","ref":"refs/heads/main","pushedAt":"2023-09-10T18:58:43.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"apparentlymart","name":"Martin Atkins","path":"/apparentlymart","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/20180?s=80&v=4"},"commit":{"message":"bootstub: Macro for generating a \"flash control block\"\n\nThe on-chip boot ROM expects to find a block of data at a fixed offset into\nthe NOR flash to declare that the flash is intended to be used as boot\nmedia.\n\nThis new macro \"fcb!\" generates a static symbol with a special link\nsection so that a suitably-equipped linker script can place it at the\nexpected location, which is offset 0x0400 into the flash.","shortMessageHtmlLink":"bootstub: Macro for generating a \"flash control block\""}},{"before":"274c5d081cf14754c11ecb96e7ea9170d566e630","after":"5329c17f736ec03d2f26966fc7462ef1f6ad3ba9","ref":"refs/heads/main","pushedAt":"2023-09-04T02:28:43.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"apparentlymart","name":"Martin Atkins","path":"/apparentlymart","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/20180?s=80&v=4"},"commit":{"message":"bootstub: A new approach to startup code\n\nPreviously we essentially forked cortex-m-rt just to slightly adapt its\nlinker script and vector table to match what the RT500 boot rom expects.\n\nThat's a really heavy and annoying solution though, so here we're trying\nsomething else: a tiny little bootloader that we can write once at the\nstart of the flash memory that then jumps into a cortex-m-rt-shaped program\nflashed to a later page of flash memory.\n\nWith a suitable application linker script that avoids stomping over this\nlittle boot stub (not yet written) we should be able to support\napplications linked with cortex-m-rt in the standard way, at the expense\nof wasting a bit of flash memory on a redundant vector table and a little\ncode reset VTOR and jump into the real application.","shortMessageHtmlLink":"bootstub: A new approach to startup code"}},{"before":null,"after":"2d05cc20f625d531641971176016e1e7ff02d9c3","ref":"refs/heads/flexcomm","pushedAt":"2023-09-03T23:45:36.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"apparentlymart","name":"Martin Atkins","path":"/apparentlymart","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/20180?s=80&v=4"},"commit":{"message":"WIP flexcomm","shortMessageHtmlLink":"WIP flexcomm"}},{"before":"1e5ab5715d47e6c8865e3e682870fd383765d245","after":"274c5d081cf14754c11ecb96e7ea9170d566e630","ref":"refs/heads/main","pushedAt":"2023-07-05T01:16:15.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"apparentlymart","name":"Martin Atkins","path":"/apparentlymart","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/20180?s=80&v=4"},"commit":{"message":"hal, evk: Prepare for release","shortMessageHtmlLink":"hal, evk: Prepare for release"}},{"before":"a2ffbccf45d8dbe5b30200033ff776c0bbb88e55","after":"1e5ab5715d47e6c8865e3e682870fd383765d245","ref":"refs/heads/main","pushedAt":"2023-07-05T01:12:07.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"apparentlymart","name":"Martin Atkins","path":"/apparentlymart","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/20180?s=80&v=4"},"commit":{"message":".vscode: Ignore environment-specific launch.json file","shortMessageHtmlLink":".vscode: Ignore environment-specific launch.json file"}},{"before":"681ccada3305dcc47b26a0d0d7ca377c46ce85eb","after":"a2ffbccf45d8dbe5b30200033ff776c0bbb88e55","ref":"refs/heads/main","pushedAt":"2023-07-05T00:34:45.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"apparentlymart","name":"Martin Atkins","path":"/apparentlymart","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/20180?s=80&v=4"},"commit":{"message":"evk: Wrap the HAL's Pins type with a BSP-specific Pins type\n\nThis renames some of the pins to match how they are connected on the EVK\nboard. This is not yet comprehensive.","shortMessageHtmlLink":"evk: Wrap the HAL's Pins type with a BSP-specific Pins type"}},{"before":"722dfb05fb12c21bbc63cc519c32d0726cfa90bc","after":"681ccada3305dcc47b26a0d0d7ca377c46ce85eb","ref":"refs/heads/main","pushedAt":"2023-07-04T21:20:10.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"apparentlymart","name":"Martin Atkins","path":"/apparentlymart","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/20180?s=80&v=4"},"commit":{"message":"hal: Basic pin configuration API and GPIO behavior","shortMessageHtmlLink":"hal: Basic pin configuration API and GPIO behavior"}},{"before":"a32314a93bbdd7e678841413df42fe2cc614c89b","after":"722dfb05fb12c21bbc63cc519c32d0726cfa90bc","ref":"refs/heads/main","pushedAt":"2023-07-04T18:56:58.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"apparentlymart","name":"Martin Atkins","path":"/apparentlymart","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/20180?s=80&v=4"},"commit":{"message":"hal: Implement the embedded-hal digital IO traits\n\nAt the time of this commit the embedded-hal team is working towards their\n1.0 release, so we'll write this against their latest alpha right now with\nthe intention of adopting 1.0.0 once it's finalized.","shortMessageHtmlLink":"hal: Implement the embedded-hal digital IO traits"}},{"before":"bf43e4e119da9f0216a90dcb2341466734d5b8e4","after":"a32314a93bbdd7e678841413df42fe2cc614c89b","ref":"refs/heads/main","pushedAt":"2023-07-04T15:22:28.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"apparentlymart","name":"Martin Atkins","path":"/apparentlymart","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/20180?s=80&v=4"},"commit":{"message":"hal: Starting to implement the GPIO and pin configuration abstraction\n\nThis is just enough to reimplement the scratch program's blinky using the\npin API instead of using the PAC API directly.","shortMessageHtmlLink":"hal: Starting to implement the GPIO and pin configuration abstraction"}},{"before":"fe460f02bc295f726e3fd054ef1f51f4134ac26c","after":"bf43e4e119da9f0216a90dcb2341466734d5b8e4","ref":"refs/heads/main","pushedAt":"2023-07-03T17:46:48.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"apparentlymart","name":"Martin Atkins","path":"/apparentlymart","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/20180?s=80&v=4"},"commit":{"message":"hal: Starting to implement the GPIO and pin configuration abstraction\n\nThis isn't working quite right yet: the scratch program seems to hit a\nhardfault during the configuration phase. Will investigate further and\nhopefully fix it in subsequent commits.","shortMessageHtmlLink":"hal: Starting to implement the GPIO and pin configuration abstraction"}},{"before":"8b542a2fec60b449d908cdc8819346833b475d01","after":"fe460f02bc295f726e3fd054ef1f51f4134ac26c","ref":"refs/heads/main","pushedAt":"2023-07-02T22:30:17.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"apparentlymart","name":"Martin Atkins","path":"/apparentlymart","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/20180?s=80&v=4"},"commit":{"message":"scratch: Now using the PAC instead of direct register access","shortMessageHtmlLink":"scratch: Now using the PAC instead of direct register access"}},{"before":"a6d022811291f1ff97782fecae437747d0b64d86","after":"8b542a2fec60b449d908cdc8819346833b475d01","ref":"refs/heads/main","pushedAt":"2023-07-02T21:54:04.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"apparentlymart","name":"Martin Atkins","path":"/apparentlymart","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/20180?s=80&v=4"},"commit":{"message":"hal: Enable \"mimxrt595s\" feature when verifying prior to release\n\nThis is for use by the \"cargo release\" command.","shortMessageHtmlLink":"hal: Enable \"mimxrt595s\" feature when verifying prior to release"}},{"before":"e248a8e0c6a8f814f64104e43c9434440852ad36","after":"a6d022811291f1ff97782fecae437747d0b64d86","ref":"refs/heads/main","pushedAt":"2023-07-02T21:25:39.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"apparentlymart","name":"Martin Atkins","path":"/apparentlymart","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/20180?s=80&v=4"},"commit":{"message":"A top-level README giving an index of all of the crates","shortMessageHtmlLink":"A top-level README giving an index of all of the crates"}},{"before":"daf26c7dcf1c6902b76f3f2b667548f0b8ed4f59","after":"e248a8e0c6a8f814f64104e43c9434440852ad36","ref":"refs/heads/main","pushedAt":"2023-07-02T19:19:50.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"apparentlymart","name":"Martin Atkins","path":"/apparentlymart","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/20180?s=80&v=4"},"commit":{"message":"scratch: Blinky blinky\n\nThe RTT setup here doesn't seem to be working quite right yet, so instead\nwe'll use a blinking LED on the eval board as our proof of being able to\nrun code on this board.\n\nThis intentionally uses very simple direct register writes just to make\nit easier to inspect in a debugger and verify that it's running correctly.","shortMessageHtmlLink":"scratch: Blinky blinky"}},{"before":"20c71937629f3da17ffd71a42c3ce7159bf7c1bb","after":"daf26c7dcf1c6902b76f3f2b667548f0b8ed4f59","ref":"refs/heads/main","pushedAt":"2023-07-02T15:47:13.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"apparentlymart","name":"Martin Atkins","path":"/apparentlymart","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/20180?s=80&v=4"},"commit":{"message":"mimxrt500-rt: cortex-m-rt replacement for mimxrt5xxs\n\nThis family has some unusual requirements such as interlacing special\nextra values into reserved entries in the vector table, and laying out\nflash memory with room for a special configuration block.\n\nTo handle that, this is essentially a fork of cortex-m-rt but specialized\nfor these chips, generating the expected entries in the vector table and\ncooperating with code in a board support package to produce a suitable\nflash configuration block.","shortMessageHtmlLink":"mimxrt500-rt: cortex-m-rt replacement for mimxrt5xxs"}},{"before":"f0a5711d364fb90d25c42c59bab38ce115f0cab9","after":"20c71937629f3da17ffd71a42c3ce7159bf7c1bb","ref":"refs/heads/main","pushedAt":"2023-07-01T23:25:32.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"apparentlymart","name":"Martin Atkins","path":"/apparentlymart","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/20180?s=80&v=4"},"commit":{"message":"evk: Fix some misplaced entries in the flash config lookup table","shortMessageHtmlLink":"evk: Fix some misplaced entries in the flash config lookup table"}},{"before":"a786daa8b86773fc18055fc07dd828b89cb867a3","after":"f0a5711d364fb90d25c42c59bab38ce115f0cab9","ref":"refs/heads/main","pushedAt":"2023-06-28T02:27:04.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"apparentlymart","name":"Martin Atkins","path":"/apparentlymart","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/20180?s=80&v=4"},"commit":{"message":"Some further fenagling of the memory layout and vector table\n\ncortex-m-rt's efforts are unfortunately insufficient for this target\nbecause the boot ROM expects a very particular layout including some\nspecial extra values crammed into reserved fields in the vector table.\nFor now we have some custom code and a custom linker script in a separate\nscratch program to start dealing with that; we'll factor it out into a\nseparate library later.\n\nThis still doesn't quite work, for a reason not yet determined. Will\nfinagle further in later commits.","shortMessageHtmlLink":"Some further fenagling of the memory layout and vector table"}},{"before":"5bce7fc7580883827a78c206f5a0505034928934","after":"a786daa8b86773fc18055fc07dd828b89cb867a3","ref":"refs/heads/main","pushedAt":"2023-06-24T16:46:23.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"apparentlymart","name":"Martin Atkins","path":"/apparentlymart","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/20180?s=80&v=4"},"commit":{"message":"hal: Struct types for the flash config block that boot ROM expects","shortMessageHtmlLink":"hal: Struct types for the flash config block that boot ROM expects"}},{"before":"4ecedbd9bffd8b306a860b3a01820a3d669496bd","after":"5bce7fc7580883827a78c206f5a0505034928934","ref":"refs/heads/main","pushedAt":"2023-06-05T01:44:39.162Z","pushType":"push","commitsCount":1,"pusher":{"login":"apparentlymart","name":"Martin Atkins","path":"/apparentlymart","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/20180?s=80&v=4"},"commit":{"message":"hal: README","shortMessageHtmlLink":"hal: README"}},{"before":"bee84520da812be7c8e0769a5da8201bb4a51537","after":"4ecedbd9bffd8b306a860b3a01820a3d669496bd","ref":"refs/heads/main","pushedAt":"2023-06-05T01:43:17.200Z","pushType":"push","commitsCount":1,"pusher":{"login":"apparentlymart","name":"Martin Atkins","path":"/apparentlymart","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/20180?s=80&v=4"},"commit":{"message":"Initial stubbing of the GPIO typestate API","shortMessageHtmlLink":"Initial stubbing of the GPIO typestate API"}},{"before":"e54583e186ae501a260c9cd1f48e21d9d0c937e8","after":"bee84520da812be7c8e0769a5da8201bb4a51537","ref":"refs/heads/main","pushedAt":"2023-06-04T23:54:45.036Z","pushType":"push","commitsCount":2,"pusher":{"login":"apparentlymart","name":"Martin Atkins","path":"/apparentlymart","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/20180?s=80&v=4"},"commit":{"message":"README and LICENSE","shortMessageHtmlLink":"README and LICENSE"}},{"before":null,"after":"e54583e186ae501a260c9cd1f48e21d9d0c937e8","ref":"refs/heads/main","pushedAt":"2023-06-04T23:46:54.806Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"apparentlymart","name":"Martin Atkins","path":"/apparentlymart","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/20180?s=80&v=4"},"commit":{"message":"mimxrt595s: Peripheral access crate for i.MX RT595S","shortMessageHtmlLink":"mimxrt595s: Peripheral access crate for i.MX RT595S"}}],"hasNextPage":false,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAADfW3qSAA","startCursor":null,"endCursor":null}},"title":"Activity ยท apparentlymart/rust-mimxrt500"}