nvram 驱动和应用

1、/kernel/drivers/mtd/maps添加文件

nvram.c 

nvram_kernel.c

nvram_linux.h 

wrapper.h

驱动代码下载地址

https://download.csdn.net/download/u011425939/87786837

 2、修改/kernel/drivers/mtd/maps/makefile

3、修改/kernel/drivers/mtd/maps/kconfig

 

3、或者直接修改 /kernel/arch/arm64/configs/rockchip_linux_defconfig

 添加CONFIG_MTD_NVRAM=y

4、应用代码如下

/* NVRAM utility */
int main(int argc, char **argv)
{char *name, *value, buf[NVRAM_SPACE];int size;/* Skip program name */--argc;++argv;if (!*argv)usage();/* Process the remaining arguments. */for (; *argv; argv++) {if (!strncmp(*argv, "get", 3)) {if (*++argv) {				if ((value = nvram_get(*argv)))puts(value);}} else if (!strncmp(*argv, "set", 3)) {if (*++argv) {strncpy(value = buf, *argv, sizeof(buf));name = strsep(&value, "=");nvram_set(name, value);}} else if (!strncmp(*argv, "unset", 5)) {if (*++argv)nvram_unset(*argv);} else if (!strncmp(*argv, "commit", 5)) {nvram_commit();} else if (!strncmp(*argv, "show", 4)|| !strncmp(*argv, "getall", 6)) {nvram_getall(buf, sizeof(buf));for (name = buf; *name; name += strlen(name) + 1)puts(name);size =sizeof(struct nvram_header) + (long)name - (long)buf;fprintf(stderr, "size: %d bytes (%d left)\n", size,NVRAM_SPACE - size);}if (!*argv)break;}return 0;
}

运用下载地址

https://download.csdn.net/download/u011425939/87786839

5、测试

[root@RK356X:/]# 
[root@RK356X:/]# nvram set my=123456
[root@RK356X:/]# 
[root@RK356X:/]# nvram get my
123456
[root@RK356X:/]# 
[root@RK356X:/]# nvram show
wpa_passphrase=12345678
file_log_en=0
wifi_enable=1
wifi_mode_select=1
wifidev=ra0
my=123456
ssid=wifi_ap123
g_trace_print_level=1
size: 151 bytes (130921 left)
[root@RK356X:/]# 
[root@RK356X:/]# 
[root@RK356X:/userdata]# nvram commit
nvram:[normal  2023-05-15 19:41:51] FILE:nvram_linux.c, FUN:nvram_commit, LINE:280, PID:20369 @:nvram_commit sizeof buffer=131072
[root@RK356X:/userdata]# 
[root@RK356X:/userdata]# ls
bin  cfg  nvram.bin
[root@RK356X:/userdata]# 


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部