mirror of
https://github.com/Polprzewodnikowy/SummerCart64.git
synced 2024-11-25 15:16:53 +01:00
little cleanup
This commit is contained in:
parent
568a343b2e
commit
9dd8fc7445
@ -8,6 +8,7 @@ SRC_FILES = \
|
|||||||
fpga.c \
|
fpga.c \
|
||||||
hw.c \
|
hw.c \
|
||||||
lcmxo2.c \
|
lcmxo2.c \
|
||||||
loader_main.c
|
loader_main.c \
|
||||||
|
update.c
|
||||||
|
|
||||||
include common.mk
|
include common.mk
|
||||||
|
@ -1,12 +1,10 @@
|
|||||||
#include <stdint.h>
|
#include <stdint.h>
|
||||||
#include "fpga.h"
|
|
||||||
#include "hw.h"
|
#include "hw.h"
|
||||||
#include "vendor.h"
|
#include "update.h"
|
||||||
|
|
||||||
|
|
||||||
void loader_main (void) {
|
void loader_main (void) {
|
||||||
uint32_t parameters[5];
|
uint32_t parameters[5];
|
||||||
uint64_t buffer;
|
|
||||||
|
|
||||||
hw_loader_get_parameters(parameters);
|
hw_loader_get_parameters(parameters);
|
||||||
|
|
||||||
@ -16,18 +14,7 @@ void loader_main (void) {
|
|||||||
|
|
||||||
hw_gpio_set(GPIO_ID_LED);
|
hw_gpio_set(GPIO_ID_LED);
|
||||||
|
|
||||||
if (parameters[2] != 0) {
|
update_perform(parameters);
|
||||||
hw_flash_erase();
|
|
||||||
for (int i = 0; i < parameters[2]; i += sizeof(buffer)) {
|
|
||||||
fpga_mem_read(parameters[1] + i, sizeof(buffer), (uint8_t *) (&buffer));
|
|
||||||
hw_flash_program(HW_FLASH_ADDRESS + i, buffer);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (parameters[4] != 0) {
|
|
||||||
vendor_update(parameters[3], parameters[4]);
|
|
||||||
vendor_reconfigure();
|
|
||||||
}
|
|
||||||
|
|
||||||
hw_gpio_reset(GPIO_ID_LED);
|
hw_gpio_reset(GPIO_ID_LED);
|
||||||
|
|
||||||
|
@ -1,7 +1,9 @@
|
|||||||
#include <stdint.h>
|
#include <stdint.h>
|
||||||
|
#include "fpga.h"
|
||||||
#include "hw.h"
|
#include "hw.h"
|
||||||
#include "update.h"
|
#include "update.h"
|
||||||
#include "usb.h"
|
#include "usb.h"
|
||||||
|
#include "vendor.h"
|
||||||
|
|
||||||
|
|
||||||
static uint32_t update_mcu_address;
|
static uint32_t update_mcu_address;
|
||||||
@ -35,6 +37,24 @@ void update_start (void) {
|
|||||||
hw_loader_reset(parameters);
|
hw_loader_reset(parameters);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void update_perform (uint32_t *parameters) {
|
||||||
|
uint64_t buffer;
|
||||||
|
|
||||||
|
if (parameters[2] != 0) {
|
||||||
|
hw_flash_erase();
|
||||||
|
for (int i = 0; i < parameters[2]; i += sizeof(buffer)) {
|
||||||
|
fpga_mem_read(parameters[1] + i, sizeof(buffer), (uint8_t *) (&buffer));
|
||||||
|
hw_flash_program(HW_FLASH_ADDRESS + i, buffer);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (parameters[4] != 0) {
|
||||||
|
vendor_update(parameters[3], parameters[4]);
|
||||||
|
}
|
||||||
|
|
||||||
|
vendor_reconfigure();
|
||||||
|
}
|
||||||
|
|
||||||
void update_notify_done (void) {
|
void update_notify_done (void) {
|
||||||
uint32_t parameters[5];
|
uint32_t parameters[5];
|
||||||
usb_tx_info_t packet;
|
usb_tx_info_t packet;
|
||||||
|
@ -15,6 +15,7 @@ typedef enum {
|
|||||||
uint32_t update_backup (uint32_t address);
|
uint32_t update_backup (uint32_t address);
|
||||||
update_error_t update_prepare (uint32_t address, uint32_t length);
|
update_error_t update_prepare (uint32_t address, uint32_t length);
|
||||||
void update_start (void);
|
void update_start (void);
|
||||||
|
void update_perform (uint32_t *parameters);
|
||||||
void update_notify_done (void);
|
void update_notify_done (void);
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user