Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
docs:guide-developer:hw.hacking.first.steps [2020/05/15 17:31] – [Gather Information about Hardware] sprobstdocs:guide-developer:hw.hacking.first.steps [2023/03/18 23:51] (current) – rephrase to use gender neutral language ryanc
Line 22: Line 22:
  
 ===== Gather Information about Software ===== ===== Gather Information about Software =====
-  * [[docs:techref:bootloader]] This is probably going the first piece of software you are going to notice. But the rest of the system could be of interest as well: +  * [[docs:techref:bootloader]] This is probably going to be the first piece of software you are going to notice. But the rest of the system could be of interest as well: 
-  * Most probably it's a kind of outdated GNU/Linux Kernel with FOSS drivers or with binary only drivers or both. Then you are lucky, because the source code of the Linux Kernel is licensed under the GPLv2 and this constrains the seller to make the modified source code, if he actually bothered to modify anything, and he probably did, available to the customers (and not necessarily to the public) free of charge.+  * Most probably it's a kind of outdated GNU/Linux Kernel with FOSS drivers or with binary only drivers or both. Then you are lucky, because the source code of the Linux Kernel is licensed under the GPLv2 and this constrains the seller to make the modified source code, if they actually bothered to modify anything, and they probably did, available to the customers (and not necessarily to the public) free of charge.
  
 Now maybe the drivers for the components have already been integrated into mainline kernel, which means that a newer kernel should work on this device out of the box. If not, you could continue to use the one, from the manufacturer. So combine this kernel with other FOSS software, you want to run on it... ;-) Now maybe the drivers for the components have already been integrated into mainline kernel, which means that a newer kernel should work on this device out of the box. If not, you could continue to use the one, from the manufacturer. So combine this kernel with other FOSS software, you want to run on it... ;-)
  
-  * In case the manufacturer did not use a Linux Kernel but some kind of *BSD, you're fucked, since the license the *BSD sources are under are not GPL. This particularly means, the usurper  does not have to make source code available. He could, but he doesn't have to. Oh may you have much "fun" with *BSD. :-P+  * In case the manufacturer did not use a Linux Kernel but some kind of *BSD, you're fucked, since the license the *BSD sources are under are not GPL. This particularly means, the usurper  does not have to make source code available. They could, but they don't have to. Oh may you have much "fun" with *BSD. :-P
  
  
Line 37: Line 37:
  
   * An even better example is the [[toh:D-link:DIR-300#flash_layout|DIR-300 flash layout]].   * An even better example is the [[toh:D-link:DIR-300#flash_layout|DIR-300 flash layout]].
-  * Other ones you find here: [[http://wiki.ip-phone-forum.de/software:ds-mod:development:flash#flash_partitionierung]]+  * Other ones you find here: <del>[[http://wiki.ip-phone-forum.de/software:ds-mod:development:flash#flash_partitionierung]]</del> [[https://web.archive.org/web/20160306091048/http://wiki.ip-phone-forum.de/software:ds-mod:development:flash|Link on archive.org]]
  
 ==== Precise Flash Layout ==== ==== Precise Flash Layout ====
Line 49: Line 49:
 Now you want to run you own Software on your device. Now you want to run you own Software on your device.
 Maybe its hardware has already support in **some projects** Maybe its hardware has already support in **some projects**
-or in the **mainline kernel**. If not, then consider adding a new device or a complete new platform to develop software for. Please do not bother developers or potential developers to write code for this. Present the information you gathered, if it is interesting enough, somebody is going to do that ;-) Now to write code, the developer needs only some bread and water and a simple text editor, but to test this code, he'going to need the hardware itself. You could donate or maybe just lend the hardware.+or in the **mainline kernel**. If not, then consider adding a new device or a complete new platform to develop software for. Please do not bother developers or potential developers to write code for this. Present the information you gathered, if it is interesting enough, somebody is going to do that ;-) Now to write code, the developer needs only some bread and water and a simple text editor, but to test this code, they're going to need the hardware itself. You could donate or maybe just lend the hardware.
  
 ==== Add Device ==== ==== Add Device ====
  • Last modified: 2020/05/15 17:31
  • by sprobst