![]() |
[HOWTO] Comprehensive Firmware Flashing Guide for Jolla
I think we need a thread for flashing new kernels / OS releases for Jolla too :D
So, I'll open this: 1. Where to get flasher tool (for linux of course)? 2. Is it possible to flash kernel in situ? 3. What support binaries are needed, like FIASCO images? 4. Where to get kernel build tree and toolchains? |
Re: [HOWTO] Comprehensive Firmware Flashing Guide for Jolla
OnTwitter, they replied that information on kernel development, craeting images and flashing, will be available via merproject.org.
So, lets see .... |
Re: [HOWTO] Comprehensive Firmware Flashing Guide for Jolla
Quote:
4. Most likely by sending source code request to address which is stated in about device settings page. |
Re: [HOWTO] Comprehensive Firmware Flashing Guide for Jolla
Thanks for the details Rainisto.
I really hope that flasher will come out, and not only for developpers. That's a big part of what made the N900 and N9 what they are. Plus it should lower the need for asking Jolla Care to fix things that could be fixed by users. I think Nokia haven't received more devices to unbrick because users messed up with the flasher, than they would have received devices to unbrick because users couldn't unbrick them by themselves. People who use the flasher do this at their own risk anyway, and are usually involved in the community (otherwise they wouldn't even be aware a flasher exists), so they know it'll be faster to *not* send the device for service, but rather find how to properly use the flasher by asking the community. |
Re: [HOWTO] Comprehensive Firmware Flashing Guide for Jolla
Quote:
|
Re: [HOWTO] Comprehensive Firmware Flashing Guide for Jolla
Quote:
|
Re: [HOWTO] Comprehensive Firmware Flashing Guide for Jolla
Quote:
|
Re: [HOWTO] Comprehensive Firmware Flashing Guide for Jolla
Requested and received. I've merged the Jolla kernel source release (kernel-adaptation-sbj-3.4.0.20131115.2) on top of tagged Qualcomm (Android) kernel release so that it's possible to view all Jolla specific changes. Only really major change I noticed in my first quick glance through it, was that they've backported btrfs (from linux-stable 3.5.7). Other than that, their changes are mostly hardware enablement related (display, touchscreen, camera, sensor, etc drivers). Stuff you'd see in any kernel source for any e.g. Android device. Vast majority of their (or their ODM's) changes are even commented (who, when, what) which is great compared to some other stuff I've seen. In general quite clean, though I (literally :P) see red when I see all those whitespaces.
I've pushed the source to my GitHub. Happy forking. :) https://github.com/KonstaT/sailfisho..._jolla_msm8930 I can write some instructions if someone is interested in building/booting custom kernels. It should be pretty basic stuff for anyone familiar with e.g. Android development (and the necessary tools are the same). From a brief chat I had with a Jolla engineer, flashing/booting a custom kernel image will result a permanent unlocked status (in bootloader?) and it will most likely void your warranty! Edit. Stskeeps has cleared the situation in this post: http://talk.maemo.org/showpost.php?p...8&postcount=40 Flashing/booting a kernel image using fastboot is not possible without 'fastboot oem unlock', which will most likely void your warranty. Flashing a kernel image using root/developer mode is possible. Flashing kernel images to recovery partition instead should be more suitable for any possible experiments at least for now (until actual Jolla system recovery is added in a future update). |
Re: [HOWTO] Comprehensive Firmware Flashing Guide for Jolla
Why software changes can void hardware warranty? That was always puzzling to me. Can something actually break in the device from such thing?
|
Re: [HOWTO] Comprehensive Firmware Flashing Guide for Jolla
Quote:
|
Re: [HOWTO] Comprehensive Firmware Flashing Guide for Jolla
Quote:
10 Chars |
Re: [HOWTO] Comprehensive Firmware Flashing Guide for Jolla
Quote:
|
Re: [HOWTO] Comprehensive Firmware Flashing Guide for Jolla
Quote:
Quote:
This kernel source is useful for Jolla device only. Jolla kernel being based on a regular Qualcomm Android kernel tells us though that the Android kernel you have for your device should already be just fine for porting Sailfish OS. There's probably some config options that you need to enable as Mer requirements, but any crazy driver porting shouldn't be necessary at least on the kernel side. |
Re: [HOWTO] Comprehensive Firmware Flashing Guide for Jolla
Quote:
|
Re: [HOWTO] Comprehensive Firmware Flashing Guide for Jolla
There may indeed never be a way to flash a Jolla device -- see https://twitter.com/JollaHQ/status/413594939415859200 and ensuing discussion.
Unless there's some news in this regard, even chmoding the wrong directory will get you a Eur400 paperweight. Sigh. |
Re: [HOWTO] Comprehensive Firmware Flashing Guide for Jolla
javispedro: I don't really get why they can't offer something similar to Moslo method. On Nexus 7 you can write Moslo first with fastboot, then boot into it, and it exposes the internal storage partition, which you can mount on regular Linux, format as any filesystem you want and trivially copy the OS image there. What prevents such kind of scenario in Jolla's case?
Out of all manufacturers, Jolla are simply expected to be open for this. |
Re: [HOWTO] Comprehensive Firmware Flashing Guide for Jolla
Quote:
|
Re: [HOWTO] Comprehensive Firmware Flashing Guide for Jolla
We need a way to be able to flash to stock, I know after a month or two of tweaking the phone I'd need to flash clean.
|
Re: [HOWTO] Comprehensive Firmware Flashing Guide for Jolla
javispedro: From that table it looks like Qualcomm is just "bad for freedom". It's a pity that their SoCs are becoming one of the most popular ones. May be next time Jolla should go with Intel already and get rid of all that ARM idiocy with no drivers and closed stuff.
|
Re: [HOWTO] Comprehensive Firmware Flashing Guide for Jolla
Quote:
|
Re: [HOWTO] Comprehensive Firmware Flashing Guide for Jolla
Quote:
Not to mention the fanboys Jolla seems to have lingering around who defend the most indefensible things. At present, from rainisto's post, 2014 may see the release of flasher for developers (warranty void?) so another month(s) of waiting :) /rant |
Re: [HOWTO] Comprehensive Firmware Flashing Guide for Jolla
I don't think Jolla folks are thrilled about using Qualcomm. But they chose it for some reason.
Quote:
|
Re: [HOWTO] Comprehensive Firmware Flashing Guide for Jolla
We are working on solution where end user can reset their devices back to factory state, even if they have managed to get their devices filesystem in non bootable state (as long as btrfs works). That will most likely happen with custom recovery mode which will be installed at some coming update. More info will be available next year.
We are also investigating if we can offer real flashing solution without breaking device security, but for now the approach will most likely be to update recovery image which will allow resetting back to factory state (after querying devicelock code if that has been set). |
Re: [HOWTO] Comprehensive Firmware Flashing Guide for Jolla
So for the time being we are driving through the desert without a spare tire?
"real flashing solution without breaking device security" -> Just curious would be the disadvantage of broken security on this level? Testing the Jolla for 1 week was a good opportunity to flash my daily productivity phone to a clean and up to date state. |
Re: [HOWTO] Comprehensive Firmware Flashing Guide for Jolla
Quote:
But, quite frankly, this is dissapointing news. Initially this was expected to be a open device, based on the experience from Nokia and limitations. Perhaps my Jolla will end up in my local museum for useless stuff. Unless, of course, either Jolla comes up with a flashing solution and tools, factory images, including sources etc. Or, I can use some less available Qualcomm tools to break this thing apart. |
Re: [HOWTO] Comprehensive Firmware Flashing Guide for Jolla
Just keeping this here for further hacking
http://forum.xda-developers.com/show....php?t=1856327 |
Re: [HOWTO] Comprehensive Firmware Flashing Guide for Jolla
Quote:
Quote:
|
Re: [HOWTO] Comprehensive Firmware Flashing Guide for Jolla
One vision would be to offer imei based certificate which would allow flashing your own devices that have been registered to your Jolla account. And that would most certainly be behind some warranty void submit button. But lets see what spring will bring us, upcoming rescue image should offer solution to recover from most of the basic booting problems.
|
Re: [HOWTO] Comprehensive Firmware Flashing Guide for Jolla
Quote:
MR. JOLLA, TEAR DOWN THIS LOCKED BOOTLOADER! |
Re: [HOWTO] Comprehensive Firmware Flashing Guide for Jolla
Quote:
The IMEI solution sounds nice, but a but complicated... is it possible that the user just sets a flag "allow free flashing y/n" and that it is disabled by default? I guess for many people here the risk of bricking is higher than the risk of theft. |
Re: [HOWTO] Comprehensive Firmware Flashing Guide for Jolla
Quote:
Users beeing able to set a flag which would allow bootloader unlock would be one idea, not making any promises, but putting it in drawing board along with imei based solution. PS. Oh and forgot to mention that locked bootloader+lockcode combination is also protecting your data, so if someone steals your phone with company secrets then he is not able to access them (but with factory reset & lockcode combination device can be still wiped). Some people like that their secrets remain secret, but yes, some people dont care if their nosy wife or husband can spy them by bypassing the lockcode with bootloader commands. |
Re: [HOWTO] Comprehensive Firmware Flashing Guide for Jolla
Not even Apple with its überstrict bootloader disallows a "thief" from reflashing the device.
They'll even do it at the stores, for free, no questions asked. But for DIY guys, booting with "Home" button pressed will skip password, lock code, whatever and enter flashing mode. EDIT: Quote:
|
Re: [HOWTO] Comprehensive Firmware Flashing Guide for Jolla
Quote:
|
Re: [HOWTO] Comprehensive Firmware Flashing Guide for Jolla
Quote:
Quote:
I would expect full storage encryption for any new OS these days. Linux has support for it for a long time. And I'd rather have something quirky, like Aegis, than nothing. |
Re: [HOWTO] Comprehensive Firmware Flashing Guide for Jolla
Quote:
|
Re: [HOWTO] Comprehensive Firmware Flashing Guide for Jolla
Quote:
If somebody is able to steal my phone, I hope he can wipe it , sell it and some service is able to track it down by IMEI number. If not -and most likely- at least it doesn't need to be recycled , having my "personal little vengeance" on the thief become a burden on the environment. Features I do expect. -Full firmware flashing: -Thief having to whipe my personal data if I had entered a security code. I have no further expectations. |
Re: [HOWTO] Comprehensive Firmware Flashing Guide for Jolla
If someone gets a physical access to your device - you are already in a serious trouble. It's too late - the device is compromised and no locked bootloader will prevent nasty things. Same goes about desktop computers too. So this is hardly justifiable and always looks more like power grab than any real security reasons. In Jolla's case it's highly surprising. Having an open enough device was expected. Surely if some encryption is used it should be explicitly controlled by the user who sets it up (setting your own keys etc.). Otherwise this is completely not true:
Quote:
|
Re: [HOWTO] Comprehensive Firmware Flashing Guide for Jolla
Until Jolla opens up the bootloader I halt all my support for this closed platform.
No more updates on SMPC MPD Client and development stop of my MTB bicycle tracking application. At this point if I support android, I support an more open platform. Very sad that my device now just lays around and I cannot play with it over chistmas holidays |
Re: [HOWTO] Comprehensive Firmware Flashing Guide for Jolla
Quote:
If you think that DRM-term in mobile devices means something else then you have been eating wrong kind of mushrooms. All media files in device are unprotected and there is no Digital Rights Management frameworks device to protect media companies interest (well there are unix filesystem groups, but with developer mode its does not protect against malicious user). That is the current state of course if some media company makes native client for their media files, they might deploy their own DRM solution for example into TOH. |
Re: [HOWTO] Comprehensive Firmware Flashing Guide for Jolla
Okay, so, guys - here's the exact situation, with a large amount of gory technical details so you can understand what's going on too.
* Philosophy wise, we're into user privacy - protecting your private data against attackers, physical or applications - ie, not DRM (other people's rights..). When you've set a lock code, we try to protect your data as well as we can. A way to see this is that I really wouldn't want my private conversations to be easily extractable because I put my phone into a malicious USB charger or a competitor stole my phone off the table in Amsterdam in Ruoholahti while I was getting a drink. * The bootloader of the Jolla is 'little kernel' ("lk") which speaks the typical Android fastboot protocol, which has a open source flasher. * There's three modes of booting: - Normal booting - boot into 'boot' partition, which is a combined kernel + initrd + cmdline image - Recovery booting (volume down + power on) - doesn't do anything at the moment as there's nothing in recovery but boots into 'recovery' partition (same format as boot) - Fastboot mode (volume down + put USB in) - opens a fastboot session on USB that you can connect to with fastboot flasher There's a few toggles in the device currently: * Developer mode - which gives you full root on your device and it says, please note this: "this may void your warranty" - it does not say "this will void your warranty". The philosophy there is that if you break something with it, you get to keep both pieces - don't do anything stupid - like overwrite the boot loader, or use hardware parts beyond their specifications. - It is possible to flash kernel, recovery, etc from within device as we do this in OTA updates. If you really have to hack, do it with recovery partition until the below is in place. * OEM unlock - which determines if bootloader is open or not - no special code is required to unlock - just fastboot oem unlock, but the power comes with responsibility - and I'm not in any way as an employee recommending this. Now - one of the things about breaking things is that you can glue things together and it's all good again - About recovery: At an upcoming update (I cannot say which, because, until a feature is released, it can at any point be pulled and postponed), there will be a recovery partition installed that will 1) ask for your device lock code if you have one and 2) allow you to factory reset your device in case you've hacked it a bit too much ("unbootable brick" situation) That recovery I'd like to improve in such a way that it enables users to do full system backup/restore from microSD and other useful bits that we've learnt from maemo times is just generally nice to have (BackupMenu, BootMenu, etc). Now, about factory images. The Jolla device has all it's system data on a eMMC, one big SD card practically. This is shared with the modem part and includes things like modem firmware and other bits (take a look at the 25+ GPT partitions!). The device factory image is a combination of SailfishOS, a Qualcomm Android hardware adaptation and modem bits. The hardware adaptation and modem bits are copyrighted by Qualcomm and are put in place by the factory partner - and Jolla cannot distribute those parts. Due to a bit of a design flaw on my behalf that I hope to solve for future devices, our entire system is merged together in one big 'sailfish' BTRFS volume which makes it even harder to separate bad bits and 'good bits' and 'flash them seperately' In practice, what this means, is that we cannot provide full factory images. And that sucks. But if we do a proper recovery, backup and restore possibilities, it takes care of a lot of the trouble. I don't personally buy devices that can't be hacked. We started developing Sailfish on hackable devices - we know our roots. And I have one coming to me at full price - no rebates or special treatment. Does this clear up the situation a bit? Device is open as is explained above, but, when you hack, you'll always want to be able to restore your device. And that's what I hope the recovery will sort out unless you really screw up the device. In which case it's your own fault. |
All times are GMT. The time now is 02:36. |
vBulletin® Version 3.8.8