1
0
mirror of https://xff.cz/git/u-boot/ synced 2025-09-01 16:52:14 +02:00
Commit Graph

60125 Commits

Author SHA1 Message Date
Joe Hershberger
af27e7568b net: Always build the string_to_enetaddr() helper
Part of the env cleanup moved this out of the environment code and into
the net code. However, this helper is sometimes needed even when the net
stack isn't included.

Move the helper to lib/net_utils.c like it's similarly-purposed
string_to_ip(). Also rename the moved function to similar naming.

Signed-off-by: Joe Hershberger <joe.hershberger@ni.com>
Reported-by: Ondrej Jirman <megous@megous.com>
2019-10-08 00:16:07 +02:00
Ondrej Jirman
223a61eefe disable more delays 2019-10-08 00:16:07 +02:00
Ondrej Jirman
95f42fef7c Quieter boot 2019-10-08 00:16:07 +02:00
Ondrej Jirman
cab51da2a1 board: sunxi: Get rid of useless initializations and 500ms boot delay
CONFIG_SATAPWR and CONFIG_MACPWR, when not used are still defined
with value "", this causes useless 500ms delay during boot when
these are not needed.

Signed-off-by: Ondrej Jirman <megous@megous.com>
2019-10-08 00:16:07 +02:00
Ondrej Jirman
557c98880f sunxi: Increase boot frequency for TBS A711
Signed-off-by: Ondrej Jirman <megous@megous.com>
2019-10-08 00:16:07 +02:00
Ondrej Jirman
801a4e0488 arm: dts: Faster mmc load on TBS A711
Missing bus-width = <4>.

Along with DMA support, we can now do 34MiB/s in u-boot.

Signed-off-by: Ondrej Jirman <megous@megous.com>
2019-10-08 00:16:07 +02:00
Ondrej Jirman
b88c1571c1 mmc: sunxi: DDR/DMA support for SPL 2019-10-08 00:16:07 +02:00
Ondrej Jirman
11bdeed84a mmc: sunxi: Cleanup, add support for DDR
With this, we can boot from eMMC with read speeds around 47.5MiB/s.

Signed-off-by: Ondrej Jirman <megous@megous.com>
2019-10-08 00:16:06 +02:00
Ondrej Jirman
3093f5e4eb mmc: sunxi: New mode needs double the frequency
Without this, we get 10 MiB/s instead of 23MiB/s on H6.

Signed-off-by: Ondrej Jirman <megous@megous.com>
2019-10-08 00:16:06 +02:00
Ondrej Jirman
e17e2dd583 mmc: sunxi: Add support for DMA transfers
Allwinner MMC controller supports DMA via internal DMA controller,
use it.

Signed-off-by: Ondrej Jirman <megous@megous.com>
2019-10-08 00:16:06 +02:00
Ondrej Jirman
e5422d9378 arm: sunxi: Fix clock_get_pll6() calculation
Off by on error. N is stored in register as N-1.

Signed-off-by: Ondrej Jirman <megous@megous.com>
2019-10-08 00:16:06 +02:00
Ondrej Jirman
fdfda1b623 Fix unreliable detection of DRAM size on Orange Pi 3
Orange Pi 3 has 2 GiB of DRAM, that sometime get misdetected
as 4 GiB, due to false negative result from mctl_mem_matches()
when detecting number of column address bits. This leads to
u-boot detecting more address bits than there are and the
boot process hangs shortly after.

In mctl_mem_matches() we need to wait for each write to finish,
separately. Without this, the check is not reliable for some
unknown reason, probably having to do with unpredictable memory
access ordering.

Patch was made with help from André Przywara, who noticed that
my original idea about detection failing due to read-back from
cache without involving DRAM was false, because data cache is
still of at the time of the DRAM size autodetection.

Signed-off-by: Ondrej Jirman <megous@megous.com>
Cc: André Przywara <andre.przywara@arm.com>
2019-10-08 00:16:06 +02:00
Ondrej Jirman
0230d626ae Trim down u-boot for Orange Pi 3 2019-10-08 00:16:06 +02:00
Ondrej Jirman
b6ba2facdf sunxi: Add basic Orange Pi 3 support 2019-10-08 00:16:06 +02:00
Ondrej Jirman
7336579b0e sunxi: Sync H6 dtsi with Linux 5.2 2019-10-08 00:16:06 +02:00
Ondrej Jirman
969eef273a pwm: sunxi-pwm: Add compatible for H3
A83T DTS from Linux uses allwinner,sun8i-h3-pwm.

So we need this driver to support it too.

Signed-off-by: Ondrej Jirman <megous@megous.com>
2019-10-08 00:16:06 +02:00
Ondrej Jirman
ca9777d8b4 axp: Support more LED blinking modes
Signed-off-by: Ondrej Jirman <megous@megous.com>
2019-10-08 00:16:06 +02:00
Ondrej Jirman
ce3c0f00c5 configs: tbs_a711: Enable axp command
Signed-off-by: Ondrej Jirman <megous@megous.com>
2019-10-08 00:16:06 +02:00
Ondrej Jirman
daee5f80bf configs: tbs_a711: Enable BMP command
Signed-off-by: Ondrej Jirman <megous@megous.com>
2019-10-08 00:16:06 +02:00
Ondrej Jirman
e7ac19d728 configs: tbs_a711: Enable LVDS/DE2
Signed-off-by: Ondrej Jirman <megous@megous.com>
2019-10-08 00:16:06 +02:00
Ondrej Jirman
6cc89ad805 configs: tbs_a711: Enable backlight
Signed-off-by: Ondrej Jirman <megous@megous.com>
2019-10-08 00:16:06 +02:00
Ondrej Jirman
3eee2590b7 configs: tbs_a711: Enable touch panel and tmenu command
Signed-off-by: Ondrej Jirman <megous@megous.com>
2019-10-08 00:16:06 +02:00
Ondrej Jirman
44849fb500 configs: tbs_a711: Enable mydbg command
Signed-off-by: Ondrej Jirman <megous@megous.com>
2019-10-08 00:16:06 +02:00
Ondrej Jirman
9dcd240a09 configs: tbs_a711: Disable boot delay
Signed-off-by: Ondrej Jirman <megous@megous.com>
2019-10-08 00:16:06 +02:00
Ondrej Jirman
cd55c2a7b8 configs: tbs_a711: Streamline u-boot by disabling DISTRO_DEFAULTS and NET
Not needed on this board.

Signed-off-by: Ondrej Jirman <megous@megous.com>
2019-10-08 00:16:06 +02:00
Ondrej Jirman
46411ff285 sunxi: Enable support for BMP image format (plain and gzip compressed)
This is needed in order to be able to use `bmp` command on sunxi boards.

Signed-off-by: Ondrej Jirman <megous@megous.com>
2019-10-08 00:16:06 +02:00
Ondrej Jirman
42faed6a52 cmd: Add axp command for reading values from AXP81x PMIC
This is useful for boot scripts to be able to decide whether to
boot or not and whether to notify the user of what is wrong.

Signed-off-by: Ondrej Jirman <megous@megous.com>
2019-10-08 00:16:06 +02:00
Ondrej Jirman
915048fb9f power: axp818: Add various helper functions for accessing AXP81x PMIC status
These will be used by the upcomming `axp` command.

Signed-off-by: Ondrej Jirman <megous@megous.com>
2019-10-08 00:16:06 +02:00
Ondrej Jirman
8099ea41e2 power: axp818: Suport DCDC6 in AXP818 2019-10-08 00:16:06 +02:00
Ondrej Jirman
dd547afc8f sunxi: dts: Add nodes for LCD panel and backlight
Device tree is slightly different from Linux kernel one, because of
different ABI for display timings between u-boot and Linux.

Signed-off-by: Ondrej Jirman <megous@megous.com>
2019-10-08 00:16:06 +02:00
Ondrej Jirman
b0ca2c87b5 sunxi: Enable DE2/LVDS support on A83T
Now that the code is in place, enable SUNXI_DE2 and LCD panel support
for MACH_SUN8I_A83T.

Signed-off-by: Ondrej Jirman <megous@megous.com>
2019-10-08 00:16:06 +02:00
Ondrej Jirman
9825574d21 video: sunxi: de2: Support A83T SoC
DE2 PLL on A83T does not have selectable parent, nor is it separately
gateable.

Signed-off-by: Ondrej Jirman <megous@megous.com>
2019-10-08 00:16:06 +02:00
Ondrej Jirman
4b8d8b4fd5 video: sunxi: Support LVDS output on A83T (mess)
This is probably useless ATM.

Except for hsync/vsync polarity (seems to be wrong in the kernel).

Signed-off-by: Ondrej Jirman <megous@megous.com>
2019-10-08 00:16:06 +02:00
Ondrej Jirman
d1528a1fa5 video: sunxi: Support LVDS output on A83T
- Enable LVDS pins (PD18-PD27)
- De-assert LVDS interface reset line
- Enable sunxi_lcd platform device for A83T
- Really disable all interrupts
- A83T does have only a simple clock gate for TCON0 clock
  (no need to select source)
- Lifted some analog circuitry setup magic from the Linux driver

Signed-off-by: Ondrej Jirman <megous@megous.com>
2019-10-08 00:16:06 +02:00
Ondrej Jirman
2ad413f13c video: sunxi: Don't build HDMI code when HDMI is not enabled
This prevents compile errors for A83T build, that does not support
HDMI yet.

Signed-off-by: Ondrej Jirman <megous@megous.com>
2019-10-08 00:16:06 +02:00
Ondrej Jirman
0948e2c976 video: pwm_backlight: Fix broken build when DM_REGULATOR is disabled
Signed-off-by: Ondrej Jirman <megous@megous.com>
2019-10-08 00:16:06 +02:00
Ondrej Jirman
a2afb248c3 sunxi: A83T doesn not have display frontend
This was probably copy pasted in from sun6i header.

Signed-off-by: Ondrej Jirman <megous@megous.com>
2019-10-08 00:16:06 +02:00
Ondrej Jirman
32359c0183 sunxi: Add clock support for pll3 and pll_de for A83T SoC
This is needed in order to support DE2 on A83T. PLL3 is for TCON0.

Signed-off-by: Ondrej Jirman <megous@megous.com>
2019-10-08 00:16:06 +02:00
Ondrej Jirman
e217462a5a sunxi: Rename pll10 to pll_de to avoid confusion
A83T SoC has PLL_DE at pll9. Change the name to make it less
confusing when we'll add DE2 support for A83T.

Signed-off-by: Ondrej Jirman <megous@megous.com>
2019-10-08 00:16:06 +02:00
Ondrej Jirman
e7367248aa cmd: Add mydbg command (A83T SoC debugging helpers)
This can be used to dump various registers and do other kinds of
mischief when developing drivers.

Signed-off-by: Ondrej Jirman <megous@megous.com>
2019-10-08 00:16:06 +02:00
Ondrej Jirman
2ee8faebca cmd: Split tmenu render/input
- so that we can show it quickly and do stuff "in the background"
  before accepting input from the user

Signed-off-by: Ondrej Jirman <megous@megous.com>
2019-10-08 00:16:06 +02:00
Ondrej Jirman
d6947fbb9f cmd: Add tmenu command for touch menu user interface
Shows a menu of items that can be controlled using touch panel.
This is useful for touch based devices like tablets to select
alternative boot options (multi-boot).

Signed-off-by: Ondrej Jirman <megous@megous.com>
2019-10-08 00:16:06 +02:00
Ondrej Jirman
5e0b617bcb dts: Add touchscreen device connected to i2c0 on TBS A711 tablet
We don't have DM support for PMIC/GPIO/regulators, so this needs
to be handled via config options and some custom board initialization
code for now.

Signed-off-by: Ondrej Jirman <megous@megous.com>
2019-10-08 00:16:06 +02:00
Ondrej Jirman
0cd38e15d6 input: Add support for edt,edt-ft5x06 touchpanel controller
This is a direct port of the Linux driver from Linux v4.18.

Signed-off-by: Ondrej Jirman <megous@megous.com>
2019-10-08 00:16:06 +02:00
Ondrej Jirman
70b90bdf06 power: axp818: Add support for configuring GPIO0 LDO voltage on AXP81x
To enable LDO on GPIO0 and set it to required voltage define
CONFIG_AXP_GPIO_LDO0_VOLT=<mV> in your defconfig. Eg. <mV> can
be 3100 for 3.1V.

Signed-off-by: Ondrej Jirman <megous@megous.com>
2019-10-08 00:16:06 +02:00
Ondrej Jirman
e719a1a593 sunxi: Add support for i2c0 pinctrl/clock initialization on Allwinner A83T
To enable I2C0 on A83T add CONFIG_I2C0_ENABLE=y to defconfig and
enable appropriate node in device tree.

Signed-off-by: Ondrej Jirman <megous@megous.com>
2019-10-08 00:16:06 +02:00
Ondrej Jirman
7547808ccd cmd: Add 'touch' command to enumerate touchpanel devices
This command can be used to list and access devices with uclass
UCLASS_TOUCHPANEL.

Signed-off-by: Ondrej Jirman <megous@megous.com>
2019-10-08 00:16:06 +02:00
Ondrej Jirman
f5b78f1b17 input: Implemented touchpanel uclass for touchpanel devices
Touchapnel devices are useful in u-boot for implementation of boot
menu user interfaces on tablets and other touch based devices.

This uclass implements start, stop and get_touches interface methods.

Signed-off-by: Ondrej Jirman <megous@megous.com>
2019-10-08 00:16:06 +02:00
Ondrej Jirman
a36a1c092a cmd: Add ariscrun command for starting CPUS
CPUS is a power management co-processor on some Allwinner SoCs (H3,
A83T).

Signed-off-by: Ondrej Jirman <megous@megous.com>
2019-10-08 00:16:06 +02:00
Ondrej Jirman
2a81bc8d69 sunxi: defconfig: Customize configs for my Orange Pi boards
Signed-off-by: Ondrej Jirman <megous@megous.com>
2019-10-08 00:16:06 +02:00