BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / embedded-system / #9214同步于 2010/7/30
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Embedded_System机器人发帖

[求助]读取目标板上所有芯片的ID号

michealyao
2010/7/30镜像同步10 回复
现在有个需求:linux2.4下要写个应用程序(可以是运行在内核空间或者是用户空间)读取目标板上所有芯片的ID号 ,然后把读到的这些信息写到一个文件中 思路1:直接操作芯片的寄存器,看没个芯片地址线、数据线和控制线在整个内存空间的映射; 思路2:改写芯片的驱动程序(比如flash芯片驱动里有直接读芯片ID号的函数,只是它没导出到内核空间,只有它自己的模块能使用这个函数,我现在就导出到内核空间或者加到ioctl里) 不知道思路可行不可行,大家给点意见吧。先谢了。
订阅后,新回复会通过你的通知中心匿名送达。
9 条回复
ArmStrong机器人#1 · 2010/7/30
直接操作芯片寄存器就相当于写个新的驱动了,把一大堆芯片读取id写在一个驱动里,乱 七八糟的,结构很不好,建议用思路2 【 在 michealyao (吾爱雨寒) 的大作中提到: 】 : 现在有个需求:linux2.4下要写个应用程序(可以是运行在内核空间或者是用户空间)读取目标板上所有芯片的ID号 ,然后把读到的这些信息写到一个文件中 : 思路1:直接操作芯片的寄存器,看没个芯片地址线、数据线和控制线在整个内存空间的映射; : 思路2:改写芯片的驱动程序(比如flash芯片驱动里有直接读芯片ID号的函数,只是它没导出到内核空间,只有它自己的模块能使用这个函数,我现在就导出到内核空间或者加到ioctl里) : ...................
michealyao机器人#2 · 2010/7/30
我所知道的flash驱动力有直接读写Manufacture ID和Device ID的函数;其他的芯片如SDRAM,cpu, 网卡等驱动程序我就不熟悉了。不知道这方面该从何入手。ArmStrong对这些熟悉不?给点意见啊 【 在 ArmStrong 的大作中提到: 】 : 直接操作芯片寄存器就相当于写个新的驱动了,把一大堆芯片读取id写在一个驱动里,乱 : 七八糟的,结构很不好,建议用思路2
michealyao机器人#3 · 2010/8/2
自己顶一个
ArmStrong机器人#4 · 2010/8/3
挨个驱动看吧,有调用就调,没有调用就看datasheet往上加,不会有什么捷径啊,说实在的 我对这个需求很无语,读ID干嘛呀 【 在 michealyao (吾爱雨寒) 的大作中提到: 】 : 我所知道的flash驱动力有直接读写Manufacture ID和Device ID的函数;其他的芯片如SDRAM,cpu, 网卡等驱动程序我就不熟悉了。不知道这方面该从何入手。ArmStrong对这些熟悉不?给点意见啊
michealyao机器人#5 · 2010/8/4
上头交代下来,据说是要用来加密用。我也不想干这个活。 谢哈! 【 在 ArmStrong 的大作中提到: 】 : 挨个驱动看吧,有调用就调,没有调用就看datasheet往上加,不会有什么捷径啊,说实在的 : 我对这个需求很无语,读ID干嘛呀
ssailing机器人#6 · 2010/8/5
有些芯片是挂在其他总线上的 id也只是设备寄存器的一个地址而已 用户空间只要能访问该总线 就可以得到ID 对于Flash的ID 可以将flash的地址空间mmap到用户空间 就可以模仿内核空间的方式按照Flash获得id的时序就可以获得ID了
ArmStrong机器人#7 · 2010/8/6
要加密是不是可以考虑加个eeprom,干嘛读其他所有id...即使这样也不耽误别人抄板啊 【 在 michealyao (吾爱雨寒) 的大作中提到: 】 : 上头交代下来,据说是要用来加密用。我也不想干这个活。 : 谢哈!
michealyao机器人#8 · 2010/8/7
我是把flash驱动中读写flash ID的函数给摘出来,做成一个驱动(其他的IC的ID我也想做到驱动的读函数里)。 ps:师兄知道ram有没有ID号啊,我上网查了些资料。无法肯定ram有没有ID 【 在 ssailing 的大作中提到: 】 : 有些芯片是挂在其他总线上的 id也只是设备寄存器的一个地址而已 用户空间只要能访问该总线 就可以得到ID : 对于Flash的ID 可以将flash的地址空间mmap到用户空间 就可以模仿内核空间的方式按照Flash获得id的时序就可以获得ID了 : -- : ...................
michealyao机器人#9 · 2010/8/7
是这样的,有很多芯片在生产的时候,不同批次的产品会有不同的ID号。我灌到目标板里的程序里,加入一个比较IC的ID号的程序(ID号就是通过这个程序读出来的,我板子的ID放在一个加密后的文件中),如果ID不相同就reboot或者destroy。 现在抄板的话,板子里面的程序也很容易破解? 【 在 ArmStrong 的大作中提到: 】 : 要加密是不是可以考虑加个eeprom,干嘛读其他所有id...即使这样也不耽误别人抄板啊 : 【 在 michealyao (吾爱雨寒) 的大作中提到: 】 : : 上头交代下来,据说是要用来加密用。我也不想干这个活。 : ...................