gnutoo_fallback_patch 9.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183
  1. <GNUtoo-irssi> I documented it
  2. <GNUtoo-irssi> but I should update the page
  3. <GNUtoo-irssi> somehow it works without any but one of my extra patches
  4. <GNUtoo-irssi> but it has 1 small issue
  5. <phcoder-1creen> GNUtoo-irssi: do you need review on those? I think that sth like it could save me countless external reflashs
  6. <GNUtoo-irssi> phcoder-1creen: well, most of them are unnecessary now
  7. <GNUtoo-irssi> 1 patch is usefull only for improving code readability of existing coreboot code
  8. <GNUtoo-irssi> 1 patch is only changing the reboot count of the fallback mecanism
  9. <GNUtoo-irssi> beside that I see nothing remaining
  10. <GNUtoo-irssi> but I can check again
  11. <GNUtoo-irssi> I have to do it now
  12. <GNUtoo-irssi> The documentation is on the wiki
  13. <GNUtoo-irssi> caveats:
  14. <GNUtoo-irssi> 1) sometimes the x60 reboots twice,
  15. <GNUtoo-irssi> for instance if you run poweroff, then let it power down, and as soon as it seems powered down, you press the power button
  16. <GNUtoo-irssi> in that case it will do a reset
  17. <GNUtoo-irssi> 2) suspend/resume and userspace needs some handling, I've systemd units for booting only, but not for suspend/resume
  18. <GNUtoo-irssi> but you can do it by hand
  19. <GNUtoo-irssi> config MAX_REBOOT_CNT
  20. <GNUtoo-irssi> <tab>int
  21. <GNUtoo-irssi> <tab>default 1
  22. <GNUtoo-irssi> that's what I added in src/mainboard/lenovo/x60/Kconfig
  23. <GNUtoo-irssi> before I had a patch to make it selectable it in Kconfig,
  24. <GNUtoo-irssi> that is to say the user enter the max reboot count he wants
  25. <GNUtoo-irssi> I think the global default is 3
  26. <GNUtoo-irssi> Then I've some other interesting patches
  27. <GNUtoo-irssi> I wonder if they're acceptable
  28. <GNUtoo-irssi> one patch is for adding etc/grub.cfg from Kconfig
  29. <GNUtoo-irssi> Use case: the user builds once, he do ./build/cbfstool ./build/coreboot.rom add -n etc/grub.cfg -f grub.cfg -t raw
  30. <GNUtoo-irssi> but he re-do make
  31. <GNUtoo-irssi> and forgett to re-add grub.cfg
  32. <GNUtoo-irssi> it's just a convenience
  33. <GNUtoo-irssi> (he could do it with a script too)
  34. <GNUtoo-irssi> *he/she
  35. <GNUtoo-irssi> I guess the user is a she in english?
  36. <GNUtoo-irssi> en french it's a he
  37. <GNUtoo-irssi> I've also a flashrom patch to submit
  38. <GNUtoo-irssi> phcoder-1creen: "it could save me countless external reflashs" => that was exactly my use case
  39. <GNUtoo-irssi> There are some other interesting stuff that could extend the use case:
  40. <GNUtoo-irssi> there is a flash log for the chromebooks
  41. <GNUtoo-irssi> example use case: you go to a conference in the USA, you are in the plane
  42. <GNUtoo-irssi> you then continue developing there, you reflash etc...
  43. <GNUtoo-irssi> but then you need the log of the failed boot somehow
  44. <GNUtoo-irssi> the flash log (which is in coreboot but require CONFIG_CHROMEOS or something like that) could help with that second use case
  45. <GNUtoo-irssi> Else the logs in RAM + a watchdog could also do the trick
  46. <GNUtoo-irssi> *hardware watchdog
  47. <GNUtoo-irssi> so that second approach of the second use case would just require some modifications related to cbmem
  48. <GNUtoo-irssi> they may already be there, because I'm way out of the loop
  49. <GNUtoo-irssi> I'll make a list of the interesting patches I have locally
  50. <GNUtoo-irssi> and look at gerrit too
  51. <GNUtoo-irssi> btw, is there some easy infrastructure work to do?
  52. <GNUtoo-irssi> like something that can be done on the side
  53. * ttyS3 has quit (Ping timeout: 264 seconds)
  54. <GNUtoo-irssi> The x60[s/t], T60(with intel GPUs), are mostly complete, the main issue remaining is merging that improved GPU init code
  55. <GNUtoo-irssi> fallback/ is mostly merged but that one patch I was talking about
  56. <GNUtoo-irssi> then I guess the ACPI part was merged
  57. <GNUtoo-irssi> I'm unsure about the IRDA
  58. <GNUtoo-irssi> I mostly test on x60t nowadays
  59. <GNUtoo-irssi> (my t60 has a nasty bug with ctrl+d, probably ec related)
  60. <GNUtoo-irssi> I've also to look about the security of the I/Os
  61. <GNUtoo-irssi> (like what's on the dock connector)
  62. <GNUtoo-irssi> there is also the license issue of the microcodes inside the headers
  63. <GNUtoo-irssi> I'll add all that in the wiki
  64. <phcoder-1creen> GNUtoo-irssi: did you test digitizer?
  65. <GNUtoo-irssi> yes
  66. <GNUtoo-irssi> works well with libreboot 6 beta3 patches on top of coreboot git
  67. <GNUtoo-irssi> I use it often
  68. <GNUtoo-irssi> with xournal mainly
  69. <GNUtoo-irssi> I've been in a local shop and I've found a compatilble wacom pen: it has:
  70. <GNUtoo-irssi> touch, button(right click), eraser
  71. <GNUtoo-irssi> all do work
  72. <GNUtoo-irssi> the pen is not the x60 pen, but it does work fine
  73. <phcoder-1creen> digitizer patches are already in
  74. <GNUtoo-irssi> The screen's directional keys the its middle key work
  75. <GNUtoo-irssi> yes
  76. <GNUtoo-irssi> I'll update soon
  77. <GNUtoo-irssi> I'll probably sumarize the patch I've left in the wiki
  78. <GNUtoo-irssi> and update that fallback page
  79. <GNUtoo-irssi> phcoder-1creen: is the IRDA supposed to work?
  80. <phcoder-1creen> GNUtoo-irssi: 5243
  81. <phcoder-1creen> T60, rght?
  82. * KidBeta has quit (Quit: My MacBook Pro has gone to sleep. ZZZzzz…)
  83. <GNUtoo-irssi> x60 and x60t
  84. <GNUtoo-irssi> oops
  85. <GNUtoo-irssi> x60t and t60
  86. <GNUtoo-irssi> I'll test them together, I was trying lirc instead directlyt
  87. <phcoder-1creen> 5242 for X60
  88. <GNUtoo-irssi> ok
  89. <GNUtoo-irssi> thanks
  90. <phcoder-1creen> GNUtoo-irssi: did you see x200 port?
  91. <GNUtoo-irssi> yes
  92. <GNUtoo-irssi> what CPU is it?
  93. <GNUtoo-irssi> and what chipset?
  94. <phcoder-1creen> gm45. Intel GPU
  95. <GNUtoo-irssi> ok
  96. <GNUtoo-irssi> I've looked at your new ports and related,
  97. <GNUtoo-irssi> it probably cover the chipset I have in my N71JQ
  98. <GNUtoo-irssi> but I probably don't have time to do the port anytime soon
  99. <phcoder-1creen> gm45 was already covered by rk9
  100. <GNUtoo-irssi> yes
  101. <GNUtoo-irssi> it's core 2 duo with the first AMT in the NICs, right?
  102. <GNUtoo-irssi> and 64bit?
  103. <phcoder-1creen> it's 64bit. I can't tell anything about AMT.
  104. <GNUtoo-irssi> so I guess that if someone unsolder his nic firmware flash, the AMT is gone?
  105. <GNUtoo-irssi> ok
  106. <GNUtoo-irssi> if so that's probably a good tradeoff
  107. <GNUtoo-irssi> you get more recent laptops at the cost of unsoldering or blanking the NIC's flash
  108. <phcoder-1creen> ME firmware is in the flash chip. There is information that on gm45 you can remove ME firmware without any consequences but I din't really try
  109. <GNUtoo-irssi> assuming it's like with the old i945 laptops
  110. <GNUtoo-irssi> ok, wow, nice
  111. <GNUtoo-irssi> how fast is it in between the T60's and the Nehalem's laptops(x201)
  112. <phcoder-1creen> roda rk9 runs without ME firmware AFACIT
  113. <GNUtoo-irssi> ok
  114. <GNUtoo-irssi> about roda and so on, there isn't a lot of infos on the rugged laptops
  115. <GNUtoo-irssi> I guess that nobody still test on them
  116. <phcoder-1creen> No. But the list of connectors they have is truly impressive. As is battery capacity and heaviness.
  117. <GNUtoo-irssi> indeed
  118. <GNUtoo-irssi> it probably has lot of interesting peripherals too, like GPS, 3g modem(how is it connected?) and so on
  119. <GNUtoo-irssi> for the heavyness, it's a way to make geeks become like rambo?
  120. <GNUtoo-irssi> s/geeks/geeks and nerds
  121. <phcoder-1creen> 3g modems are optional. I guess it's minipcie slot.
  122. <phcoder-1creen> BTW x200 has 3 minipcie slots
  123. <GNUtoo-irssi> wow
  124. <phcoder-1creen> (not counting exprecsscard)
  125. <GNUtoo-irssi> ok
  126. <GNUtoo-irssi> that permits to have 2 wifi cards...
  127. <phcoder-1creen> if driver can handle it, sure. When I tried with 2 intel cards, intel drivers and networkmanager got confused.
  128. <GNUtoo-irssi> (ath9k/ath5k have some difficulties when creating multiples interfaces when WPA is involved)
  129. <GNUtoo-irssi> ok
  130. <phcoder-1creen> 3rd minipcie was intended for UWB.
  131. <GNUtoo-irssi> well, I have multiples cards easily here
  132. <GNUtoo-irssi> I never had a problem with non-intel cards
  133. <phcoder-1creen> network manager will still get confused
  134. <GNUtoo-irssi> example: ath9k + ath9k_htc => both interfaces appear in kde's network manager GUI
  135. <GNUtoo-irssi> it was getting confused with intel cards and rfkill
  136. <GNUtoo-irssi> (and I lacked the fimrware of the intel cards...so that added to the confusion)
  137. <GNUtoo-irssi> Example use case: connect to 2 different AP on 2 different networks
  138. <phcoder-1creen> yes network manager and multiple cards and rfkill resultsin confusion
  139. <GNUtoo-irssi> my ath9k_htc is usb
  140. <GNUtoo-irssi> so no hardware rfkill
  141. <GNUtoo-irssi> btw, the mini-pcie connectors do export only pci?
  142. <GNUtoo-irssi> do they export usb, and sata?
  143. <GNUtoo-irssi> (and some other pins for rfkill, SIM card, and so on)
  144. <GNUtoo-irssi> ok
  145. <GNUtoo-irssi> well, I must update the instructions
  146. <GNUtoo-irssi> I was going trough the list of patches I had first
  147. <GNUtoo-irssi> yes
  148. <GNUtoo-irssi> but to a specific/personal page
  149. <fchmmr> could you link me to the updated instructions? (when done)
  150. <GNUtoo-irssi> well, I'll update them first
  151. <GNUtoo-irssi> I was going trough my patches list before that
  152. <GNUtoo-irssi> so I'll do that now
  153. <fchmmr> So I gather that you basically reset the counter yourself after you boot (after typing grub password)
  154. <fchmmr> and so, if you boot and the counter is higher, you know if someone tried to use it
  155. <GNUtoo-irssi> yes, my systemd unit does it
  156. <GNUtoo-irssi> *resets it
  157. <GNUtoo-irssi> so it works like that:
  158. <GNUtoo-irssi> the bootblock switch from normal/ to fallback if the counter is > CONFIG_MAX_REBOOT_CNT
  159. <GNUtoo-irssi> if no normal/ is there it also switch to fallback/
  160. <GNUtoo-irssi> and then it increments the counter
  161. <GNUtoo-irssi> (it's badly explained by me but you get the idea)
  162. <GNUtoo-irssi> then my systemd units reset the counter to 0 once it's fully booted
  163. <GNUtoo-irssi> that way if it fails, let's say at booting any linux kernel, then the user won't have bricked the laptop
  164. <GNUtoo-irssi> (and the developer will have saved lot of time)
  165. <GNUtoo-irssi> the issue is that I didn't reset the counter at resume
  166. <GNUtoo-irssi> I should look how
  167. <GNUtoo-irssi> but at least that makes it developer friendly if the user don't have suspend-resume covered yet
  168. <GNUtoo-irssi> testing images is then a lot faster
  169. <GNUtoo-irssi> and for "production", only fallback/ populated, but with the mecanism in place
  170. <GNUtoo-irssi> that way he can test normal/ easily