Jacek Kryszyn [Thu, 16 Nov 2023 10:10:52 +0000 (11:10 +0100)]
Allow upgrade of Tizen with dynamic partitions
This change adds support of dynamic partitions mapped from super
partition during upgrade.
Change-Id: I2bd8988646786af42ea20b55830a41a6e7cba97f
Marek Pikuła [Wed, 7 Dec 2022 12:47:19 +0000 (13:47 +0100)]
riscv64: Fix LD_LINUX path
Change-Id: I5f9d6f6f21f9b8de10813b45e587be840da3ff0e
Signed-off-by: Marek Pikuła <m.pikula@partner.samsung.com>
Seung-Woo Kim [Tue, 29 Nov 2022 02:04:42 +0000 (11:04 +0900)]
filelist: Avoid existing sh error
bootmode-recovery has sh instead of bash, so ln command returns
error like below during ramdisk-recovery image creation:
/bin/ln: creating symbolic link `/mnt/initrd-recovery/bin/sh': File exists
To avoid the error, use same bash file path and its symlink from
all recovery filelist because uniq removes same path and link
from mkinitrd-recovery.sh.
Change-Id: I0ab1ec276259576cc18537e7f5b6f9a92839f436
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
Marek Pikuła [Mon, 28 Nov 2022 10:21:59 +0000 (11:21 +0100)]
riscv64: Add support for RISC-V
Change-Id: I695351af37bc1fe4f751eeb33c14531a15360e13
Signed-off-by: Marek Pikuła <m.pikula@partner.samsung.com>
Seung-Woo Kim [Wed, 9 Nov 2022 02:06:05 +0000 (11:06 +0900)]
bootmode-fota: move verityctl script file to verbatims list
The verityctl file is shell script and not elf binary. So, no
need to list of library. Move the file to verbatim file list.
Change-Id: I8e70e76b957c4406a3dd5f76bc9025a1c615d0ae
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
Seung-Woo Kim [Thu, 3 Nov 2022 04:49:34 +0000 (13:49 +0900)]
Skip to find lib dependency for not existing file
Even not existing file is also checked the library dependency
with get_dep_libs(). Skip not to find lib dependency for not
existing file.
This removes next error message during mic image creation:
/bin/verityctl: error while loading shared libraries: /bin/verityctl: invalid ELF header
/hal/lib64/libhal-backend-tbm.so: error while loading shared libraries: /hal/lib64/libhal-backend-tbm.so: cannot open shared object file: No such file or directory
/hal/lib64/libhal-backend-tdm.so: error while loading shared libraries: /hal/lib64/libhal-backend-tdm.so: cannot open shared object file: No such file or directory
/usr/lib64/libtota.so.1.0.0: error while loading shared libraries: /usr/lib64/libtota.so.1.0.0: cannot open shared object file: No such file or directory
Change-Id: I63ced8eb476a59205b0e4b8d146f5cefd78d3b34
Reported-by: Jaehoon Chung <jh80.chung@samsung.com>
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
Seung-Woo Kim [Wed, 2 Nov 2022 09:26:39 +0000 (18:26 +0900)]
packaging: bootmode-recovery: Add exec permission to recovery-init script
For script file, exec permission is required.
This fixes following issue:
BOOTMODE is recovery
/sbin/init: line 224: /sbin/recovery-init: Permission denied
/sbin/init: line 224: exec: /sbin/recovery-init: cannot execute: Success
Change-Id: Icc9d60020ecd95de6c3e204bdbc4b8b57a284a7c
Fixes:
3a049bfebee5 ("Import system-recovery")
Reported-by: Jaehoon Chung <jh80.chung@samsung.com>
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
Jaehoon Chung [Wed, 2 Nov 2022 09:09:51 +0000 (18:09 +0900)]
packaging: remove wrong path in post
In mic, there is a warning message like the below.
/home/abuild/rpmbuild/BUILDROOT/initrd-recovery-7.5.2-0.arm/usr/libexec/initrd-recovery/progress_restart.sh: No such file or directory
%{buildroot} doesn't need to be added.
Change-Id: I14ccc927f47a1f7bf66131d33d13b6b731242d21
Signed-off-by: Jaehoon Chung <jh80.chung@samsung.com>
Mateusz Moscicki [Mon, 5 Sep 2022 12:06:09 +0000 (14:06 +0200)]
Drop unsupported upgrade type
Non-A/B upgrade is no longer supported
Change-Id: I6131df254750f2ec1c5321c289ca48c10b4b9063
Karol Lewandowski [Thu, 25 Aug 2022 14:01:12 +0000 (16:01 +0200)]
Import system-recovery
This commit imports system-recovery from commit
ea876f763b54 ("Mount hal
partition during recovery").
Following changes were made with respect to original repository:
- use initrd-recovery variables in packaging/, cmake & files
- include recovery-init as VERBATIM (not MVWITHLIBS) in 50-recovery.list
Change-Id: Ifda2a021b39b4421dd81baf690d539fbb6347504
Karol Lewandowski [Thu, 25 Aug 2022 12:53:24 +0000 (14:53 +0200)]
Drop 777 mode from /opt/data/update
There is no known rationale for such mode, change it to 775
and see if anything breaks.
Change-Id: I17d7305e77408689569ced2336e60f7bcb81c9e6
Karol Lewandowski [Thu, 25 Aug 2022 11:11:38 +0000 (13:11 +0200)]
Import initrd-fota
This commit imports initrd-fota from commit
dedb35454 ("Add explicit return statement for every
function").
Following changes were made with respect to original repository:
- add files directly under /usr/libexec/initrd-recovery with rest of initrd-recovery programs
- include fota-init.sh, fus_rw-init.sh and progress_restart.sh as VERBATIM (and not MVWITHLIBS)
in initrd include list
- clean up cmakefiles
Change-Id: Ibd7df3828e5f3df2726dc8be01303902d6d9587e
Karol Lewandowski [Thu, 25 Aug 2022 10:41:13 +0000 (12:41 +0200)]
Move unit management to separate CMakeLists
Change-Id: I04238d74cc727e2f7eb52d33745f00a4c94b015b
Karol Lewandowski [Thu, 25 Aug 2022 10:32:07 +0000 (12:32 +0200)]
Prepare for system-recovery and initrd-fota integration
This commit splits one CMakeLists separate files per directory.
Change-Id: I64afe2e9a81ec2fc297102ba3c7233d539d63f37
SangYoun Kwak [Tue, 9 Aug 2022 05:30:16 +0000 (14:30 +0900)]
Add openssl to verify root hash
Change-Id: Ib9e6d1a335b9b9005a35ad8c122532489ccfd3e6
Signed-off-by: SangYoun Kwak <sy.kwak@samsung.com>
SangYoun Kwak [Tue, 2 Aug 2022 10:49:41 +0000 (19:49 +0900)]
Modify the path of verify script and public key
Change-Id: I683cc7090435368127358eda95debc3534c32c77
Signed-off-by: SangYoun Kwak <sy.kwak@samsung.com>
Mateusz Moscicki [Mon, 25 Jul 2022 11:06:27 +0000 (13:06 +0200)]
Disable error message during data recovery for f2fs partitions
Change-Id: I87399f08fcdc462c8105950f83e0b2eeea5bd12f
SangYoun Kwak [Wed, 20 Jul 2022 05:05:54 +0000 (14:05 +0900)]
Add public key (secure-boot-public-key.pem)
Change-Id: Ie80cd31fec981bf43df21f79ef711dbb9583bae8
Signed-off-by: SangYoun Kwak <sy.kwak@samsung.com>
SangYoun Kwak [Fri, 15 Jul 2022 05:17:02 +0000 (14:17 +0900)]
Modify to copy "root hash verifying script" to initrd-recovery
Change-Id: I6775bb4ea90dbe405a1c9ace94554a89eead24e9
Signed-off-by: SangYoun Kwak <sy.kwak@samsung.com>
Seung-Woo Kim [Tue, 12 Jul 2022 05:37:20 +0000 (14:37 +0900)]
mkinitrd-recovery: Add missing /usr/bin/cp
From init of initrd-recovery, cp is used but not listed in install
list file. Add missing /usr/bin/cp.
Change-Id: I3a417da5e979728f3f10b5ce91024eba27ae04b7
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
Seung-Woo Kim [Tue, 28 Jun 2022 08:13:46 +0000 (17:13 +0900)]
For asan environment, copy with asan-runtime-env and libasan
When asan build case, asan-runtime-env and libasan package files
are required to run. For the asan environment, copy the files to
initrd-recovery dir.
Change-Id: I998c1683b430f822677b54e7c6aeeec2fff34257
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
SangYoun Kwak [Mon, 13 Jun 2022 10:49:20 +0000 (19:49 +0900)]
Delete redundant code(called blkid twice for hal)
Change-Id: I95d3b3998b7d9098e395a65be4937514e916dcc1
Signed-off-by: SangYoun Kwak <sy.kwak@samsung.com>
SangYoun Kwak [Fri, 10 Jun 2022 02:46:09 +0000 (11:46 +0900)]
Add '-l' option to blkid for optimization
Change-Id: I776afec6cb7167996d1242db0e76f5281c47cf00
Signed-off-by: SangYoun Kwak <sy.kwak@samsung.com>
SangYoun Kwak [Thu, 9 Jun 2022 05:58:56 +0000 (14:58 +0900)]
Fix to specify partition(a or b) when using blkid
Change-Id: Ic53f0eda667d393f395c4a3a0db68e5c6e7f302a
Signed-off-by: SangYoun Kwak <sy.kwak@samsung.com>
Mateusz Moscicki [Wed, 11 May 2022 08:48:50 +0000 (10:48 +0200)]
Add missing get_partition_id function
Change-Id: Ifad4249bd79c237e045bf40f3b0ec4ce136029f0
Mateusz Moscicki [Tue, 26 Apr 2022 14:08:06 +0000 (16:08 +0200)]
Add data restore for partitions checkpointed with BOW
If the data on the partition was checkpointed with BOW (e.g. during an
upgrade) and was not commited before the reboot, it should be restored
at this point, as this means that an unexpected reboot has occurred.
Change-Id: I09d116c233b26a81ff4517445decd18ad0eb5933
Mateusz Moscicki [Tue, 7 Dec 2021 14:31:49 +0000 (15:31 +0100)]
Use /run/upgrade-sysroot instead of /system
Change-Id: I48bde30e817f086d751c5da1c71f84a1cfc1f2d3
INSUN PYO [Tue, 8 Jun 2021 09:26:01 +0000 (18:26 +0900)]
reboot-param-helper: change condition path from /dev/disk/by-label/inform to /hal/etc/reboot/register_storage
Patch "reboot-param-helper: add After=basic.target dependency to mnt-inform.mount" has a hole.
If udev completion is later than the basic target, the mount will fail.
So, I change the condition path to a fixed path provided by hal.
Change-Id: I7e6aa133877c72801f76f0ae477114b8a833d6e8
Signed-off-by: INSUN PYO <insun.pyo@samsung.com>
INSUN PYO [Thu, 3 Jun 2021 05:42:42 +0000 (14:42 +0900)]
reboot-param-helper: add After=basic.target dependency to mnt-inform.mount
/dev/disk/by-label/inform is created by udev rules.
Sometimes, mnt-inform.mount is executed before the udev rule.
As a result, "ConditionPathExists=/dev/disk/by-label/inform" is fail,
and this mount is not executed.
=====================================================================================================
Jan 01 09:00:07 localhost systemd[1]: Condition check resulted in Reboot Parameter Partition being skipped.
Jan 01 09:00:08 localhost systemd[1]: Starting udev Kernel Device Manager...
=====================================================================================================p
Change-Id: Icb0ab861b13c4198051760e31146102839233adc
Dongwoo Lee [Fri, 9 Apr 2021 04:38:56 +0000 (13:38 +0900)]
init: Copy HAL layer files if required
To support the case that HAL image is separated, it checks whether the
files in the hal file list exist, and, if not, copying it from HAL
image.
Change-Id: I768a9192cf92eea80d74960429b217eb9485fb7f
Signed-off-by: Dongwoo Lee <dwoo08.lee@samsung.com>
Dongwoo Lee [Fri, 9 Apr 2021 04:38:56 +0000 (13:38 +0900)]
mkinitrd-recovery: Make required file list of HAL layer
If HAL layers are packed by a separated image, in order to provide the
latest HAL-related files, they should be copied from HAL image instead
of being accessed by mount point, and those copying should be
conducted at every boot-time.
To this end, this applies the process into do_copy checking file path
has 'hal' prefix and thus adding it to the list.
Change-Id: I144e5f1e32f6809accb0b3b3974ef6de4c8addac
Signed-off-by: Dongwoo Lee <dwoo08.lee@samsung.com>
Seung-Woo Kim [Fri, 16 Apr 2021 03:52:40 +0000 (12:52 +0900)]
reboot-param-helper: mount only when inform label exists
The reboot-param-helper is used when there is no alive register
block to inform reboot status to bootloader with inform partition
and it is device specific helper. But, currently, there is no way
to set service unit as device speicif way, so fix to mount inform
partition only when device has inform label.
Change-Id: Idfeb13852afdd3fef36cb6d1480824456ec1b7c5
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
Seung-Woo Kim [Thu, 18 Mar 2021 10:48:17 +0000 (19:48 +0900)]
Revert "Strip ELF binaries to reduce size of initrd"
Striping EH_FRAME_HDR and EH_FRAME from ELF binaries was introduced
to reduce size of initrd-recovery, and not its filesystem can be
set as squashfs, so not really required. So, reverting it.
This reverts commit
e79b400c00a373d11da258b8eb82c1ebee30a659.
Change-Id: I4db17a4def52fa2c4b31909f390160af34e6adf0
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
Seung-Woo Kim [Thu, 11 Mar 2021 08:17:13 +0000 (17:17 +0900)]
mkinitrd-recovery: Install ld.so.conf and run ldconfig for hal api libs
To support linking hal api libs, install libhal-api.conf in
/etc/ld.so.conf.d directory and /etc/ld.so.conf, and then run
ldconfig for initrd-recovery root.
Change-Id: Ibc0fcb9a546e29815e1b91cf12e331a32753439b
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
Slava Barinov [Tue, 6 Oct 2020 04:34:47 +0000 (13:34 +0900)]
Strip ELF binaries to reduce size of initrd
If depending to libpthread, eh_frame is used and for low-level
library like libgcc_s, eh_frame is required.
Strip eh_frame_hdr and eh_frame from ELF binaries to reduce size
of initrd except above cases.
Change-Id: I61f6dad841bbacb594ac953ecb154f1354c26963
Signed-off-by: Slava Barinov <v.barinov@samsung.com>
Seung-Woo Kim [Wed, 12 Aug 2020 05:41:58 +0000 (14:41 +0900)]
init: remove unnecessary variables
After system-recovery is splitted, there are unused variables in
init script. Remove the unnecessary variables.
Change-Id: Ifcf007d0850439feb0ec13c57cb926464fa73e1e
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
Seung-Woo Kim [Mon, 10 Aug 2020 02:21:48 +0000 (11:21 +0900)]
Revert "Strip ELF binaries to reduce size of initrd"
This reverts commit
c77ef6505b7a070ab0eea47b510e5ba71104b198.
The strip eh_frame/eh_frame_hdr causes arm64 ramdisk-recovery
operation fail with process segment fault, so reverting until
resolving the issue.
Crash in arm64 ramdisk-recovery.img:
Maps Information
5591def000 5591df6000 r-xp /mnt/initrd-recovery/usr/bin/flash-manager
55a758d000 55a75ae000 rw-p [heap]
7f8a9b0000 7f8a9ba000 r-xp /mnt/initrd-recovery/usr/lib64/libconfig.so.8
7f8a9cd000 7f8ab18000 r-xp /mnt/initrd-recovery/usr/lib64/libc.so.6
7f8ab30000 7f8ab41000 r-xp /mnt/initrd-recovery/usr/lib64/libgcc_s.so.1
7f8ab55000 7f8ab69000 r-xp /mnt/initrd-recovery/usr/lib64/libusbgx.so.1
7f8ab7f000 7f8abc4000 r-xp /mnt/initrd-recovery/usr/lib64/libblkid.so.1
7f8abe5000 7f8abfc000 r-xp /mnt/initrd-recovery/usr/lib64/libpthread.so.0
7f8ac15000 7f8ac32000 r-xp /mnt/initrd-recovery/usr/lib/ld-linux-aarch64.so.1
7fcb282000 7fcb2a3000 rw-p [stack]
End of Maps Information
Change-Id: Idfebc27fea087d90845a1b73189451b2e81e9bb6
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
Slava Barinov [Thu, 30 Jul 2020 08:22:45 +0000 (11:22 +0300)]
Strip ELF binaries to reduce size of initrd
Change-Id: Ib3ee6925578a1ea060a4d61156d0fcfd04667c76
Signed-off-by: Slava Barinov <v.barinov@samsung.com>
Seung-Woo Kim [Tue, 16 Jun 2020 10:47:26 +0000 (19:47 +0900)]
packaging: remove image creating directory in _libdir
Some sub packages of initrd-recovery install files in %{_libdir}
and it is not remove after creating ramdisk-recovery.img. Remove
the image creating directory in the %{_libdir}.
Note: this removes %{_libdir}/initrd-recovery/ which has fota and
flash directories in rootfs.
Change-Id: Iab1decb2b7f3a1e1e38643e6e8698fbc5a9708e8
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
Dongwoo Lee [Thu, 11 Jun 2020 02:32:07 +0000 (11:32 +0900)]
mkinitrd-recovery: Add default PATH variable
To mitigate security vulnerability, this defines default PATH
variable explicitly.
Change-Id: Ie12be4367fef7fd20b421fb34e0ede3cadaf2065
Signed-off-by: Dongwoo Lee <dwoo08.lee@samsung.com>
Seung-Woo Kim [Thu, 4 Jun 2020 11:35:06 +0000 (20:35 +0900)]
postscript: apply arch difference
Each architecture has different ld.so path. Apply arch difference
for postscript to create image. Also, add 64-bit only file list to
create lib64.
Change-Id: I1b95a2ec91dade8c2fd16bbdee892ea595b80c6c
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
Seung-Woo Kim [Fri, 24 Apr 2020 09:50:16 +0000 (18:50 +0900)]
packaging: Enable aarch64 build
The initrd-recovery package is script only package, and it can be
used widely for embedded boards, so there is no reason not to
build in aarch64. Enable aarch64 build.
Change-Id: I81e235879095fd5495d23ac58d64f9f47fb2d5c9
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
Dongwoo Lee [Tue, 13 Aug 2019 09:07:49 +0000 (18:07 +0900)]
Remove useless file and directories after partition creation
After initrd-recovery partition is created, a mkinitrd_recovery.sh
script as well as initrd-recovery directories are useless on rootfs
partition. This patch removes those after partition creation is done.
Change-Id: I4bda7338cddd62204e9c8473b5411de51be73f9a
Signed-off-by: Dongwoo Lee <dwoo08.lee@samsung.com>
Kichan Kwon [Mon, 24 Jun 2019 08:38:48 +0000 (17:38 +0900)]
Apply ASLR with minireboot
Change-Id: I72f553ab1a4ddc3ea3f5065f6baedc6836d2192e
Signed-off-by: Kichan Kwon <k_c.kwon@samsung.com>
Kichan Kwon [Mon, 11 Jun 2018 01:27:49 +0000 (10:27 +0900)]
release : 0.3.0
Change-Id: If0105e80f5555a36ba608682134aa39e341424dd
Signed-off-by: Kichan Kwon <k_c.kwon@samsung.com>
Kichan Kwon [Fri, 11 May 2018 01:43:50 +0000 (10:43 +0900)]
Detach system-recovery
- It will have its own repository
Change-Id: Ia2fdcb40dcac378ac910d9112b89a662136b2a0b
Signed-off-by: Kichan Kwon <k_c.kwon@samsung.com>
Seung-Woo Kim [Thu, 10 May 2018 03:59:41 +0000 (12:59 +0900)]
init: handle non-existing bootmode init file
If there is no bootmode init file, init fails to execute the file
and pid 1 exit with error causes kernel panic. Handle non-existing
bootmode file by rebooting.
Change-Id: I7b233a7ae57a8be98693cf02b52315cf1bca3bde
Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
Kunhoon Baik [Fri, 20 Oct 2017 08:07:58 +0000 (17:07 +0900)]
Fix minor issue for flexibility
Change-Id: I4fa716b39a9ff8692a1538b3498473fae98d0d3e
Sunmin Lee [Tue, 28 Nov 2017 01:12:45 +0000 (10:12 +0900)]
Revise package dependencies
- system-recovery requires initrd-recovery, not vice versa.
- The name parameter was used incorrectly: compat package is for
system-recovery, not initrd-recovery
Change-Id: I5a08820d16de6a63473df05cc063ac26019df7f8
Signed-off-by: Sunmin Lee <sunm.lee@samsung.com>
Kichan Kwon [Wed, 18 Oct 2017 00:58:37 +0000 (09:58 +0900)]
librui : check invalid frame count
Change-Id: Ide15d8f11bfc4c2ada4f2bdaf33bfe479a7f58bd
Signed-off-by: Kichan Kwon <k_c.kwon@samsung.com>
Signed-off-by: Paweł Szewczyk <p.szewczyk@samsung.com>
Karol Lewandowski [Fri, 8 Dec 2017 09:53:02 +0000 (10:53 +0100)]
Fix possible null-pointer dereferences
Change-Id: Ifef7e0a02ee9c8a993dd060d51bb0a3420603f54
Signed-off-by: Paweł Szewczyk <p.szewczyk@samsung.com>
Kunhoon Baik [Thu, 19 Oct 2017 11:44:19 +0000 (20:44 +0900)]
Remove unused vconf codes
Change-Id: Ib5e1d27e406183faa7facc86a30245e989fe1976
Sunmin Lee [Mon, 18 Sep 2017 11:16:07 +0000 (20:16 +0900)]
Mount inform partition at ramdisk-recovery
In case of using inform partition for reboot parameter,
the kernel requires inform path in ramdisk-recovery, too.
The inform partition should be mounted in recovery mode
to clean up reboot parameter properly at the end of each mode.
Change-Id: Ia955cf71b282d64e7e729a46d61259bf8bbd8cf3
Signed-off-by: Sunmin Lee <sunm.lee@samsung.com>
Paweł Szewczyk [Fri, 13 Oct 2017 12:25:22 +0000 (14:25 +0200)]
Add script for setting recovery action in configuration file
Change-Id: Iaabe92b731d39af19252e20b351f2293009091bf
Signed-off-by: Paweł Szewczyk <p.szewczyk@samsung.com>
Paweł Szewczyk [Mon, 16 Oct 2017 11:54:56 +0000 (13:54 +0200)]
rui: Fix menu description reset
Descriptions in submenus were reset to main menu value. This commit
fixes it.
Change-Id: I75e503d7cfd0515caa7a25956169cc892d6431aa
Signed-off-by: Paweł Szewczyk <p.szewczyk@samsung.com>
Paweł Szewczyk [Fri, 13 Oct 2017 11:51:23 +0000 (13:51 +0200)]
Exit after action
Change-Id: Ie2d1266e086c4523ad7ef7041102ef7f65d166f6
Signed-off-by: Paweł Szewczyk <p.szewczyk@samsung.com>
Paweł Szewczyk [Thu, 12 Oct 2017 14:01:39 +0000 (16:01 +0200)]
Read recovery action from file in /opt/
Change-Id: I11dadf1d89bf965b7a63aee712a5dfdecd765bf0
Signed-off-by: Paweł Szewczyk <p.szewczyk@samsung.com>
Paweł Szewczyk [Thu, 5 Oct 2017 15:20:02 +0000 (17:20 +0200)]
Do default action in RUI mode
Change-Id: I4ffd0b5b9a415498c1de1a0e15af205ada268a5d
Signed-off-by: Paweł Szewczyk <p.szewczyk@samsung.com>
Karol Lewandowski [Fri, 13 Oct 2017 12:42:11 +0000 (14:42 +0200)]
init: Set PATH to sane value
Change-Id: I0598f285fac401d685e83700b420ba607b313731
Karol Lewandowski [Fri, 13 Oct 2017 10:50:06 +0000 (12:50 +0200)]
Drop standard directory symlinks from system-recovery.list
These symlinks are always guaranteed to be provided by
mkinitrd-recovery.sh.
Change-Id: Ib1e46967a09c43c6c79c564686705e6ef757b7a2
Signed-off-by: Karol Lewandowski <k.lewandowsk@samsung.com>
Łukasz Stelmach [Thu, 12 Oct 2017 14:14:33 +0000 (16:14 +0200)]
Keep system-recovery.cfg on rootfs for reference
Change-Id: Idc659ed3828402afcc05bd89d291cb7ed24fbb27
Signed-off-by: Łukasz Stelmach <l.stelmach@samsung.com>
Karol Lewandowski [Fri, 13 Oct 2017 08:26:01 +0000 (10:26 +0200)]
Drop unneeded tools from image
These tools are no longer used and can be safely removed.
Change-Id: Ib3192bd2867011e1d008785fa09901281521e2d6
Karol Lewandowski [Fri, 13 Oct 2017 08:22:24 +0000 (10:22 +0200)]
init: Parse kernel command line without external tools
/proc/cmdline can be easily parsed using shell built-ins,
allowing to remove potentially unnecessary tools from image
(tr, cut, grep).
Change-Id: I2c971d3503700b2ca105773552e452ded4e65098
Signed-off-by: Karol Lewandowski <k.lewandowsk@samsung.com>
Karol Lewandowski [Thu, 12 Oct 2017 15:00:31 +0000 (17:00 +0200)]
Fix bashisms in scripts
This commit fixes bashisms in the script itself to ensure these
can be correctly executed under any POSIX compliant Bourne Shell
(eg. dash(1))
Change-Id: I3efb4b91483a3948a9a3270c9783461bb5d53f92
Karol Lewandowski [Thu, 12 Oct 2017 11:44:55 +0000 (13:44 +0200)]
recovery-init: Always use blkid(1) to find partitions
blkid(1) was introduced to find partition based on fs
label for targets that do not support partlabel (eg. rpi3).
However, blkid(1) can also search using partlabel, so it's
the only utility it's needed to locate partitions.
This commit makes recovery-init always use blkid(1),
allowing partx(1) to be dropped.
Change-Id: Ie021210b3c9ff359d1b112d51479920c1ba55c38
Łukasz Stelmach [Mon, 25 Sep 2017 10:19:16 +0000 (12:19 +0200)]
More parametric paths (see
3f5af8f5)
Change-Id: Ib2699d1e1e685d4bec506dc561ca640e1924c739
Signed-off-by: Łukasz Stelmach <l.stelmach@samsung.com>
Karol Lewandowski [Fri, 6 Oct 2017 08:58:00 +0000 (10:58 +0200)]
mkinitrd-recovery: Fix incorrect library dependency verification
Without this commit dependencies for objects listed in MVWITHLIBS
were not correctly generated.
Change-Id: Ia7c99a6a6afbf8a83ef66c84da562ecbe7495d27
Karol Lewandowski [Fri, 6 Oct 2017 09:41:22 +0000 (11:41 +0200)]
init: Fix runtime gui/non-gui mode selection
Commit
b8e88cebfe ("Install system-recovery binary for both gui
& non-gui platforms") enabled installing system-recovery binary
for headless profile (in addition to headed). In result one
recovery-init script was installed, which included build-time
generated check if GUI is enabled or not.
This commit changes gui/non-gui checking to happen at run time
- based on what is actually available on initrd-recovery image.
GUI variant is preferred, and it will be selected by default -
however, if it's not available non-gui will be tried instead.
Change-Id: I4d07a9e0979c2cff980fa21f909aaba9aa828d2f
Karol Lewandowski [Fri, 29 Sep 2017 07:50:28 +0000 (09:50 +0200)]
Add forced reboot option to screen
Forced reboot by longrpressing confirm button can be now allowed for single screen in its configuration.
Change-Id: I2d1ce0ceafbb84be190bc5c4ffad2784319e0439
Signed-off-by: Paweł Szewczyk <p.szewczyk@samsung.com>
[ Removed no longer used recovery_rui_screen_id enum ]
Signed-off-by: Karol Lewandowski <k.lewandowsk@samsung.com>
Karol Lewandowski [Fri, 29 Sep 2017 08:58:03 +0000 (10:58 +0200)]
Install system-recovery binary for both gui & non-gui platforms
Following changes were applied:
* system-recovery is build twice for gui & non-gui versions
* recovery-init is same for both gui & non-gui
It detects environment and exectues appropriate system-recovery binary.
* needless %post/pre scripts were removed
It should be enough to install differently named files directly from
package.
* additional code reorganization applied to source tree
Needed to separate gui & non-gui variants.
Change-Id: I13302d0cb5f441ef2a28d040599823f1503f61e3
Karol Lewandowski [Wed, 27 Sep 2017 14:21:53 +0000 (16:21 +0200)]
Drop dead code
Commit
f2a1870dd ("Parse configuration file") moved configuration
to files. This commit removes leftover unused code & defines.
Change-Id: Id5663185df0f9144be4822fd193f053cb5c29251
Karol Lewandowski [Fri, 29 Sep 2017 07:54:55 +0000 (09:54 +0200)]
Allow selecting headless action via tizen.recovery key in kernel command line
Change-Id: I6035a4ab1e99fbce64881bd6fe943355a67d5352
Paweł Szewczyk [Fri, 15 Sep 2017 10:44:43 +0000 (12:44 +0200)]
Handle headless action
Change-Id: Iae7568963986d017b4b75efd4a4bce197fb8a119
Signed-off-by: Paweł Szewczyk <p.szewczyk@samsung.com>
Paweł Szewczyk [Fri, 15 Sep 2017 10:13:14 +0000 (12:13 +0200)]
separate action handlers
Change-Id: I6aaefb5f030e5cc1bbadd0bc60269fe4c75e3e3c
Signed-off-by: Paweł Szewczyk <p.szewczyk@samsung.com>
Łukasz Stelmach [Mon, 25 Sep 2017 10:41:11 +0000 (12:41 +0200)]
Fix logging marco name to fix build break
Change-Id: I623725fbe2cc698147de882f5181fc4b413b5784
Signed-off-by: Łukasz Stelmach <l.stelmach@samsung.com>
Paweł Szewczyk [Fri, 8 Sep 2017 12:32:06 +0000 (14:32 +0200)]
Parse configuration file
Get GUI gonfiguration from file and parse it using libconfig.
Change-Id: I682a81eee1bc1db038bf53b19981a533f48c6d44
Signed-off-by: Paweł Szewczyk <p.szewczyk@samsung.com>
Signed-off-by: Łukasz Stelmach <l.stelmach@samsung.com>
Łukasz Stelmach [Fri, 15 Sep 2017 13:06:45 +0000 (15:06 +0200)]
Revert "Remove unnecessary shared log codes"
This reverts commit
be1e9a33516c14ccc5815c7e9584b00bbf785a52.
Change-Id: I20c04d58dc0833e72d8ce2a5e0dcfedd0fa669a6
Paweł Szewczyk [Wed, 13 Sep 2017 12:16:20 +0000 (14:16 +0200)]
Move definition of several directory paths to configure.ac
Define directories where data and programmes are installed in
configure.ac and refer to those values in scripts and programmes.
Move executable programmes and scripts from /usr/lib to /usr/libexec.
Change-Id: Ibef97c88497d9d5b56b4a9a1eb3ea333927b7df3
Signed-off-by: Łukasz Stelmach <l.stelmach@samsung.com>
Łukasz Stelmach [Thu, 7 Sep 2017 08:45:04 +0000 (10:45 +0200)]
Install TDM/TBM adaptation libraries on the spreadtrum platform
Change-Id: I290efc5323a4f77f8d7a8137597e5269266f8761
Signed-off-by: Łukasz Stelmach <l.stelmach@samsung.com>
Łukasz Stelmach [Tue, 12 Sep 2017 14:17:14 +0000 (16:17 +0200)]
librui: Draw UI using libtdm/libtbm
Change-Id: I0fc2525539e17394de932e668a30f98717bc544f
Signed-off-by: Łukasz Stelmach <l.stelmach@samsung.com>
[ Applied Tizen Coding style ]
Signed-off-by: Karol Lewandowski <k.lewandowsk@samsung.com>
Karol Lewandowski [Fri, 15 Sep 2017 10:50:13 +0000 (12:50 +0200)]
librui: Make color handling component-order independent
Change-Id: I68e4aff7d7bb358d2db176515d510a87fe93b007
Signed-off-by: Łukasz Stelmach <l.stelmach@samsung.com>
[ Applied Tizen Coding style ]
Signed-off-by: Karol Lewandowski <k.lewandowsk@samsung.com>
Łukasz Stelmach [Tue, 29 Aug 2017 12:52:40 +0000 (14:52 +0200)]
librui: Exit event loop upon INT signal
Change-Id: I93fc569ef2b2f482553a0acd8243278a69625a77
Signed-off-by: Łukasz Stelmach <l.stelmach@samsung.com>
[ Applied Tizen Coding style ]
Signed-off-by: Karol Lewandowski <k.lewandowsk@samsung.com>
Kunhoon Baik [Fri, 15 Sep 2017 05:09:34 +0000 (14:09 +0900)]
Remove unnecessary error message conversion.
Change-Id: I78415d5a941a22c947666cb6afe4dde65082e111
Kunhoon Baik [Fri, 15 Sep 2017 04:44:58 +0000 (13:44 +0900)]
Remove unnecessary shared log codes
Change-Id: I59fee7c49443637602a3bb533d8e5493f18436fa
Kunhoon Baik [Thu, 14 Sep 2017 10:20:15 +0000 (19:20 +0900)]
Apply Tizen Coding Convention & Solving Static Analysis issues
Change-Id: I154165c4320ef0c23e7152e0ae04e77b1f00ae92
Łukasz Stelmach [Tue, 29 Aug 2017 14:06:17 +0000 (14:06 +0000)]
Merge "Create .gitignore file" into tizen
Sunmin Lee [Mon, 28 Aug 2017 01:43:31 +0000 (10:43 +0900)]
New package: reboot-param-helper
Reboot parameter is a necessary function for recovery/upgrade.
However, some targets do not support for this like inform register.
For these targets, introduce inform partition for reboot parameter.
Change-Id: I658409dc83933b3e7511402c88f2b67bffa3312b
Signed-off-by: Sunmin Lee <sunm.lee@samsung.com>
Sunmin Lee [Tue, 22 Aug 2017 08:55:53 +0000 (17:55 +0900)]
Release version 0.1.3
Below patches were merged:
- Remove awk dependency
- Support blkid also in mkinitrd script
- Remove unused codes: mount blk partitions
Change-Id: I204c24c3a0d361aeaf0b95f7fb9c66404cad1431
Signed-off-by: Sunmin Lee <sunm.lee@samsung.com>
Łukasz Stelmach [Mon, 21 Aug 2017 12:01:37 +0000 (14:01 +0200)]
Create .gitignore file
Change-Id: I9e0db6d814472fad7064b71185da65a897922ce0
Signed-off-by: Łukasz Stelmach <l.stelmach@samsung.com>
Sunmin Lee [Tue, 22 Aug 2017 02:06:55 +0000 (02:06 +0000)]
Merge "Remove unused codes: mount blk partitions" into tizen
Sunmin Lee [Tue, 22 Aug 2017 02:06:42 +0000 (02:06 +0000)]
Merge "Support blkid also in mkinitrd script" into tizen
Sunmin Lee [Tue, 22 Aug 2017 02:06:27 +0000 (02:06 +0000)]
Merge "Remove awk dependency" into tizen
Sunmin Lee [Tue, 22 Aug 2017 00:16:48 +0000 (09:16 +0900)]
Remove unused codes: mount blk partitions
initrd-recovery doesn't mount block partitions in main
operation. Remove unused codes from init script.
Change-Id: I1a6d7683b3648ec8aff9a329a132cf717c10af72
Signed-off-by: Sunmin Lee <sunm.lee@samsung.com>
Youngjae Shin [Mon, 21 Aug 2017 23:24:04 +0000 (08:24 +0900)]
revise installing a license file
Change-Id: I447784b66c35f0680a1b303d266e73c81bc33c8d
Sunmin Lee [Wed, 16 Aug 2017 09:19:59 +0000 (18:19 +0900)]
Support blkid also in mkinitrd script
mkinitrd-recovery refers to partition info when it called
in target. For the target without partx, this script also
supports same operation using blkid.
Change-Id: I7828f9bcf0c7ae219739c509226ae4349fe845a5
Signed-off-by: Sunmin Lee <sunm.lee@samsung.com>
Sunmin Lee [Thu, 10 Aug 2017 11:39:33 +0000 (20:39 +0900)]
Remove awk dependency
To be optimized, get awk package out of initrd-recovery.
So, make the same code using coreutil commands instead of awk.
Change-Id: Id8fd9124e1ce5b4d08468f39c5fad6d144957188
Signed-off-by: Sunmin Lee <sunm.lee@samsung.com>
Kunhoon Baik [Wed, 9 Aug 2017 06:53:02 +0000 (15:53 +0900)]
Add new file copy mode for recovery patition - MVWITHLIBS
To reduce rootfs size, we need to erase some redundant files.
Especially, files used in just recovery partition should be removed from rootfs.
Until now, the existing file copy mode of current recovery partition creation support followings.
1) Symlink creation in just recovery partition
2) Copy binary with related lib (related lib is copied)
3) Copy just the binary without related lib
:
However, there are no copy mode - Move binary with related lib (related lib is copied)
If recovery partition has such copy mode, some binary can be removed from rootfs.
This patch supports such requirement, and modify existing scripts
Change-Id: Ib995794e2cba798093b0ccfb859037ccb0f07c06
Łukasz Stelmach [Tue, 1 Aug 2017 14:52:46 +0000 (16:52 +0200)]
Build GUI and non-GUI binaries without copying source files
Change-Id: I82e4d24b44b5039091f8f0e06a4c094718bd8165
Signed-off-by: Łukasz Stelmach <l.stelmach@samsung.com>
Kunhoon Baik [Mon, 24 Jul 2017 14:12:00 +0000 (23:12 +0900)]
Fix Second Framebuffer's position calculation
System recovery uses double framebuffer when frame buffer backend is enabled.
The second framebuffer should be correctly calcualted with fix.line_length because it is real size of row buffer.
Thus, for correct calculation, this patch get fixed screen from kernel with FBIOGET_FSCREENINFO ioctl.
Change-Id: I3f4640ec60e2db24724a551e1b5f510c2d2791db
Sunmin Lee [Tue, 25 Jul 2017 23:10:33 +0000 (23:10 +0000)]
Merge "Divide system-recovery list file according to GUI" into tizen