| /* SPDX-License-Identifier: (GPL-2.0+ OR MIT) */ |
| /* |
| * Copyright (c) 2019 Amlogic, Inc. All rights reserved. |
| */ |
| |
| #ifndef __EFUSE_BURN_H |
| #define __EFUSE_BURN_H |
| |
| #define EFUSE_BURN_BURN_KEY _IO('f', 0x60) |
| #define EFUSE_BURN_CHECK_KEY _IO('f', 0x62) |
| |
| #define IOCTL_TYPE_UNKNOWN 0 |
| #define IOCTL_TYPE_BURN 1 |
| #define IOCTL_TYPE_CHECK 2 |
| |
| struct efuse_burn_info { |
| char itemname[32]; |
| int status; //1:wrote, 0:not write, -1:fail. |
| }; |
| |
| struct aml_efuse_burn_dev { |
| struct platform_device *pdev; |
| struct class cls; |
| struct cdev cdev; |
| dev_t devno; |
| int efuse_pattern_size; |
| }; |
| |
| #ifdef CONFIG_AMLOGIC_EFUSE_BURN |
| int __init aml_efuse_burn_init(void); |
| void aml_efuse_burn_exit(void); |
| #else |
| int __init aml_efuse_burn_init(void) |
| { |
| return 0; |
| } |
| |
| void aml_efuse_burn_exit(void) |
| { |
| } |
| #endif |
| #endif |