How Linux Boots on an Embedded Device - part 1

  Рет қаралды 10,401

Tomaž Zaman

Tomaž Zaman

Күн бұрын

Пікірлер: 55
@BreakerSpace
@BreakerSpace 2 ай бұрын
You will get lower initial bump in viewership metrics on this video, but please don't let that discourage you. Not only people will search for and watch this for a longer time, many would come back to watch again for specific references. KZbin analytics makes creating the popcorn content more rewarding than hearty meals like this, but please don't let that get to you. Thankfully you actually have a product to make (instead of breaking it as a KZbinr as your primary goal) so it gives me hope that you will not break to the pressure of algorithm & I can keep coming back for more great content that KZbin is desperately starting to lack.
@tomazzaman
@tomazzaman 2 ай бұрын
Absolutely, I'm in no rush whatsoever, I prefer to make videos I feel passionate about rather than chasing views. I mean, those are nice, but I'd rather they grow organically because people share the same passion, but for me are not the be all end all. Will continue with content like this, don't worry! :)
@itsamemarkus
@itsamemarkus 2 ай бұрын
It's awesome you started this series. From what the previous videos looked like, the router will probably be a really nice device. In addition to that it could be a great learning opportunity when we have those videos (+ maybe good documentation).
@revealingfacts4all
@revealingfacts4all 2 ай бұрын
just PSA... embedded engineer here. You actually do NOT need a JTAG programmer to walk in the 2nd stage boot loader on many SoCs including NXP. Now, I'm not familiar with your exact SoC but I am with other iMX and S32 SoCs from NXP as well as Jacinto processors from Ti and they all have CPU pins you pull up or down to tell that first stage boot loader, in the CPU, where to look for the 2nd stage boot loader - such as a serial port you connect over USB.
@tomazzaman
@tomazzaman 2 ай бұрын
Thanks for the correction! Much appreciated!
@omegatotal
@omegatotal 2 ай бұрын
You can also use a raspberry pi as a SPI or other flash ROM programmer in most cases, and it sometimes works in system depending on the system you're working on. I recently backed up the flash on a network switch and then put an open source of variant on it, only a raspberry pi in a few jumper leads were needed
@pahnazd
@pahnazd 2 ай бұрын
I... understood a few of those words! :D This is way above my knowledge level, but it's still very enjoyable seeing how you progress.
@tomazzaman
@tomazzaman 2 ай бұрын
Thank you!
@TheMegahafo
@TheMegahafo 2 ай бұрын
I would seriously consider to buy the device I understand its inner workings. Great series. Thank you.
@Kabodanki
@Kabodanki 2 ай бұрын
This series is incredible, man I will buy one for sure. That is exactly what I wanted, ubiquity won't have my money. Overkill, I don't care lol
@AhmadSwailem
@AhmadSwailem 2 ай бұрын
I like the way how you share interesting things on the way up .. As usual, Good luck ❤
@Saphykitten
@Saphykitten 2 ай бұрын
You’re doing something you’re passionate about and sharing it with an enthusiasm that is absolutely enchanting. Randomly coming across your video series has encouraged me to upgrade my network and learn more about how networking works. Kudos~
@tomazzaman
@tomazzaman 2 ай бұрын
Thank you!
@OtoBrglez
@OtoBrglez 2 ай бұрын
I don’t want to say ur doing god’s work here. But definitely work of many professors of CS around the globe! Beautiful work!
@m-aslan
@m-aslan 2 ай бұрын
a full tutorial will be great
@Ginita12
@Ginita12 2 ай бұрын
I watched all the videos , even though I'm not a programmer at all . I'm just curious how your enterprise is evolving little by little. I'm here since you "hacked your isp" video . very interesting channel you have here . keep going .
@j2klegend
@j2klegend 2 ай бұрын
Thanks for explaining every bit in detail 👍
@pianoman4Jesus
@pianoman4Jesus 2 ай бұрын
Excellent tutorial series, Tomaž! 😎👍
@ghangj
@ghangj 2 ай бұрын
I love this.
@phillipmcmahon5949
@phillipmcmahon5949 2 ай бұрын
Awesome content once again! I hope your project continues going from strength to strength. Did you make contact with the team over at Vyos?
@uis246
@uis246 4 күн бұрын
Speaking of raw flash chips. You don't need special controller that does wear leveling. Linux has UBIFS - special file system for raw flash devices without FTL.
@shapelessed
@shapelessed 2 ай бұрын
20:48 - Ahh. The pesky CRC checksum mismatches... I recently added CRC error detection to the filesystem I've been working on, I can say confidently - It was a pain.
@trentbillington1093
@trentbillington1093 2 ай бұрын
Haha, chatgpt is probably the most computationally expensive way to convert hex to decimal 😭
@tomazzaman
@tomazzaman 2 ай бұрын
Yep, very likely!
@CrazyMineCuber
@CrazyMineCuber 7 күн бұрын
@@tomazzaman And also the most probable way to get an incorrct answer as well. Unless maybe you are a beginner and try to do it in your head :)
@Pea-pod
@Pea-pod 2 ай бұрын
Hi Tomasz, so given we get no LEDs except a power led which flashes during boot. Any chance you can allow for an oled screen via a knockout panel on the case that can be connected to the i2c bus?
@interruptlabs
@interruptlabs 2 ай бұрын
Nice!
@tfiatd
@tfiatd 2 ай бұрын
And a reminder to all, this is still peanuts compared to the shit you’ll have to deal with should you choose to do all of this manually.
@Monkeyindatrees
@Monkeyindatrees 2 ай бұрын
Why not using a risc-v chip? Arm will be expensive in licensing. If you want uptimized router then you could also use a fpga
@tfiatd
@tfiatd 2 ай бұрын
Doubt risc-v hardware is mature enough to both conveniently be there in router form, and to have this level of industry support at the moment. Nothing like mostly preconfigured boot images.
@tomazzaman
@tomazzaman 2 ай бұрын
Exaxctly. Risc-v is not anywhere near prodution ready yet.
@Monkeyindatrees
@Monkeyindatrees 2 ай бұрын
@@tfiatd then find a riscv chip and make the kernel drivers yourself? + freebsd has a much better and solid networking stack. Yes it is the hard route, but. No pain no gain
@paterley9155
@paterley9155 2 ай бұрын
At 10 minutes when talking about erasing the nor flash, you say 7 zeroes, but only typed 6
@tomazzaman
@tomazzaman 2 ай бұрын
I did put the correct word on the screen with an asterisk.
@paterley9155
@paterley9155 2 ай бұрын
@@tomazzaman Ahh, must have missed that. Glad you noticed too!
@dkaaakd
@dkaaakd 2 ай бұрын
Isn't ls1046a supported by openocd (even with a config for ardb)? Hence the claim that working with JTAG requires software with a large license cost is false?
@tomazzaman
@tomazzaman 2 ай бұрын
You're not wrong, there are other ways, but debuggers in general are expensive, wouldn't you agree? We also need their IDE for other things (RAM testing), not just JTAG work, so I should have been more clear on that. Thanks!
@dkaaakd
@dkaaakd 2 ай бұрын
@@tomazzaman I would say that debuggers are used to be expensive in general; but then ARM opensourced CMSIS and things started to change. If I understand correctly, you're using LS1046ARDB devboard, which has CMSIS-DAP port (J33). OpenOCD supports CMSIS-DAP, thus I would expect it to be possible to do the flashing using just devboard, micro-usb cable, memory layout and open-source software. Not sure what their IDE does for "RAM testing" (DDR timings validation?), but I expect loading firmware / debugging be just a question of what toolchain you're more familiar with, and if you'd like to invest some time into configuring OSS toolchain.
@tomazzaman
@tomazzaman 2 ай бұрын
Thanks for the heads up! And yes, DDR timings validation is what I had in mind. Also, good stuff you're giving me here. I haven't tried this J33 yet, so maybe that's worth a video in itself? Will report :)
@tfiatd
@tfiatd 2 ай бұрын
Also no, save yourself the hassle, anything but GPT! That thing has zero clue on this with all the confidence!
@lanefu
@lanefu 2 ай бұрын
Always bragging you have an ARM SoC that has vendor support and documentation
@laser-sj
@laser-sj 2 ай бұрын
And this is exactly why i hate Linux.... its way overcomplicated for what it needs to be. 😂
@Debloper
@Debloper 2 ай бұрын
...as opposed to Windows or macOS, that are super simple, very easy, user friendly & completely open source - to compile a custom image to boot into any target ASIC or FPGA. 👁👄👁
@hexlocation
@hexlocation 2 ай бұрын
Computers are complicated :p
@int32_
@int32_ 2 ай бұрын
good luck doing this with windows...
@sasjadevries
@sasjadevries 2 ай бұрын
But his video was all about UBoot and embedded memory... he ran over what happens before Linux boots up.
@laser-sj
@laser-sj 2 ай бұрын
​@@Debloper as opposed to a ground up built embeded system using open source software.
My most informative video yet! Let's build ourselves a Linux!
30:40
Players push long pins through a cardboard box attempting to pop the balloon!
00:31
10 Gb/s throughput without using CPU cores? ✅ Check.
13:46
Tomaž Zaman
Рет қаралды 35 М.
Extracting Firmware from Embedded Devices (SPI NOR Flash) ⚡
18:41
Flashback Team
Рет қаралды 588 М.
Building my dream hobby computer
12:24
Jalecko
Рет қаралды 6 М.
this new Linux feature makes hacking IMPOSSIBLE
11:08
Low Level
Рет қаралды 489 М.
U-Boot Bootloader Firmware Extraction Tools
19:20
Matt Brown
Рет қаралды 10 М.
Why Are Arch Linux Users So TOXIC?
12:32
Eric Murphy
Рет қаралды 557 М.
what happens when your CPU has a bug? (GhostWrite)
9:58
LaurieWired
Рет қаралды 37 М.
A RISC-V Stick-on
8:44
Jeff Geerling
Рет қаралды 411 М.
The Magic of RISC-V Vector Processing
16:56
LaurieWired
Рет қаралды 330 М.
How to HACK your ISP router - step by step.
13:51
Tomaž Zaman
Рет қаралды 158 М.
Players push long pins through a cardboard box attempting to pop the balloon!
00:31