09:06 | topi`> | jnettlet[m]: I believe the biggest drain on the IMX6 in suspend is DRAM, so most of those 60 mA are probably going to just refresh the DRAM. Maybe there would be a way to suspend the kernel to flash and then have a 3600-second timer bring the system back to life to sample some sensors? |
09:07 | topi`> | most SoCs these days have a companion risc core. Like the Allwinner H3 has an openrisc core that is totally hacker-programmable |
09:09 | jnettlet[m]> | topi`: yeah. In theory you could do that but it would be a bit slow. You can in fact move the S/R functions to run from SRAM. This would allow dram to be powered down and still wake the chip back up and load the kernel. |
10:16 | topi`> | strange thing. I've hooked up a 27" dell 2K monitor to the HB gate and most times my buildroot image, when booting, will output a 2048x1024 picture on screen just fine on /dev/fb0 but this time the monitor complains No Signal |
10:17 | topi`> | I'm pretty sure that if I now reboot the board, it will give some picture once again. I just wonder what can explain this irrational behaviour? |
10:17 | topi`> | this monitor is the newest part of my setup, so I'm inclined to lay the blame on it |
10:18 | topi`> | btw, for Macbook Pro owners or other laptops where the video out is via USB-C , this is a very nice display, it can do 2K over the usb-c cable just fine |
10:18 | topi`> | 4K is still a tad more expensive that I could see benefit from |
10:19 | topi`> | jnettlet[m]: what kind of facilities does the IMX6 have for running code from SRAM? can the cortex-a9 actually fetch insns from SRAM? |
10:19 | topi`> | oh, of course it has to, because that's how BootROM operates. You only have SRAM at that point. |
10:20 | topi`> | jnettlet[m]: I think the kernel already has some facilities for suspending everything to disk. That could be used with eMMC since it has decent write speeds |
10:21 | topi`> | the only question is, how often does the system need to wake up - soon the benefits will be eaten by the high power cost of hibernate/resume |
10:22 | topi`> | ideally there would be some interrupt coming from GPS that indicates the device is no longer in the same place |
10:23 | topi`> | maybe that should come off of an accelerometer instead, GPS is power consuming |
10:30 | jnettlet[m]> | topi`: I think ideally would find a GPS module with some embedded storage. Then you could collect position location there and only update it when necessary. |
10:30 | topi`> | yeah, it's the monitor. I swapped to a cheaper HDMI display and now I see the two penguins right off the start of the kernel |
10:31 | topi`> | it's funny that although I say console=ttymxc0 at the boot params, it still gives me video |
10:31 | topi`> | so, video, albeit not with the virtual consoles |
10:32 | topi`> | jnettlet[m]: I think a product needs some possibilities for customisation and thus I will ignore ready-made GPS devices :) |
10:32 | jnettlet[m]> | topi`: so that resolution is probably borderline on the frequency needed to meet the timing specs using the default clocks. |
10:33 | jnettlet[m]> | I think xobs had written a patch that changed the hdmi default parent to support slightly faster displays |
10:35 | bencoh> | jnettlet[m]: imx6 runs code from internal sram during some special operations (when entering/exiting from suspend state or deep cpu idle state, when putting DRAM to refresh / low power mode, when changing bus frequency, for instance) |
10:35 | bencoh> | or at boot, before DRAM controller is initialized with proper configuration |
10:35 | bencoh> | (before loading uboot, basically) |
10:36 | topi`> | what kind of power consumption can a 1 GB DDR3 chip have? any ballpark figure? |
10:36 | bencoh> | woops, that was for topi` obviously |
10:36 | topi`> | obviously there's some differenve between DDR3 and LPDDR3 |
10:36 | bencoh> | definitely :) |
10:37 | topi`> | I mean, it would be the holy grail of linux on embedded-like-appliances: when the device is not doing anything, it could shut down DRAM entirely, thus enabling really long use times from a battery |
10:37 | topi`> | why do we use linux? because it's cheap and easy, compared to the compilicated world of embedded |
10:37 | bencoh> | it's really not the "holy grail", some devices already do it |
10:37 | topi`> | which basically requires years of experience from the embedded world |
10:38 | bencoh> | well, they don't completely turn DRAM off, but instead put it in some low-power mode |
10:38 | topi`> | I prefer the linux ipv4 stack over any of those embedded world stuff |
10:38 | topi`> | bencoh: so, basically delaying the refresh cycle to consume less? |
10:39 | bencoh> | so you're basically just periodically refreshing DRAM to prevent erasure |
10:39 | bencoh> | with a really low cycle |
10:39 | bencoh> | (actually you don't really do anything apart from configuring it) |
10:39 | topi`> | I wonder if only certain banks of DRAM could be refreshed |
10:40 | topi`> | since 1 GB of ram is quite plenty... often, you could load the kernel and the app in just 64 MB |
10:40 | topi`> | heck, I started using Linux on a 4 MB machine |
10:40 | topi`> | of course the kernel was much, much simpler back then |
10:40 | Ke> | and the userland |
10:41 | topi`> | yeah, glibc was so lean there was no need for newlib :) |
10:41 | Ke> | I don't think I have seen any typical linux system with less than 32MiB of mem |
10:42 | topi`> | not if you have to drive a HDMI as well. But headless, could probably work |
10:42 | topi`> | dropping the USB stack alone frees up huge gobs of RAM |
10:43 | topi`> | I think USB stack is even bigger than PCIe stack |
10:54 | jnettlet[m]> | topi`: some ddr chips, and even fewer memory controllers have a functionality called PASR partial array self refresh. This allows you to power down certain regions of the DDR chip to save power. |
10:55 | jnettlet[m]> | The only place I ran into this was the Marvell chip we used for the OLPC-4 had support for it, but it was never stable enough to put into production. |
10:56 | jnettlet[m]> | but this is also what drove the initial linux patches to support hotplugging DDR |
15:08 | suihkulokki> | bent mcbin uart microusb port by moving laptop when usb wire connected :-/ |
15:08 | suihkulokki> | still works but damn take care of it |
17:00 | jnettlet[m]> | suihkulokki: as long as you don't need to do uart recovery you can configure u-boot to use one of the internal uarts and to pass that to linux as the main console. |
17:01 | jnettlet[m]> | since you can use the bootselect to choose between SPI/eMMC/SDHC you can always do recovery via SDHC |
17:02 | Ke> | would be cool to have a IO panel, perhaps it would have helped a bit |
18:38 | jnettlet[m]> | Ke: I am working on a microcontroller setup to work as a BMC. The 2 form factors I am looking at are 1) DVD panel, 2 PCIe mount in the rear. |
18:38 | jnettlet[m]> | ideally they would be the same form factor with different mounting options. |
18:39 | jnettlet[m]> | other ideas? |
19:04 | vpeter> | jnettlet[m]: what is bmc? |
19:05 | jnettlet[m]> | Board(BaseBoard) Management Controller |
19:06 | vpeter> | newer heard of it :) |
19:13 | jnettlet[m]> | vpeter: they are normal in large servers. They allow you an out of band management interface. Lots of older systems use IPMI, but RedFish is the newer protocol. |
19:14 | jnettlet[m]> | basically it is a remote interface to get a console, get sensor data, do a hard power-off etc. |
19:17 | vpeter> | Ah, this thing. Yes, very usable. |
20:54 | Ke> | jnettlet[m]: I mean just the metal plate that fills the hole in the back of the case |
20:55 | jnettlet[m]> | Ke, I have a 3d model. |
20:55 | jnettlet[m]> | You have access to a printer? |
20:57 | Ke> | sure |
21:04 | jnettlet[m]> | What print size? I have one model that prints in 2 pieces for smaller printers. |
21:06 | Ke> | not sure |
21:06 | jnettlet[m]> | Well I can post both. |
21:06 | Ke> | I think I could print the single piece one somewhere |
21:07 | Ke> | 20x20x20 cm |
21:07 | Ke> | at Sello kirjasto, also accessible to at least suihkulokki possibly also topi` |
21:07 | Ke> | kirjasto meaning library |
21:08 | Ke> | https://hakemisto.kirjastot.fi/sello |
21:08 | Ke> | it even has english option, but probably not relevant |