summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2018-04-07drivers: serial: remove nonexisting initialisation functionsChristophe Leroy2-95/+0
This patch removes call of serial initialisation functions that are not implemented anymore. Signed-off-by: Christophe Leroy <christophe.leroy@c-s.fr>
2018-04-07am335x: am335x_evm_usbspl_defconfig: NETCONSOLEJason Kridner1-0/+7
Enable NETCONSOLE by default. Still requires changes to the boot environment to enable on the platform. Signed-of-by: Jason Kridner <jdk@ti.com> Cc: Tom Rini <trini@konsulko.com> Reviewed-by: Tom Rini <trini@konsulko.com>
2018-04-07Handle NETCONSOLE and SPL enabledJason Kridner1-3/+3
NETCONSOLE isn't compiled in with SPL, so the include file needs to recognize that. Signed-off-by: Jason Kridner <jdk@ti.com> Cc: Joe Hershberger <joe.hershberger@ni.com> Reviewed-by: Tom Rini <trini@konsulko.com> Acked-by: Joe Hershberger <joe.hershberger@ni.com>
2018-04-07Add support for BeagleBoard.org PocketBeagleJason Kridner4-5/+17
Texas Instruments AM3358 based low-cost board using Octavo Systems OSD3358 SIP with built-in TPS65217 PMIC and 512MB DDR3. Board features small 35mm x 55mm size, high-speed USB OTG, microSD and 72 0.1" expansion header pins with 2xSPI, 2xI2C, 2xUART, USB, 8xADC, up-to-44 GPIO, PRU pins and much more. https://beagleboard.org/pocket This was tested using the am335x_evm_usbspl_defconfig. Note that MII pins are enabled despite not having Ethernet on this board. This avoids an issue where otherwise many timeout errors would be generated. See https://e2e.ti.com/support/arm/sitara_arm/f/791/t/298976 for some related discussion. Signed-off-by: Jason Kridner <jdk@ti.com> Cc: Tom Rini <trini@konsulko.com> Reviewed-by: Tom Rini <trini@konsulko.com>
2018-04-07Migrate CONFIG_SPL_AM33XX_ENABLE_RTC32K_OSCAlex Kiernan23-12/+19
This converts CONFIG_SPL_AM33XX_ENABLE_RTC32K_OSC to Kconfig Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
2018-04-06powerpc: mpc8xx: move watchdog into drivers/watchdogChristophe Leroy5-13/+27
In preparation of DM watchdog, move basic actions into drivers/watchdog Signed-off-by: Christophe Leroy <christophe.leroy@c-s.fr>
2018-04-06powerpc: mpc8xx: cleaning up watchdogChristophe Leroy5-27/+9
In preparation of migration to DM watchdog, clean up a bit. The 8xx watchdog really is a HW watchdog, so declare it as is then it goes through Kconfig And the watchdog reset doesn't mind getting interrupted, so no need to disable interrupts Signed-off-by: Christophe Leroy <christophe.leroy@c-s.fr>
2018-04-06powerpc: mpc8xx: refactorise reginfoChristophe Leroy3-72/+20
reginfo is redundant with some of the commands in immap.c, so move reginfo into that file and remove duplicated info. Signed-off-by: Christophe Leroy <christophe.leroy@c-s.fr>
2018-04-06board: MCR3000: Use smaller flash sector for environmentChristophe Leroy2-6/+6
Latest versions of u-boot have increased in size and require more than the 256kb allocated to it. The MCR3000 board is equipped with an AM29LV160DB boot flash which is organised as follows: - One 16kb block - Two 8kb block - One 32kb block - Thirty one 64kb blocks At the time being, u-boot is a single piece occupying the 256 first kbytes, then the environment is stored in the following 64kb block The environment being quite tiny, we save one 64kb block by embedding the environment in the first 8kb block, hence allowing to increase the monitor size to 320kb. Signed-off-by: Christophe Leroy <christophe.leroy@c-s.fr>
2018-04-06common: env_embedded: allow fine placement of environment objectChristophe Leroy2-5/+5
Commit 7653942b10e9e ("common/env_embedded.c: drop support for CONFIG_SYS_USE_PPCENV") dropped the .ppcenv section which was used in linking scripts to allow fine placement of embedded environment sections. This implies that GCC randomly places objects from env/embedded.o and environment is not guaranteed to be located at the correct address: 04003df8 g F .text 00000038 mii_init 04004000 g O .text 00000004 env_size 04004004 g O .text 00002000 environment 04006004 g F .text 00000040 .hidden __lshrdi3 This patch restores this capability by allocating each object marked with __UBOOT_ENV_SECTION__ into a different section. Hence 'environment' will be alone in .text.environment, allowing a fine placement in u-boot.lds with: . = DEFINED(env_offset) ? env_offset : .; env/embedded.o (.text.environment) Fixes: 7653942b10e9e ("common/env_embedded.c: drop support for CONFIG_SYS_USE_PPCENV") Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Christophe Leroy <christophe.leroy@c-s.fr>
2018-04-06board: MCR3000: cleanup configChristophe Leroy4-33/+8
Some config is redundant with Kconfig. Fix it. Also remove unused configs Move SDRAM_MAX_SIZE in the only place it is used include/environment.h already defines CONFIG_ENV_SIZE from CONFIG_ENV_SECT_SIZE and defines CONFIG_ENV_ADDR as (CONFIG_SYS_FLASH_BASE + CONFIG_ENV_OFFSET) remove BOOTARGS as bootargs is set by the different boot commands Fix CONFIG_SYS_INIT_RAM_ADDR and CONFIG_SYS_INIT_RAM_SIZE to be in line with CPM DPRAM organisation Remove CONFIG_SYS_GBL_DATA_SIZE, CONFIG_SYS_GBL_DATA_OFFSET and CONFIG_SYS_INIT_SP_OFFSET which are unused Signed-off-by: Christophe Leroy <christophe.leroy@c-s.fr>
2018-04-06board: MCR3000: replace mtd->priv by mtd_to_nand()Christophe Leroy1-1/+1
Since commit 17cb4b8f327eb ("mtd: nand: Add+use mtd_to/from_nand and nand_get/set_controller_data"), mtd_to_nand() has to be used instead of mtd->priv Signed-off-by: Christophe Leroy <christophe.leroy@c-s.fr>
2018-04-06powerpc: mpc8xx: initialisation of initial RAMChristophe Leroy1-7/+20
u-boot requires some RAM at startup, to store global data structure. RAM is also needed when we migrate to DM for some initial malloc This patch implements the proper init of that RAM by calling board_init_f_alloc_reserve() and board_init_f_init_reserve() Signed-off-by: Christophe Leroy <christophe.leroy@c-s.fr>
2018-04-06powerpc: mpc8xx: redistribute data in CPM dpramChristophe Leroy1-8/+8
Some malloc memory is needed at startup for DM model. Lets reorganise the use of the CPM dpram. The MPC866/885 dpram, we have 8kbytes dual port RAM, which is usable as: IMMR + 0x2000..0x2800: BD/Data/Microcode IMMR + 0x2800..0x2e00: BD/Data IMMR + 0x2e00..0x3800: BD/Data/Microcode IMMR + 0x3800..0x3a00: BD/Data IMMR + 0x3a00..0x3c00: BD/Data/Microcode IMMR + 0x3c00..0x4000: Parameters for the Peripheral Controllers Lets reallocate all BDs in the 3800..3a00 area and give the full 2800..2e00 for dynamic RAM allocation including global data That way, the microcode areas remain available if needed one day. Signed-off-by: Christophe Leroy <christophe.leroy@c-s.fr>
2018-04-06powercp: mpc8xx: move commproc.hChristophe Leroy8-7/+7
include/commproc.h is dedicated to the 8xx, rename it cpm_8xx.h and move it into arch/powerpc/include/asm Signed-off-by: Christophe Leroy <christophe.leroy@c-s.fr>
2018-04-06powerpc: mpc8xx: Change CONFIG_8xx to CONFIG_MPC8xxChristophe Leroy19-24/+24
CONFIG_8xx doesn't mean much outside of arch/powerpc/ This patch renames it CONFIG_MPC8xx just like CONFIG_MPC85xx etc ... It also renames 8xx_immap.h to immap_8xx.h to be consistent with other file names. Signed-off-by: Christophe Leroy <christophe.leroy@c-s.fr>
2018-04-06powerpc: mpc8xx: remove get_immr() argumentChristophe Leroy3-6/+4
get_immr() is always called with 0 as an argument, so it is useless. Signed-off-by: Christophe Leroy <christophe.leroy@c-s.fr>
2018-04-06powerpc: mpc8xx: make get_immr() independent of CONFIG_8xxChristophe Leroy1-2/+1
SPRN_IMMR is defined regardless of the CPU. Therefore, there is no point in enclosing get_immr() inside a #ifdef CONFIG_8xx As it a static inline function, it will in any case only be compiled in functons using it. Signed-off-by: Christophe Leroy <christophe.leroy@c-s.fr>
2018-04-06powerpc: mpc8xx: get rid of the multiple PVR_ valuesChristophe Leroy2-5/+3
Avoid hardcoding the PVR values in C since they are defined in processor.h At the same time, remove those multiple PVR values for 8xx and keep only one that we call PVR_8xx Signed-off-by: Christophe Leroy <christophe.leroy@c-s.fr>
2018-04-06powerpc: mpc8xx: harmonise initialisation of the immap local pointerChristophe Leroy2-5/+3
In most places, immap local pointer is defined as immap_t __iomem *immap = (immap_t __iomem *)CONFIG_SYS_IMMR; In a few places, it is defined as immap_t __iomem *immap = (immap_t __iomem *)(immr & 0xFFFF0000); This patch replaces the few of the latest form by the other one. The two are fully equivalent since SPRN_IMMR is set with CONFIG_SYS_IMMR very early in start.S Signed-off-by: Christophe Leroy <christophe.leroy@c-s.fr>
2018-04-06soft_i2c: cleanup - no mpc8xx supportChristophe Leroy1-3/+0
commit 907208c452999 ("powerpc: Partialy restore core of mpc8xx") didn't bring back support for I2C on the mpc8xx Signed-off-by: Christophe Leroy <christophe.leroy@c-s.fr>
2018-04-06spi: atmel: default y if DM_SPI && ARCH_AT91Jagan Teki58-58/+1
ATMEL_SPI is now fully converted to driver-model and respective boards switch to DM_SPI as well, so make default y for ARCH_AT91 Signed-off-by: Jagan Teki <jagan@amarulasolutions.com> Acked-by: Wenyou Yang <wenyouya@gmail.com>
2018-04-06spi: atmel: Drop atmel_spi.hJagan Teki2-93/+88
atmel_spi.h has register offsets, and atmel_spi_slave structure, move it into .c file for better readability and drop atmel_spi.h Signed-off-by: Jagan Teki <jagan@amarulasolutions.com> Acked-by: Wenyou Yang <wenyouya@gmail.com>
2018-04-06spi: atmel: Drop non-dm codeJagan Teki5-220/+0
All board configs are now enabled DM_SPI for SPL and U-Boot proper, so now its time to drop non-dm code. Signed-off-by: Jagan Teki <jagan@amarulasolutions.com> Acked-by: Wenyou Yang <wenyouya@gmail.com>
2018-04-06at91: ma5d4evk: Enable SPL_DM and SPL_OF_CONTROLJagan Teki2-1/+3
Enable SPL Driver model and FDT support for AT91 ma5d4evk boards. Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
2018-04-06at91: ma5d4evk: Enable DM_SPIJagan Teki2-3/+5
AT91 ma5d4evk board uses atmel spi driver, enable DM_SPI to use dm functionality. Kept few functions related to non-dm and gpio on board files for reference and will be remove once code moved to relevant drivers. Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
2018-04-06at91: ma5d4evk: Add FDT supportJagan Teki4-0/+296
Sync DTS from Linux and add FDT support for AT91 ma5d4evk board. usb0, usb1, usb2 and hlcdc_pwm nodes removed, since there is no support it. Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
2018-04-06at91: ma5d4evk: Enable DMJagan Teki1-0/+1
Enable Driver model for AT91 ma5d4evk boards. Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
2018-04-06at91: vinco: Enable DM_SPIJagan Teki2-2/+4
AT91 Vinco board uses atmel spi driver, enable DM_SPI to use dm functionality. Cc: Gregory CLEMENT <gregory.clement@free-electrons.com> Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
2018-04-06at91: vinco: Add FDT supportJagan Teki3-0/+251
Sync DTS from Linux and add FDT support for AT91 vinco board. usb0, usb1, and usb2 nodes removed, since there is no support it. Cc: Gregory CLEMENT <gregory.clement@free-electrons.com> Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
2018-04-06at91: vinco: Enable DMJagan Teki1-0/+1
Enable Driver model for AT91 Vinco boards. Cc: Gregory CLEMENT <gregory.clement@free-electrons.com> Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
2018-04-06at91: taurus: Enable DM_SPIJagan Teki2-0/+4
Enable DM_SPI for atmel SPI driver on taurus board. Kept few functions related to non-dm and gpio on board files for reference and will be remove once code moved to relevant drivers. Cc: Heiko Schocher <hs@denx.de> Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
2018-04-06configs: gurnard: Move CONFIG_ATMEL_SPI to defconfigsJagan Teki2-2/+1
Now CONFIG_ATMEL_SPI is defined in Kconfig, so move the same into defconfig file. Cc: Simon Glass <sjg@chromium.org> Signed-off-by: Jagan Teki <jagan@amarulasolutions.com> Acked-by: Wenyou Yang <wenyouya@gmail.com>
2018-04-06at91: gurnard: Enable DM_SPIJagan Teki2-20/+1
Enable DM_SPI for atmel SPI driver on gurnard board. Cc: Simon Glass <sjg@chromium.org> Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
2018-04-06spi: atmel: Add ifdef for DM_GPIO codeJagan Teki1-2/+12
Few boards are configuring gpio directly from board instead using drivers/gpio so add ifdef for DM_GPIO to compatible for both the cases. Signed-off-by: Jagan Teki <jagan@amarulasolutions.com> Acked-by: Wenyou Yang <wenyouya@gmail.com>
2018-04-06Merge tag 'signed-rpi-next' of git://github.com/agraf/u-bootTom Rini10-5/+49
Patch queue for rpi - 2018-04-06 Highlights this time around: - Support for new RPi3 B+ model - Fix for some SD cards on newer RPi firmware
2018-04-06rpi: Complete table of models with new revision code schemeJonathan Gray1-0/+30
In the model table for the new revision code encoding documented in https://www.raspberrypi.org/documentation/hardware/raspberrypi/revision-codes/README.md add the entries for old models with the new scheme and add CM3 which only appears in the new scheme. A device tree for CM3 is not currently upstreamed in linux. When that happens the name will likely have to be adjusted in the table. Signed-off-by: Jonathan Gray <jsg@jsg.id.au> Signed-off-by: Alexander Graf <agraf@suse.de>
2018-04-05mmc: use core clock frequency in bcm2835 sdhostJonathan Gray4-5/+7
In raspberrypi-firmware 7fdcd00e00a42a1c91e8bd6f5eb8352fe9358557 and later start.elf now sets the EMMC clock to 200 MHz. According to Phil Elwell in https://github.com/raspberrypi/firmware/issues/953 the SDHost controller shares the core/VPU clock and doesn't use the EMMC clock. Use the core clock id when determining the frequency to allow U-Boot to work with recent versions of raspberrypi-firmware. Otherwise U-Boot hangs at: U-Boot 2018.03 (Mar 14 2018 - 20:36:00 +1100) DRAM: 948 MiB RPI 3 Model B (0xa02082) MMC: mmc@7e202000: 0, sdhci@7e300000: 1 Loading Environment from FAT... Signed-off-by: Jonathan Gray <jsg@jsg.id.au> Signed-off-by: Alexander Graf <agraf@suse.de>
2018-04-05rpi3_32b: Enable lan78xx driverPeter Robinson1-0/+2
The new Raspberry Pi B 3+ has a lan78xx device attached to it. Let's add driver support in U-Boot for it. Signed-off-by: Peter Robinson <pbrobinson@gmail.com> Signed-off-by: Alexander Graf <agraf@suse.de>
2018-04-05rpi: Add identifier for the new RPi3 B+Alexander Graf1-0/+5
The Raspberr Pi Foundation released a new RPi3 version which we want to detect as well, so we can enable ethernet on it and know the correct device tree file name. Add an identifier for it. Signed-off-by: Alexander Graf <agraf@suse.de>
2018-04-05rpi3: Enable lan78xx driverAlexander Graf1-0/+2
The new Raspberry Pi B 3+ has a lan78xx device attached to it. Let's add driver support in U-Boot for it. Signed-off-by: Alexander Graf <agraf@suse.de>
2018-04-05rpi: Allow to boot without serialAlexander Graf3-0/+3
When we enable CONFIG_OF_BOARD on Raspberry Pis, we may end up without serial console support in early boot. Hence we need to make the serial port optional, otherwise we will never get to the point where serial would be probed. Signed-off-by: Alexander Graf <agraf@suse.de>
2018-04-04Merge git://git.denx.de/u-boot-sunxiTom Rini29-236/+390
Signed-off-by: Tom Rini <trini@konsulko.com>
2018-04-04Revert "sunxi: Pine64: temporarily remove extra Pine64 non-plus DT"Andre Przywara1-0/+1
Now with the MMC environment gone, we have enough space to accommodate the Pine64 "non-plus" .dtb again. This reverts commit 47952b8e42c2790150e16d3d4235b3a1ee0ba9bb. Signed-off-by: Andre Przywara <andre.przywara@arm.com> Reviewed-by: Jagan Teki <jagan@openedev.com>
2018-04-04sunxi: revert disabling of featuresAndre Przywara3-8/+0
In January some commits were introduced to mitigate the U-Boot image size issues we encountered on sunxi builds. Now with the MMC environment removed we can bring them back, as we practically don't have a size limit anymore. Signed-off-by: Andre Przywara <andre.przywara@arm.com> Acked-by: Maxime Ripard <maxime.ripard@bootlin.com> Reviewed-by: Jagan Teki <jagan@openedev.com>
2018-04-04sunxi: disable direct MMC environmentAndre Przywara1-1/+0
Since the dawn of time for the Allwinner support in mainline U-Boot we store the environment to the SD card and write directly at 544KB from the beginning of the device. This leads to problems when the U-Boot proper image grows beyond 504KB and eventually overlaps. With one release of having the environment preferably in a FAT partition, let's now turn off the MMC variant fallback, so we get back all the space we need to implement features. Signed-off-by: Andre Przywara <andre.przywara@arm.com> Reviewed-by: Jagan Teki <jagan@openedev.com> Acked-by: Maxime Ripard <maxime.ripard@bootlin.com>
2018-04-04net: sun8i-emac: remove support for old bindingAndre Przywara1-53/+25
The original DT binding used by U-Boot's sun8i-emac driver was not really agreed upon, and deviated from the "official" binding now used by the kernel. Since now all U-Boot users have been converted to the new binding, we can remove support for the old DT nodes from the driver. Signed-off-by: Andre Przywara <andre.przywara@arm.com> Acked-by: Maxime Ripard <maxime.ripard@bootlin.com> Reviewed-by: Jagan Teki <jagan@openedev.com>
2018-04-04arm: dts: sunxi: update H5 to new EMAC bindingAndre Przywara1-2/+5
The U-Boot driver for the sun8i-emac was using some preliminary DT binding. Now since Linux got its own driver in v4.15 and our driver can now cope with both bindings, let's convert the DT nodes used by the OrangePi PC2 over to the new bindings used by the kernel. Signed-off-by: Andre Przywara <andre.przywara@arm.com> Acked-by: Maxime Ripard <maxime.ripard@bootlin.com> Reviewed-by: Jagan Teki <jagan@openedev.com>
2018-04-04arm: dts: sunxi: update H3 to new EMAC bindingAndre Przywara9-51/+75
The U-Boot driver for the sun8i-emac was using some preliminary DT binding. Now since Linux got its own driver in v4.15 and our driver can now cope with both bindings, let's convert the DT nodes used by the various H3 boards over to the new bindings used by the kernel. Signed-off-by: Andre Przywara <andre.przywara@arm.com> Acked-by: Maxime Ripard <maxime.ripard@bootlin.com> Reviewed-by: Jagan Teki <jagan@openedev.com>
2018-04-04arm: dts: sunxi: update A64 to new EMAC bindingAndre Przywara1-21/+30
The U-Boot driver for the sun8i-emac was using some preliminary DT binding. Now since Linux got its own driver in v4.15 and our driver can now cope with both bindings, let's convert the DT nodes used for the Pine64+ board over to the new bindings used by the kernel. Signed-off-by: Andre Przywara <andre.przywara@arm.com> Acked-by: Maxime Ripard <maxime.ripard@bootlin.com> Reviewed-by: Jagan Teki <jagan@openedev.com>