From: George Chan
It was EL3->EL2 or EL2->EL1 when boot. But in many case such chain
loading from bootloader is already run in EL1.
There is no practically way to raise EL1 to EL2. Thus theonly way
to start kernel is direct jump. This apporach is similar to KEXEC
purgatory idea but do not need t
From: George Chan
The kernel searching bootconfig will be off-by-1 and never match
thus always not found in this case.
Signed-off-by: George Chan
---
The searching will shift-by-1 and never match the bootconfig thus
always not found bootconfig this case.
Kernel:
data = (char *)init
From: George Chan
Add support for blindly appending string to bootargs env_param and let
boot process take care of it.
Signed-off-by: George Chan
---
arch/arm/mach-snapdragon/Kconfig | 11 +
arch/arm/mach-snapdragon/board.c | 97
2 files changed, 10
From: George Chan
Some vendor bootloader ignored kernel/ramdisk addr and use
their own addr. Even those addr are pointing to out-of-reach
memory block at 0, and available address start at 0x8000.
So we also need to use our own available addr for loadaddr.
Signed-off-by: George Chan
---
bo
This is a series of patches to enable chainloading LineageOS on qcom SOC.
First patch is to workaround kernel/ramdisk invalid addr by identify
its physical memory address out-of-range. Since qcom SOC usually have
0x8000 as start/base/real memory address but androidboot img
specified to around
From: George Chan
Some androidboot images have gzipped kernel so we need to reuse
extra mem block for holding gzipped boot.img, and let loadaddr
to hold unzipped kernel data. Here we choose fastboot memory for
reuse and avoid dramatically increase memory footprint.
Signed-off-by: George Chan
--
From: George Chan
Introduce a new env var 'legacy_os_boot_param' to hold legacy OS
dependent boot param.
Signed-off-by: George Chan
---
boot/Kconfig | 9 +
boot/fdt_support.c | 20 +++-
2 files changed, 28 insertions(+), 1 deletion(-)
diff --git a/boot/Kconfig b
From: George Chan
This is an example for newly introduced env_var legacy_os_boot_param
that will append 'console=ramoops' to fdt bootargs.
Signed-off-by: George Chan
---
board/qualcomm/qcom-phone.env | 4
1 file changed, 4 insertions(+)
diff --git a/board/qualcomm/qcom-phone.env b/board/
From: George Chan
In order to unzipped kernel from androidboot img, extra memory for
loadaddr is needed. So once fastboot is enabled fastboot memory also
share with loadaddr.
That can balance with memory constrain soc and android usecase.
Signed-off-by: George Chan
---
arch/arm/mach-snapdrago
This is a series of patches to enable chainloading LineageOS on qcom SOC.
Patch #1 introduce kconfig to ignore those default value and use loadaddr
instead. That workaround some androidboot image have invalid kernel/ramdisk
loadaddr.
Patch #2 override qcom soc loadaddr with fastboot_addr_r as a b
From: George Chan
Some androidboot image have invalid kernel/ramdisk load addr,
force to ignore those value and use loadaddr instead.
Suggested-by: Casey Connolly
Signed-off-by: George Chan
---
boot/Kconfig | 6 ++
boot/image-android.c | 9 ++---
2 files changed, 12 insertions
From: George Chan
Enable the workaround for whole snapdragon family.
Suggested-by: Casey Connolly
Signed-off-by: George Chan
---
arch/arm/Kconfig | 1 +
1 file changed, 1 insertion(+)
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index df373d38a55..249bd4b5bf3 100644
--- a/arch/arm/Kconfi
From: George Chan
Currently vendor/product id are both 0, and that might not as we want.
Set to some arbitary known value that we can make it work more smoothly.
Signed-off-by: George Chan
---
drivers/usb/gadget/Kconfig | 2 ++
1 file changed, 2 insertions(+)
diff --git a/drivers/usb/gadget/K
Since attempt[1] to embed android specific boot param into fdt bootargs,
a new idea is formed as to make use of env file to contain default param
value. Current code logic is already working fine, unless the priority
of param at begining is higher than at tail. From env file, bootargs is
treated im
From: George Chan
Control how default bootargs is prepended or postpended to boot param found
from androidboot img.
Signed-off-by: George Chan
---
boot/Kconfig | 8
boot/image-android.c | 10 --
2 files changed, 16 insertions(+), 2 deletions(-)
diff --git a/boot/Kcon
From: George Chan
If target u-boot img do not support androidboot v3 or greater,
abootimg might not be necessary.
aarch64-linux-gnu-ld.bfd: boot/bootmeth_android.o: in function
`boot_android_normal':
/home/user/sources/u-boot-next/boot/bootmeth_android.c:541:(.text.boot_android_normal+0xd0):
u
From: George Chan
Add basic compatible string for sc7180 family soc.
Signed-off-by: Vitalii Skorkin
Co-developed-by: George Chan
Signed-off-by: George Chan
---
drivers/iommu/qcom-hyp-smmu.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/drivers/iommu/qcom-hyp-smmu.c b/drivers/iommu/qcom
From: George Chan
Enable the workaround for whole snapdragon family.
Suggested-by: Casey Connolly
Reviewed-by: Neil Armstrong
Signed-off-by: George Chan
---
arch/arm/Kconfig | 1 +
1 file changed, 1 insertion(+)
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index fedfdb21457..f6d903b4f1e
From: George Chan
Some androidboot image have invalid kernel/ramdisk load addr,
force to ignore those value and use loadaddr instead.
There is a concern on exposing the whole memory to image loading is
dangerous. Also, since it's not always possible to change the load
addr by repacking the boot.
This is a series of patches to enable chainloading LineageOS on qcom SOC.
Patch #1 introduce kconfig to ignore those default value and use loadaddr
instead. That workaround some androidboot image have invalid kernel/ramdisk
loadaddr.
Patch #2 enable #1 for snapdragon machine.
Patch #3 override q
From: George Chan
In order to unzipped kernel from androidboot img, extra memory for
loadaddr is needed. So once fastboot is enabled fastboot memory also
share with loadaddr.
That can balance with memory constrain soc and android usecase.
Reviewed-by: Neil Armstrong
Signed-off-by: George Chan
From: George Chan
Control how default bootargs is prepended or postpended to boot param found
from androidboot img.
Signed-off-by: George Chan
---
boot/Kconfig | 7 +++
boot/image-android.c | 10 --
2 files changed, 15 insertions(+), 2 deletions(-)
diff --git a/boot/Kconf
From: George Chan
If target u-boot img do not support androidboot v3 or greater,
abootimg might not be necessary.
aarch64-linux-gnu-ld.bfd: boot/bootmeth_android.o: in function
`boot_android_normal':
/home/user/sources/u-boot-next/boot/bootmeth_android.c:541:(.text.boot_android_normal+0xd0):
u
Since attempt[1] to embed android specific boot param into fdt bootargs,
a new idea is formed as to make use of env file to contain default param
value. Current code logic is already working fine, unless the priority
of param at begining is higher than at tail. From env file, bootargs is
treated im
From: George Chan
Old logic wipe bootargs env with cmdline, new logic maintain the
value by prepending cmdline value to bootargs.
Signed-off-by: George Chan
---
boot/bootm.c | 29 -
1 file changed, 28 insertions(+), 1 deletion(-)
diff --git a/boot/bootm.c b/boot/bo
From: George Chan
Currently vendor/product id are both 0, and that might not as we want.
Set to some arbitary known value that we can make it work more smoothly.
Signed-off-by: George Chan
Reviewed-by: Neil Armstrong
---
drivers/usb/gadget/Kconfig | 2 ++
1 file changed, 2 insertions(+)
diff
From: George Chan
Add basic compatible string for sc7180 family soc.
Signed-off-by: Vitalii Skorkin
Co-developed-by: George Chan
Signed-off-by: George Chan
Reviewed-by: Casey Connolly
---
drivers/iommu/qcom-hyp-smmu.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/drivers/iommu/qcom-hy
From: George Chan
Since fastboot->bootm glue layer also need to cater with bootargs
environment, so move common logic from android_image_get_kernel into
a new function to avoid some degree of code duplication.
This new function is android_image_modify_bootargs_env to specially
cater bootargs env
From: George Chan
By default, the boot.img's cmdline are appended to the bootargs
environment.
If we take a cmdline example of:
* androidboot.hardware=warm (in U-Boot environment)
* androidboot.hardware=chilly (in boot.img's cmdline)
The resulting commandline will be:
androidboot.hardware=warm [
From: George Chan
Currently vendor/product id are both 0, and that might not as we want.
Set to some arbitary known value that we can make it work more smoothly.
Reviewed-by: Mattijs Korpershoek
Acked-by: Mattijs Korpershoek
Reviewed-by: Neil Armstrong
Signed-off-by: George Chan
---
drivers
From: George Chan
Old logic wipe bootargs env with cmdline, new logic cater the value
by prepending cmdline value to bootargs.
Signed-off-by: George Chan
---
boot/bootm.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/boot/bootm.c b/boot/bootm.c
index 4bdca22ea8c..d8e0c352
Since attempt[1] to embed android specific boot param into fdt bootargs,
a new idea is formed as to make use of env file to contain default param
value. Current code logic is already working fine, unless the priority
of param at begining is higher than at tail. From env file, bootargs is
treated im
From: George Chan
If target u-boot img do not support androidboot v3 or greater,
abootimg might not be necessary.
aarch64-linux-gnu-ld.bfd: boot/bootmeth_android.o: in function
`boot_android_normal':
/home/user/sources/u-boot-next/boot/bootmeth_android.c:541:(.text.boot_android_normal+0xd0):
u
From: George Chan
Add basic compatible string for sc7180 family soc.
Signed-off-by: Vitalii Skorkin
Co-developed-by: George Chan
Signed-off-by: George Chan
Reviewed-by: Casey Connolly
---
drivers/iommu/qcom-hyp-smmu.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/drivers/iommu/qcom-hy
From: George Chan
Since fastboot->bootm glue layer also need to cater with bootargs
environment, so move common logic from android_image_get_kernel into
a new function to avoid some degree of code duplication.
This new function is android_image_modify_bootargs_env to specially
cater bootargs env
From: George Chan
With some manual testing, when bootargs and/or cmdline from android boot
image is absent there will be some unhandled behavior happened.
So add null check to all these const char values.
Signed-off-by: George Chan
---
boot/image-android.c | 27 +--
1
From: George Chan
Add basic compatible string for sc7180 family soc.
Signed-off-by: Vitalii Skorkin
Co-developed-by: George Chan
Signed-off-by: George Chan
Reviewed-by: Casey Connolly
---
drivers/iommu/qcom-hyp-smmu.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/drivers/iommu/qcom-hy
From: George Chan
By default, the boot.img's cmdline are appended to the bootargs
environment.
If we take a cmdline example of:
* androidboot.hardware=warm (in U-Boot environment)
* androidboot.hardware=chilly (in boot.img's cmdline)
The resulting commandline will be:
androidboot.hardware=warm [
From: George Chan
Currently vendor/product id are both 0, and that might not as we want.
Set to some arbitary known value that we can make it work more smoothly.
Reviewed-by: Mattijs Korpershoek
Acked-by: Mattijs Korpershoek
Reviewed-by: Neil Armstrong
Signed-off-by: George Chan
---
drivers
From: George Chan
If target u-boot img do not support androidboot v3 or greater,
abootimg might not be necessary.
aarch64-linux-gnu-ld.bfd: boot/bootmeth_android.o: in function
`boot_android_normal':
/home/user/sources/u-boot-next/boot/bootmeth_android.c:541:(.text.boot_android_normal+0xd0):
u
From: George Chan
Old logic wipe bootargs env with cmdline, new logic cater the value
by prepending cmdline value to bootargs.
Signed-off-by: George Chan
---
boot/bootm.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/boot/bootm.c b/boot/bootm.c
index 4bdca22ea8c..d8e0c352
Since attempt[1] to embed android specific boot param into fdt bootargs,
a new idea is formed as to make use of env file to contain default param
value. Current code logic is already working fine, unless the priority
of param at begining is higher than at tail. From env file, bootargs is
treated im
42 matches
Mail list logo