[PATCH] configs: Add pixel3_defconfig for Pixel 3 / 3 XL

Casey Connolly casey.connolly at linaro.org
Tue Jul 29 18:04:46 CEST 2025



On 7/29/25 17:59, David Heidelberg wrote:
> Hello Casey.
> 
> On 29/07/2025 13:52, Casey Connolly wrote:
>> Hi David,
>>
>> Thanks for the patch! Great to see more devices up and running :D
>>
>> On 7/29/25 12:39, David Heidelberg wrote:
>>> Introduce a defconfig for the Pixel 3 and Pixel 3 XL.
>>>
>>> On these devices, U-Boot must be chainloaded via Fastboot. However, 
>>> due to
>>> a Fastboot bug, U-Boot won’t start unless a specific condition is met.
>>>
>>> To work around this, U-Boot must provide a TEXT_OFFSET of 0x00080000,
>>> which allows Fastboot to successfully launch U-Boot.
>>
>> tbh I think we could just make this the default TEXT_BASE, since we 
>> don't set one in qcom_defconfig. I don't think(?) that would mess up 
>> anything else since U-Boot is relocatable anyways.
>>
>> Neil: any thoughts there?
>>
>>>
>>> Clearing the framebuffer improves the Pixel 3 experience,
>>> as it prevents collisions with the Fastboot logo left on the display.
>>
>> Does framebuffer actually work on the 3 (non-XL)? This reminds me that 
>> we should turn off dcache flush for simplefb heh
> 
> I can't confirm for Pixel 3 (at least until I meet with Petr Hodina and 
> test), but generally after defining the FB node in dts, it *should*.

I was never able to get simplefb working in Linux, nor did it work when 
i tried U-Boot on blueline, I think panel self-refresh is disabled there 
for some reason :/

> 
>>
>>>
>>> Instead of:
>>> $ make CROSS_COMPILE=aarch64-linux-gnu- O=.output qcom_defconfig 
>>> qcom- phone.config
>>> do
>>> $ make CROSS_COMPILE=aarch64-linux-gnu- O=.output pixel3_defconfig 
>>> qcom-phone.config
>>>
>>> Cc: Neil Armstrong <neil.armstrong at linaro.org>
>>> Cc: Casey Connolly <casey.connolly at linaro.org>
>>> Signed-off-by: David Heidelberg <david at ixit.cz>
>>> ---
>>>   configs/pixel3_defconfig | 13 +++++++++++++
>>>   1 file changed, 13 insertions(+)
>>>   create mode 100644 configs/pixel3_defconfig
>>
>> I think this makes more sense as a config fragment than a standalone 
>> defconfig, since it's just changing a few core options that don't have 
>> any other effects
>>
>> $ make qcom_defconfig google-blueline.config qcom-phone.config
>>
>> What do you think? Otherwise it should be renamed to 
>> qcom_google_blueline_defconfig or something like that.
> 
> I have nothing against config fragment, but the blueline and crosshatch 
> are HW wise almost identical differentiating in peripherals, so this 
> configuration should be common for both of them.
right, it can be called blueline and still used for both.

I forgot to ask, please also add a new file in doc/board/qualcomm to 
describe the Pixel 3, it should just explain the need for the 
fragment/custom defconfig and then :ref: to the generic board.rst 
documentation.

Another todo of mine is to introduce a hardware support table like 
amlogic have to document all the boards.

> 
>>
>>>
>>> diff --git a/configs/pixel3_defconfig b/configs/pixel3_defconfig
>>> new file mode 100644
>>> index 00000000000..9c0c8ca63c4
>>> --- /dev/null
>>> +++ b/configs/pixel3_defconfig
>>> @@ -0,0 +1,13 @@
>>> +# Pixel 3 has special requirement to have TEXT_BASE set for the 
>>> fastboot.
>>> +
>>> +#include "qcom_defconfig"
>>> +
>>> +# Otherwise buildman thinks this isn't an ARM platform
>>> +CONFIG_ARM=y
>>> +
>>> +# some Pixel 3 bootloaders aren't able to start without TEXT_BASE
>>> +CONFIG_TEXT_BASE=0x80080000
>>> +CONFIG_HAVE_SYS_UBOOT_START=y
>>
>> Can you explain the purpose of HAVE_SYS_UBOOT_START here? It just 
>> allows for SYS_UBOOT_START which afaict isn't used?
> 
> I re-did the testing and this option is not needed, so I'm happy to drop 
> it in next revision.

Great

> 
>>
>>> +
>>> +# fastboot logo distorts u-boot output
>>> +# CONFIG_NO_FB_CLEAR is not set
>>
>> I'd like to add this to qcom_defconfig, I was holding off until I 
>> could add an option to prevent simplefb from doing dcache flash on 
>> qcom which makes display refreshes actually fast... Would you be 
>> interested in adding a config option for that?
> 
> If you can insert this option into the qcom_defconfig, that would likely 
> make sense.

My plan is to add that after adding an option to disable dcache flush, 
since otherwise it introduces a huge delay to booting for no real reason 
on most devices.

Kind regards,
// Casey(she/her)

> 
> 
> Thank you for the review,
> David
> 
>>
>> Kind regards,// Casey (she/her)
> 



More information about the U-Boot mailing list