1
0
mirror of https://xff.cz/git/u-boot/ synced 2025-10-15 06:51:56 +02:00
Commit Graph

57976 Commits

Author SHA1 Message Date
Ondrej Jirman
6657a3d114 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-07-09 01:39:25 +02:00
Ondrej Jirman
3c416a9ede 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-07-09 01:39:25 +02:00
Ondrej Jirman
666023059d 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-07-09 01:39:24 +02:00
Ondrej Jirman
823ae00489 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-07-09 01:39:24 +02:00
Ondrej Jirman
89bd6de9e5 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-07-09 01:39:24 +02:00
Ondrej Jirman
10bad401f5 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-07-09 01:39:24 +02:00
Ondrej Jirman
17344c9975 video: pwm_backlight: Fix broken build when DM_REGULATOR is disabled
Signed-off-by: Ondrej Jirman <megous@megous.com>
2019-07-09 01:34:47 +02:00
Ondrej Jirman
3cf82704c5 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-07-09 01:34:46 +02:00
Ondrej Jirman
0f055cda88 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-07-09 01:34:46 +02:00
Ondrej Jirman
15835aa989 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-07-09 01:34:46 +02:00
Ondrej Jirman
4a56475dd9 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-07-09 01:34:46 +02:00
Ondrej Jirman
e4f32c8a22 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-07-09 01:34:46 +02:00
Ondrej Jirman
8d2162d608 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-07-09 01:34:46 +02:00
Ondrej Jirman
f5ae1e774b 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-07-09 01:34:46 +02:00
Ondrej Jirman
e50fab346b 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-07-09 01:34:46 +02:00
Ondrej Jirman
1b738c0984 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-07-09 01:34:45 +02:00
Ondrej Jirman
12574a8b9e 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-07-09 01:34:45 +02:00
Ondrej Jirman
7128e732cd 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-07-09 01:34:45 +02:00
Ondrej Jirman
266a269163 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-07-09 01:34:45 +02:00
Ondrej Jirman
221fc73a28 sunxi: defconfig: Customize configs for my Orange Pi boards
Signed-off-by: Ondrej Jirman <megous@megous.com>
2019-07-09 01:34:45 +02:00
Ondrej Jirman
070633aa26 sunxi: h3: Fix PLL1 setup to never use dividers
Kernel would lower the divider on first CLK change and cause the
lock up.
2019-07-09 01:34:45 +02:00
Ondrej Jirman
ba1c557b69 sunxi: h3: Improve PLL lock detection on H3 2019-07-09 01:34:45 +02:00
Ondrej Jirman
04b9205be0 Use snprintf in confdata.c to avoid possible buffer overflow
And gcc8 warnings.

Signed-off-by: Ondrej Jirman <megous@megous.com>
2019-07-09 01:34:44 +02:00
Ondrej Jirman
3605c23290 Disable new gcc8 warnings in Makefile
As I can't fix broken generated swig code.

Signed-off-by: Ondrej Jirman <megous@megous.com>
2019-07-09 01:34:44 +02:00
Tom Rini
e5aee22e4b Prepare v2019.07
Signed-off-by: Tom Rini <trini@konsulko.com>
2019-07-08 15:23:28 -04:00
Tom Rini
0bd2a92f54 Merge tag 'mips-fixes-for-2019.07' of https://gitlab.denx.de/u-boot/custodians/u-boot-mips
- mtmips: network stability fixes for gardena-smart-gateway
2019-07-08 07:29:33 -04:00
Weijie Gao
d24416c3fa arm: mediatek: remove arch_misc_init
The watchdog of mediatek chips is enabled by bootrom before u-boot is
running. Previously we choose to enable the wdt driver only to disable the
watchdog hardware.

Now wdt service is enabled by default. The function arch_misc_init which is
only used to disable wdt is no longer needed.

Reviewed-by: Stefan Roese <sr@denx.de>
Reviewed-by: Ryder Lee <ryder.lee@mediatek.com>
Signed-off-by: Weijie Gao <weijie.gao@mediatek.com>
2019-07-07 17:38:55 -04:00
Weijie Gao
84b2416b6a board_r: move initr_watchdog to be called after initr_serial
The initr_watchdog is currently placed before initr_serial. The
initr_watchdog calls printf and printf finally calls ops->putc of a serial
driver.

However, gd->cur_serial_dev points to a udevice allocated in board_f. The
gd->cur_serial_dev->driver->ops->putc points the the code region before
relocation.

Some serial drivers call WATCHDOG_RESET() in ops->putc. When DM is enabled
for watchdog, watchdog_reset() is called. watchdog_reset() calls get_timer
to get current timer.

On some platforms the timer driver is also a DM driver. initr_watchdog is
placed right after initr_dm, which means the timer driver hasn't been
initialized. So dm_timer_init() is called. To create a new udevice, calloc
is called.

However start from ops->putc, u-boot execution flow is redirected into the
memory region before relocation (board_f). In board_f, dlmalloc hasn't
been initialized. The call to calloc will fail, and this will cause DM to
print out an error message, and it will call printf again, causing
recursive error outputs.

This patch places initr_watchdog after initr_serial to solve this issue.

Cc: Stefan Roese <sr@denx.de>
Reviewed-by: Ryder Lee <ryder.lee@mediatek.com>
Signed-off-by: Weijie Gao <weijie.gao@mediatek.com>
Reviewed-by: Stefan Roese <sr@denx.de>
Tested-by: Frank Wunderlich <frank-w@public-files.de>
Tested-by: Suniel Mahesh <sunil.m@techveda.org>
2019-07-07 17:38:17 -04:00
Tom Rini
3c1ead9081 Merge tag 'dm-pull-7jul19' of https://gitlab.denx.de/u-boot/custodians/u-boot-dm
Fix booting for wandboard
2019-07-07 16:17:56 -04:00
Tom Rini
29e9363504 Merge tag 'video-for-2019.07' of https://gitlab.denx.de/u-boot/custodians/u-boot-video
- fix pwm backlight
2019-07-07 16:17:13 -04:00
Heinrich Schuchardt
c2f3dade2a imx6: wandboard: allow booting from MMC 2
One of the SD-CARD slots on the Wandboard Quad B1 is MMC 2. Enable it as a
boot device.

Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
Reviewed-by: Fabio Estevam <festevam@gmail.com>
2019-07-07 07:13:49 -06:00
Tom Rini
e597e5b6bc Merge https://gitlab.denx.de/u-boot/custodians/u-boot-usb
- DWC and i.MX6 fixes
2019-07-07 07:06:03 -04:00
Tom Rini
ace0d2ef2b Merge tag 'rockchip-for-v2019.07-rc5-3' of https://gitlab.denx.de/u-boot/custodians/u-boot-rockchip 2019-07-07 07:05:47 -04:00
Marc Dietrich
a2c4ef0977 video: backlight: fix pwm inversion
set_pwm() will always fail with -ENOSYS if pwm_ops set_invert() is
not implemented, leaving the backlight dark. Fix this by returning
no error if set_invert() is not implemented and no polarity change
is requested.

Fixes: 57e7775413 ("video: backlight: Parse PWM polarity cell")
Signed-off-by: Marc Dietrich <marvin24@gmx.de>
2019-07-06 23:31:52 +02:00
Tom Rini
54869e0811 Merge tag 'rpi-next-2019.07' of https://github.com/mbgg/u-boot
- fix complation error for CONFIG_USB
- update RPi3 DTBs to v5.1-rc6 state
- add defconfig for RPi3 B+
- Fix BCM2835_MBOX_TAG_TEST_PIXEL_ORDER define
2019-07-05 18:19:47 -04:00
Stefan Roese
9814fb272f mips: mt76xx: Implement new d-cache fix in last_stage_init()
With commit 06985289d4 ("watchdog: Implement generic watchdog_reset()
version") the init sequence has changed in arch_misc_init(), resulting
in a re-appearance of the d-cache issue on MT7688 boards (e.g. gardena).
When this happens, the first (or sometimes later ones as well) TFTP
command hangs and does not complete correctly. This leads to the
assumption that the d-cache is not in a clean state once the ethernet
driver is called (d-cache is used here for the buffers). The old work-
around with the cache flush somehow does not work any more now with
the new code change.

Unfortunately adding CONFIG_SYS_MALLOC_CLEAR_ON_INIT also did not fix
this issue. With v2019.07-rc3 it shows again. The time of accessing
the data seems to be very important here. It needs to be "very late"
in the boot process.

Testing has shown, that copying a 64KiB area in DDR at a very late
bootup time, directly before calling into the prompt, fixes this issue.
Flushing of the complete d-cache does not seem to necessary, as this
copy alone seems to fix this problem.

Signed-off-by: Stefan Roese <sr@denx.de>
Cc: Daniel Schwierzeck <daniel.schwierzeck@gmail.com>
2019-07-05 17:12:27 +02:00
Jean-Jacques Hiblot
3b83829ed6 usb: dwc3: Use UCLASS_NOP instead of UCLASS_MISC for the DWC3 generic glue
dwc3-generic has been broken since MISC uclass has been modified to scan DT
sub-nodes after bind.
Fixing it by a using the no-op uclass.

Signed-off-by: Jean-Jacques Hiblot <jjhiblot@ti.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
2019-07-05 14:19:41 +02:00
Jean-Jacques Hiblot
07e33711fe dm: Add a No-op uclass
This uclass is intended for devices that do not need any features from the
uclass, including binding children.
This will typically be used by devices that are used to bind child devices
but do not use dm_scan_fdt_dev() to do it. That is for example the case of
several USB wrappers that have 2 child devices (1 for device and 1 for
host) but bind only one at a any given time.

Signed-off-by: Jean-Jacques Hiblot <jjhiblot@ti.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
2019-07-05 14:19:41 +02:00
Jean-Jacques Hiblot
e445d46651 usb: dwc3-generic: remove dm_scan_fdt_dev() from the remove() callback
There is simply no reason to do that here.

Signed-off-by: Jean-Jacques Hiblot <jjhiblot@ti.com>
2019-07-05 14:19:40 +02:00
Marek Vasut
501547cec1 usb: ehci-mx6: Fix bus enumeration for DM case
The EHCI iMX6 driver is only partly converted to DT probing and
still uses a tremendous amount of hard-coded addresses. Worse,
the driver uses hard-coded SoC-model-specific base addresses, which
are derived from values protected by SoC-specific macros, hence the
driver is also compiled for a specific SoC model. Even worse, the
driver depends on specific sequential indexing of the controllers,
from which it derives offsets in the PHY and ANATOP register sets.

However, when the driver is probed from DT, the indexing is not
correct. In fact, each controller has index 0. This patch derives
the index for DT probing case from the controller base addresses,
which is not the way this should be done, however it is the least
intrusive approach, favorable this close to release.

The necessary steps to convert this driver fully to DT probing are
described inside the patch, however this should be done in the next
release and depends on iMX clock driver patches.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Abel Vesa <abel.vesa@nxp.com>
Cc: Adam Ford <aford173@gmail.com>
Cc: Fabio Estevam <festevam@gmail.com>
Cc: Ludwig Zenz <lzenz@dh-electronics.com>
Cc: Lukasz Majewski <lukma@denx.de>
Cc: Peng Fan <peng.fan@nxp.com>
Cc: Stefano Babic <sbabic@denx.de>
Cc: Vagrant Cascadian <vagrant@debian.org>
2019-07-05 14:19:40 +02:00
Andy Yan
619f002db8 rockchip: make_fit_atf.py: fix loadables property set error
Commit b238e4b00c ("rockchip: Cleanup of make_fit_atf.py.") set
firmware = "atf_1";
loadables = "uboot","atf_1","atf_2";

Actually it should be:
firmware = "atf_1";
loadables = "uboot","atf_2","atf_3";

Signed-off-by: Andy Yan <andy.yan@rock-chips.com>
Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
2019-07-05 15:57:52 +08:00
Neil Armstrong
1f83431f00 board: amlogic: add mailing-list to MAINTAINERS
Add missing mailing-list to the amlogic boards MAINTAINERS file.

Signed-off-by: Neil Armstrong <narmstrong@baylibre.com>
2019-07-04 11:36:52 -04:00
Tom Rini
de12148844 Merge tag 'u-boot-imx-20190704' of https://gitlab.denx.de/u-boot/custodians/u-boot-imx
Fixes for 2019.07
-----------------
- Wandboard
2019-07-04 11:35:51 -04:00
Fabio Estevam
4d981f5f27 wandboard: README: Adjust the U-Boot proper binary name
After the conversion to DM the U-Boot proper binary name
is 'u-boot-dtb.img', so adjust it accordingly.

Signed-off-by: Fabio Estevam <festevam@gmail.com>
2019-07-04 14:19:49 +02:00
Fabio Estevam
5b85858251 wandboard: Add FIT image support
After the transition to DM, only the mx6dl/solo wandboard
is supported.

Add FIT image support so that all the wandboard variants
can be supported, like it was prior to the DM conversion.

Successfully booted Linux on mx6q/solo/qp wandboards.

Signed-off-by: Fabio Estevam <festevam@gmail.com>
2019-07-04 14:19:49 +02:00
Fabio Estevam
df51656986 wandboard: Add mmc0 alias
Add a mmc0 alias so that U-Boot proper can associate mmc0
with the boot SD card.

Signed-off-by: Fabio Estevam <festevam@gmail.com>
2019-07-04 14:19:49 +02:00
Fabio Estevam
6b573ed0bc wandboard: Import extra wandboard devicetree files
Import wandboard devicetree files so that the mx6q and mx6qp
variants can be properly supported.

Signed-off-by: Fabio Estevam <festevam@gmail.com>
2019-07-04 14:19:48 +02:00
Fabio Estevam
b76ba47cce wandboard: Sync with devicetree files from kernel 5.1.9
Udate the wandboard devicetree files with the ones
from kernel 5.1.9.

Signed-off-by: Fabio Estevam <festevam@gmail.com>
2019-07-04 14:19:48 +02:00
Fabio Estevam
ba18fdb312 mx6: dts: Move dtbs under SoC level
Place dtbs under SoC level rather than board level.

imx6q-novena.dtb and imx6dl-wandboard-revb1.dtb were
placed under the board config option, so move them
to SoC level.

This also aligns with the kernel dts Makefile format.

Signed-off-by: Fabio Estevam <festevam@gmail.com>
2019-07-04 14:19:48 +02:00
Fabio Estevam
7e8c2190c7 mx6: dts: Keep dtb entries sorted
Keep dtb entries sorted to help adding new dtbs
in an organized form.

Signed-off-by: Fabio Estevam <festevam@gmail.com>
2019-07-04 14:19:48 +02:00