openMMC
Open Source Modular MMC for AMCs
Loading...
Searching...
No Matches
lpc17_hpm.h
Go to the documentation of this file.
1/*
2 * AFCIPMI --
3 *
4 * Copyright (C) 2015 Henrique Silva <henrique.silva@lnls.br>
5 *
6 * This program is free software: you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation, either version 3 of the License, or
9 * (at your option) any later version.
10 *
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
15 *
16 * You should have received a copy of the GNU General Public License
17 * along with this program. If not, see <http://www.gnu.org/licenses/>.
18 */
19
28#ifdef LPC17_HPM_H_
29#undef LPC17_HPM_H_
30#endif
31#define LPC17_HPM_H_
32
33#define IPMC_UPDATE_SECTOR_START 0x10
34#define IPMC_UPDATE_SECTOR_END 0x11
35#define IPMC_UPDATE_ADDRESS_OFFSET (IPMC_UPDATE_SECTOR_START << 12)
36
41
42uint8_t ipmc_hpm_prepare_comp(void);
43uint8_t ipmc_hpm_upload_block(uint8_t *block, uint16_t size);
44uint8_t ipmc_hpm_finish_upload(uint32_t image_size);
45uint8_t ipmc_hpm_activate_firmware(void);
46uint8_t ipmc_hpm_get_upgrade_status(void);
47uint8_t program_page(uint32_t address, uint32_t *data, uint32_t size);
48uint8_t ipmc_erase_sector(uint32_t sector_start, uint32_t sector_end);
49
50
51uint8_t bootloader_hpm_prepare_comp(void);
52uint8_t bootloader_hpm_upload_block(uint8_t *block, uint16_t size);
53uint8_t bootloader_hpm_finish_upload(uint32_t image_size);
uint8_t bootloader_hpm_prepare_comp(void)
Definition lpc17_hpm.c:127
uint8_t ipmc_hpm_prepare_comp(void)
Definition lpc17_hpm.c:122
uint8_t bootloader_hpm_get_upgrade_status(void)
Definition lpc17_hpm.c:216
uint8_t ipmc_hpm_activate_firmware(void)
Definition lpc17_hpm.c:256
uint8_t bootloader_hpm_activate_firmware(void)
Definition lpc17_hpm.c:261
uint8_t ipmc_hpm_finish_upload(uint32_t image_size)
Definition lpc17_hpm.c:200
fw_type
Definition lpc17_hpm.h:37
@ APPLICATION
Definition lpc17_hpm.h:38
@ BOOTLOADER
Definition lpc17_hpm.h:39
uint8_t ipmc_hpm_upload_block(uint8_t *block, uint16_t size)
Definition lpc17_hpm.c:167
uint8_t ipmc_erase_sector(uint32_t sector_start, uint32_t sector_end)
Definition lpc17_hpm.c:294
uint8_t ipmc_hpm_get_upgrade_status(void)
Definition lpc17_hpm.c:210
uint8_t bootloader_hpm_upload_block(uint8_t *block, uint16_t size)
Definition lpc17_hpm.c:172
uint8_t program_page(uint32_t address, uint32_t *data, uint32_t size)
Definition lpc17_hpm.c:266
uint8_t bootloader_hpm_finish_upload(uint32_t image_size)
Definition lpc17_hpm.c:205