works, not ramless

This commit is contained in:
R
2024-04-14 07:36:37 +01:00
parent ecef620913
commit b38aab0040
3 changed files with 14 additions and 8 deletions
+6 -7
View File
@@ -161,13 +161,12 @@ extern volatile uint32_t USB_EP1_IN[32];
#define USB_EP1_IN_OLDOLD(offs) (*(volatile uint32_t *)(0x400060C0 + 2 * (offs)))
#define USB_UF2_FIELDS_STASH(offs) (*(uint32_t *)(0x400061d4 + 2 * (offs)))
#define ACTIVE_CONFIG USB_UF2_FIELDS_STASH(12)
#define UF2_BLOCKS_LEFT USB_UF2_FIELDS_STASH(14)
#define CTRL_XFER_STATE USB_UF2_FIELDS_STASH(16)
#define CTRL_XFER_STATE_X USB_UF2_FIELDS_STASH(18)
#define CTRL_XFER_DESC_SZ USB_UF2_FIELDS_STASH(20)
extern volatile uint32_t USB_SECTOR_STASH[128];
// #define USB_SECTOR_STASH(offs) (*(uint32_t *)(0x40006200 + 2 * (offs)))
extern uint32_t ACTIVE_CONFIG;
extern uint32_t UF2_BLOCKS_LEFT;
extern uint32_t CTRL_XFER_STATE;
extern uint32_t CTRL_XFER_STATE_X;
extern uint32_t CTRL_XFER_DESC_SZ;
extern uint32_t USB_SECTOR_STASH[128];
#define USB_EPTYPE_BULK 0b00
#define USB_EPTYPE_CONTROL 0b01
+6 -1
View File
@@ -37,7 +37,12 @@ SECTIONS
PROVIDE( USB_EP0_OUT = 0x40006020 );
PROVIDE( USB_EP0_IN = 0x40006030 );
PROVIDE( USB_EP1_OUT = 0x40006040 );
PROVIDE( USB_EP1_IN = 0x400060C0 );
PROVIDE( USB_EP1_IN = 0x400060c0 );
PROVIDE( ACTIVE_CONFIG = 0x400061ec );
PROVIDE( UF2_BLOCKS_LEFT = 0x400061f0 );
PROVIDE( CTRL_XFER_STATE = 0x400061f4 );
PROVIDE( CTRL_XFER_STATE_X = 0x400061f8 );
PROVIDE( CTRL_XFER_DESC_SZ = 0x400061fc );
PROVIDE( USB_SECTOR_STASH = 0x40006200 );
PROVIDE(_data_lma = .);
+2
View File
@@ -87,6 +87,8 @@ _enter_application_code:
_enter_bootloader:
sh zero, (a3)
// xxx testing
la sp, 0x20000100
// Set up global pointer
.option push
.option norelax