+
+static int at91sam7_register_commands(struct command_context_s *cmd_ctx)
+{
+ command_t *at91sam7_cmd = register_command(cmd_ctx, NULL, "at91sam7",
+ NULL, COMMAND_ANY, NULL);
+
+ register_command(cmd_ctx, at91sam7_cmd, "gpnvm",
+ at91sam7_handle_gpnvm_command, COMMAND_EXEC,
+ "at91sam7 gpnvm <bit> set | clear, "
+ "set or clear one gpnvm bit");
+
+ return ERROR_OK;
+}
+
+struct flash_driver at91sam7_flash = {
+ .name = "at91sam7",
+ .register_commands = &at91sam7_register_commands,
+ .flash_bank_command = &at91sam7_flash_bank_command,
+ .erase = &at91sam7_erase,
+ .protect = &at91sam7_protect,
+ .write = &at91sam7_write,
+ .probe = &at91sam7_probe,
+ .auto_probe = &at91sam7_probe,
+ .erase_check = &at91sam7_erase_check,
+ .protect_check = &at91sam7_protect_check,
+ .info = &at91sam7_info,
+ };