summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeLines
* x86: Enable PCIe controller on quark/galileoBin Meng2015-09-09-0/+161
| | | | | | | | | | | | | Quark SoC holds the PCIe controller in reset following a power on. U-Boot needs to release the PCIe controller from reset. The PCIe controller (D23:F0/F1) will not be visible in PCI configuration space and any access to its PCI configuration registers will cause system hang while it is held in reset. Enable PCIe controller per Quark firmware writer guide. Signed-off-by: Bin Meng <bmeng.cn@gmail.com> Acked-by: Simon Glass <sjg@chromium.org>
* x86: quark: Avoid chicken and egg problemBin Meng2015-09-09-15/+15
| | | | | | | | | | | | | | | | | | | | If we convert to use driver model pci on quark, we will encounter some chicken and egg problems like below: - To enable PCIe root ports, we need program some registers on the message bus via pci bus. With driver model, the first time to access pci bus, the pci enumeration process will be triggered. But without first enabling PCIe root ports, pci enumeration just hangs when scanning PCIe root ports. - Similar situation happens when trying to access GPIO from the PCIe enabling codes, as GPIO requires its block base address to be assigned via a pci configuration register in the bridge. To avoid such dilemma, replace all pci calls in the quark codes to use the local version which does not go through driver model. Signed-off-by: Bin Meng <bmeng.cn@gmail.com> Acked-by: Simon Glass <sjg@chromium.org>
* x86: quark: Optimize MRC execution timeBin Meng2015-09-09-22/+57
| | | | | | | | | | | | | | | | | Intel Quark SoC has a low end x86 processor with only 400MHz frequency. Currently it takes about 15 seconds for U-Boot to boot to shell and the most time consuming part is with MRC, which is about 12 seconds. MRC programs lots of registers on the SoC internal message bus indirectly accessed via pci bus. To speed up the boot, create an optimized version of pci config read/write dword routines which directly operate on PCI I/O ports. These two routines are inlined to provide better performance too. Now it only takes about 3 seconds to finish MRC, which is really fast (4 times faster than before). Signed-off-by: Bin Meng <bmeng.cn@gmail.com> Acked-by: Simon Glass <sjg@chromium.org>
* dm: pci: Allow a PCI bus to be found without an aliasSimon Glass2015-09-09-4/+24
| | | | | | | | | | | | | | At present, until a PCI bus is probed, it cannot be found by its sequence number unless it has an alias. This is the same with any device. However with PCI this is more annoying than usual, since bus 0 is always the same device. Add a function that tries a little harder to locate PCI bus 0. This means that PCI enumeration will happen automatically on the first access. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
* buildman: Improve the config comparison featureSimon Glass2015-09-09-44/+142
| | | | | | | | | | | | | | | | At present buildman can compare configurations between commits but the feature is less useful than it could be. There is no summary by architecture and changes are not reported on a per-board basis. Correct these deficiencies so that it is possible to see exactly what is changing for any number of boards. Note that 'buildman -b <branch> -C' is recommended for any build where you will be comparing configuration. Without -C the correct configuration will not be reported since changes will often not be picked up. Reviewed-by: Joe Hershberger <joe.hershberger@ni.com> Signed-off-by: Simon Glass <sjg@chromium.org>
* Revert "patman: use -D option for git format-patch"Masahiro Yamada2015-09-09-1/+1
| | | | | | | | | | | | | | | | | | | | | | This reverts commit 19b4a3369876f9215e2b861f211e8df1a75e26ca. Since that commit, patman generates useless patches for file removal; "git format -D" prints only the header but not the diff when deleting files, and "git am" always refuses such patches. The following is the quotation from "man git-format-patch": -D, --irreversible-delete Omit the preimage for deletes, i.e. print only the header but not the diff between the preimage and /dev/null. The resulting patch is not meant to be applied with patch nor git apply; this is solely for people who want to just concentrate on reviewing the text after the change. In addition, the output obviously lack enough information to apply such a patch in reverse, even manually, hence the name of the option. Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com> Acked-by: Simon Glass <sjg@chromium.org>
* x86: bayleybay: Convert to use more dm driversBin Meng2015-09-09-7/+3
| | | | | | | Move to driver model for USB and ETH on Intel Bayley Bay. Signed-off-by: Bin Meng <bmeng.cn@gmail.com> Acked-by: Simon Glass <sjg@chromium.org>
* x86: coreboot: Convert to use more dm driversBin Meng2015-09-09-7/+4
| | | | | | | Move to driver model for RTC, USB and ETH on coreboot. Signed-off-by: Bin Meng <bmeng.cn@gmail.com> Acked-by: Simon Glass <sjg@chromium.org>
* x86: crownbay: Enable CONFIG_PCH_GBEBin Meng2015-09-09-3/+1
| | | | | | | | Now that we have converted the pch_gbe driver to driver moel, enable it on Intel Crown Bay board. Signed-off-by: Bin Meng <bmeng.cn@gmail.com> Acked-by: Simon Glass <sjg@chromium.org>
* net: pch_gbe: Add Kconfig optionBin Meng2015-09-09-0/+13
| | | | | | Add Kconfig option in preparation for moving board to use Kconfig. Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
* net: pch_gbe: Convert to driver modelBin Meng2015-09-09-66/+73
| | | | | | | | | | | This commit converts pch_gbe ethernet driver to driver model. Since this driver is only used by Intel Crown Bay board, the conversion does not keep the non-dm version. Signed-off-by: Bin Meng <bmeng.cn@gmail.com> Acked-by: Joe Hershberger <joe.hershberger@ni.com> Acked-by: Simon Glass <sjg@chromium.org>
* x86: crownbay: Convert to use CONFIG_DM_ETH for E1000Bin Meng2015-09-09-8/+1
| | | | | | | | | Since E1000 driver has been converted to driver model, enable it on Intel Crown Bay. But the Intel Topcliff GbE driver has not been converted to driver model yet, disable it for now. Signed-off-by: Bin Meng <bmeng.cn@gmail.com> Acked-by: Joe Hershberger <joe.hershberger@ni.com>
* x86: crownbay: Convert to use CONFIG_DM_USBBin Meng2015-09-09-0/+2
| | | | | | | | Move to driver model for USB on Intel Crown Bay. Signed-off-by: Bin Meng <bmeng.cn@gmail.com> Reviewed-by: Joe Hershberger <joe.hershberger@ni.com> Acked-by: Simon Glass <sjg@chromium.org>
* dm: eth: Correctly detect alias in eth_get_dev_by_name()Bin Meng2015-09-09-2/+3
| | | | | | | | When given a device name string, we should test to see if it is really an alias like "eth#". Signed-off-by: Bin Meng <bmeng.cn@gmail.com> Acked-by: Joe Hershberger <joe.hershberger@ni.com>
* dm: test: Add a new test case for dm_test_eth_rotateBin Meng2015-09-09-1/+14
| | | | | | | | | Add one more ethernet device node in the sandbox test device tree, with name 'sbe5'. This is to support a new test case for testing network device rotation. Signed-off-by: Bin Meng <bmeng.cn@gmail.com> Acked-by: Joe Hershberger <joe.hershberger@ni.com>
* dm: eth: Do not print misleading "Net Initialization Skipped"Bin Meng2015-09-09-0/+2
| | | | | | | | With driver model, board_eth_init() or cpu_eth_init() is not a must. Thus we don't need print a misleading "Net Initialization Skipped". Signed-off-by: Bin Meng <bmeng.cn@gmail.com> Acked-by: Joe Hershberger <joe.hershberger@ni.com>
* net: Revert "tftp: adjust settings to be suitable for 100Mbit ethernet"Bin Meng2015-09-09-5/+5
| | | | | | | | | | | | | | | | | | | | | Commit 620776d "tftp: adjust settings to be suitable for 100Mbit ethernet" causes the following error message when trying to load a file using 'tftp' command via a tftp server. TFTP error: 'Unsupported option(s) requested' (8) This is due to with commit 620776d changes, the tftp option 'timeout' value is now set to zero which is an invalid value as per RFC2349 [1]. Valid values range between "1" and "255" seconds, inclusive. With some tftp servers that strictly implement the RFC requirement, it reports such an error message. Revert commit 620776d for RFC compliance. [1] https://www.ietf.org/rfc/rfc2349.txt Signed-off-by: Bin Meng <bmeng.cn@gmail.com> Acked-by: Joe Hershberger <joe.hershberger@ni.com>
* x86: panther: Add PCI and video configurationSimon Glass2015-09-09-0/+12
| | | | | | | | | Add a PCI node to the device tree. This allows SPI flash and SATA to work correctly. Also configure the video to come up correctly even though there is no keyboard. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
* x86: bayleybay: Change default vga bios rom addressBin Meng2015-09-09-0/+1
| | | | | | | | | | With multiple microcode blobs included, the generated u-boot-dtb.bin leaves merely several hundred bytes before the vga bios. Change the vga bios rom address to make a bigger room for u-boot-dtb.bin. Signed-off-by: Bin Meng <bmeng.cn@gmail.com> Acked-by: Simon Glass <sjg@chromium.org> Tested-by: Simon Glass <sjg@chromium.org>
* x86: doc: Change to use CONFIG_VGA_BIOS_ADDRBin Meng2015-09-09-1/+1
| | | | | | | | | CONFIG_X86_OPTION_ROM_ADDR has been renamed to CONFIG_VGA_BIOS_ADDR. Update the doc to refer to the new name. Signed-off-by: Bin Meng <bmeng.cn@gmail.com> Acked-by: Simon Glass <sjg@chromium.org> Tested-by: Simon Glass <sjg@chromium.org>
* x86: ifdtool: Support checking region overlap before U-BootBin Meng2015-09-09-20/+46
| | | | | | | | | | | We have the capability to check regions written after U-Boot that do not overlap. Since regions can also be written before U-Boot, add such check for these too. Signed-off-by: Bin Meng <bmeng.cn@gmail.com> Tested-by: Andy Pont <andy.pont@sdcsystems.com> Acked-by: Simon Glass <sjg@chromium.org> Tested-by: Simon Glass <sjg@chromium.org>
* Prepare v2015.10-rc3Tom Rini2015-09-07-1/+1
| | | | Signed-off-by: Tom Rini <trini@konsulko.com>
* Merge git://git.denx.de/u-boot-usbTom Rini2015-09-07-35/+426
|\
| * usb: ehci: remember init modeStephen Warren2015-09-07-1/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | When an EHCI device is registered in device mode, the HW isn't actually initialized at all, and hence isn't left in a running state. Consequently, when the device is deregistered, ehci_shutdown() will fail, since the HW bits it expects to see set in response to its shutdown requests will not be sent, and the message "EHCI failed to shut down host controller." will be printed. Fix ehci-hcd.c to remember whether the device was registered in host or device mode, and only call ehci_shutdown() for host mode registrations. Signed-off-by: Stephen Warren <swarren@nvidia.com>
| * dfu: tftp: Kconfig: Enable DFU_TFTP support on the am335x_boneblack_defconfigLukasz Majewski2015-09-07-0/+1
| | | | | | | | | | | | | | This commit enables support for DFU_TFTP on the am335x bone black device. Signed-off-by: Lukasz Majewski <l.majewski@majess.pl> Acked-by: Joe Hershberger <joe.hershberger@ni.com>
| * dfu: tftp: Kconfig: Add Kconfig entry for dfu tftp featureLukasz Majewski2015-09-07-0/+10
| | | | | | | | | | | | | | | | The dfu tftp feature can be now enabled via Kconfig. This commit provides necessary code for it. Signed-off-by: Lukasz Majewski <l.majewski@majess.pl> Acked-by: Joe Hershberger <joe.hershberger@ni.com>
| * dfu: command: Extend "dfu" command to handle receiving data via TFTPLukasz Majewski2015-09-07-0/+20
| | | | | | | | | | | | | | | | The "dfu" command has been extended to support transfers via TFTP protocol. Signed-off-by: Lukasz Majewski <l.majewski@majess.pl> Reviewed-by: Simon Glass <sjg@chromium.org> Acked-by: Joe Hershberger <joe.hershberger@ni.com>
| * update: tftp: dfu: Extend update_tftp() function to support DFULukasz Majewski2015-09-07-14/+52
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This code allows using DFU defined mediums for storing data received via TFTP protocol. It reuses and preserves functionality of legacy code at common/update.c. The update_tftp() function now accepts parameters - namely medium device name and its number (e.g. mmc 1). Without this information passed old behavior is preserved. Signed-off-by: Lukasz Majewski <l.majewski@majess.pl> Acked-by: Joe Hershberger <joe.hershberger@ni.com>
| * dfu: tftp: update: Add dfu_write_from_mem_addr() functionLukasz Majewski2015-09-07-0/+52
| | | | | | | | | | | | | | | | | | | | | | This function allows writing via DFU data stored from fixed buffer address (like e.g. loadaddr env variable). Such predefined buffers are used in the update_tftp() code. In fact this function is a wrapper on the dfu_write() and dfu_flush(). Signed-off-by: Lukasz Majewski <l.majewski@majess.pl> Acked-by: Joe Hershberger <joe.hershberger@ni.com>
| * dfu: tftp: update: Provide tftp support for the DFU subsystemLukasz Majewski2015-09-07-0/+92
| | | | | | | | | | | | | | | | This commit adds initial support for using tftp for downloading and upgrading firmware on the device. Signed-off-by: Lukasz Majewski <l.majewski@majess.pl> Acked-by: Joe Hershberger <joe.hershberger@ni.com>
| * tftp: update: Allow some parts of the code to be reused when ↵Lukasz Majewski2015-09-07-8/+7
| | | | | | | | | | | | | | | | | | | | | | | | CONFIG_SYS_NO_FLASH is set Up till now it was impossible to use code from update.c when system was not equipped with raw FLASH memory. Such behavior prevented DFU from reusing this code. Signed-off-by: Lukasz Majewski <l.majewski@majess.pl> Acked-by: Joe Hershberger <joe.hershberger@ni.com> Reviewed-by: Simon Glass <sjg@chromium.org>
| * net: tftp: Move tftp.h file from ./net to ./include/netLukasz Majewski2015-09-07-4/+4
| | | | | | | | | | | | | | | | | | | | This change gives the ability to reuse the <tftp.h> header file by other subsystems (like e.g. dfu). Without this change compilation error emerges for the legacy update.c file. Signed-off-by: Lukasz Majewski <l.majewski@majess.pl> Acked-by: Joe Hershberger <joe.hershberger@ni.com>
| * doc: dfu: tftp: README entry for TFTP extension of DFULukasz Majewski2015-09-07-0/+121
| | | | | | | | | | | | | | | | | | | | Documentation file for DFU extension. With this functionality it is now possible to transfer FIT images with firmware updates via TFTP and use DFU backend for storing them. Signed-off-by: Lukasz Majewski <l.majewski@majess.pl> Reviewed-by: Simon Glass <sjg@chromium.org> Acked-by: Joe Hershberger <joe.hershberger@ni.com>
| * h2200: Fix build errorKishon Vijay Abraham I2015-09-07-0/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Commit <8bfc288c3955> ("usb: gadget: ether: Perform board initialization from ethernet gadget driver") added board_usb_init and board_usb_cleanup in ethernet gadget driver. But h2200 board didn't have board_usb_init and board_usb_cleanup implementations. This introduced the following build errors +drivers/usb/gadget/built-in.o: In function `usb_eth_halt': +drivers/usb/gadget/ether.c:2498: undefined reference to `board_usb_cleanup' +drivers/usb/gadget/built-in.o: In function `usb_eth_init': +drivers/usb/gadget/ether.c:2316: undefined reference to `board_usb_init' Fix it here by adding empty board_usb_init and board_usb_cleanup functions in h2200.c. Fixes: <8bfc288c3955> ("usb: gadget: ether: Perform board initialization from ethernet gadget driver") Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
| * dfu: Delete superfluous initialization of the dfu_buf_size static variableLukasz Majewski2015-09-07-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | After extension of the dfu_get_buf() to also setup (implicitly) the dfu_buf_size variable it is not needed to set dfu_buf_size to CONFIG_SYS_DFU_DATA_BUF_SIZE. This variable is set in the dfu_get_buf() by not only considering CONFIG_SYS_DFU_DATA_BUF but more importantly the "dfu_bufsiz" env variable. Therefore, dfu_get_buf() should be used for initialization. Signed-off-by: Lukasz Majewski <l.majewski@majess.pl> Reviewed-by: Przemyslaw Marczak <p.marczak@samsung.com>
| * dfu:tests: Modify dfu_gadget_test.sh to accept USB device vendor:product IDLukasz Majewski2015-09-07-8/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | dfu-util allows filtering on USB device vendor:product ID by using the -d flag (-d 0451:d022). Such option is very handy when many DFU devices are connected to a single host PC. This commit allows testing when above situation emerges. Signed-off-by: Lukasz Majewski <l.majewski@majess.pl> Reviewed-by: Simon Glass <sjg@chromium.org> Tested-by: Lukasz Majewski <l.majewski@majess.pl> Test HW - AM335x Beagle Bone Black NOTE: Max size of file to transfer: 2MiB
| * usb: gadget: f_thor: Allocate request up to THOR_PACKET_SIZESiva Durga Prasad Paladugu2015-09-07-1/+1
| | | | | | | | | | | | | | | | | | | | Allocate request up to THOR_PACKET_SIZE not the ep0->maxpacket as the descriptors data depend on the number of descriptors and this 64 bytes were not enough and the buffer might overflow which results in memalign failures later. Signed-off-by: Siva Durga Prasad Paladugu <sivadur@xilinx.com> Signed-off-by: Michal Simek <michal.simek@xilinx.com>
| * f_thor: Dont perform reset at the end of thorSiva Durga Prasad Paladugu2015-09-07-0/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | Dont perform reset at the end of thor download if configured to do reset off. Reset may not be required in all cases and hence provided an option to do so. The case would be to download the images to DDR instead of flash device. Signed-off-by: Siva Durga Prasad Paladugu <sivadur@xilinx.com> Signed-off-by: Michal Simek <michal.simek@xilinx.com>
| * implement Fastboot via USB OTG on bcm28155_ap boardsJiandong Zheng2015-09-07-0/+19
| | | | | | | | | | Signed-off-by: Jiandong Zheng <jdzheng@broadcom.com> Signed-off-by: Steve Rae <srae@broadcom.com>
* | Merge git://git.denx.de/u-boot-socfpgaTom Rini2015-09-07-31/+4851
|\ \
| * | net: altera_tse: Zap unused variableMarek Vasut2015-09-04-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | Zap variable which is set but never used. Signed-off-by: Marek Vasut <marex@denx.de> Cc: Dinh Nguyen <dinguyen@opensource.altera.com> Cc: Joe Hershberger <joe.hershberger@ni.com> Tested-by: Thomas Chou <thomas@wytron.com.tw>
| * | arm: socfpga: Add support for the Terasic DE-0 Atlas boardDinh Nguyen2015-09-04-0/+1567
| | | | | | | | | | | | | | | | | | | | | Add support for the Terasic DE0-Nano/Atlas-SoC Kit, which is a CycloneV based board. The board can boot from SD/MMC. Ethernet is also supported. Signed-off-by: Dinh Nguyen <dinguyen@opensource.altera.com>
| * | arm: socfpga: Add support for DENX MCV SoM and MCVEVK boardMarek Vasut2015-09-04-0/+1578
| | | | | | | | | | | | | | | | | | | | | | | | Add support for DENX MCV SoM, which is CycloneV based and the associated DENX MCVEVK baseboard. The board can boot from eMMC. Ethernet and USB is supported. Signed-off-by: Marek Vasut <marex@denx.de>
| * | arm: socfpga: Add support for Terasic SoCkit boardMarek Vasut2015-09-04-0/+1622
| | | | | | | | | | | | | | | | | | | | | | | | Add support for Terasic SoCkit, which is CycloneV based board. The board can boot either from SD/MMC or QSPI. Ethernet is also supported. Signed-off-by: Marek Vasut <marex@denx.de>
| * | arm: socfpga: Do not call board_init_r() from board_init_f()Marek Vasut2015-09-04-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Instead of calling board_init_r() directly from board_init_f(), just return from board_init_f(). This will make the code continue executing in crt0.S _main(), from which the board_init_r() is called. This patch aligns the SoCFPGA SPL with the correct SPL design as well as reduces the stack utilisation slightly. Signed-off-by: Marek Vasut <marex@denx.de> Cc: Dinh Nguyen <dinguyen@opensource.altera.com>
| * | arm: socfpga: Zap OF_CONTROL checks, it's always enabledMarek Vasut2015-09-04-4/+3
| | | | | | | | | | | | | | | | | | | | | The CONFIG_OF_CONTROL and CONFIG_SPL_OF_CONTROL is always enabled on Altera SoCFPGA, remove the unnecessary checks. Signed-off-by: Marek Vasut <marex@denx.de>
| * | arm: socfpga: Always enable OF_CONTROL and SPL_OF_CONTROLMarek Vasut2015-09-04-0/+2
| | | | | | | | | | | | | | | | | | | | | The SoCFPGA probes mostly from OF and the OF is mandatory both in U-Boot itself and U-Boot SPL. Enable it by default. Signed-off-by: Marek Vasut <marex@denx.de>
| * | arm: socfpga: Assure ISWGRP 0 and 1 are initedMarek Vasut2015-09-04-1/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This fix makes sure that the ISWGRP0 and ISWGRP1 registers are correctly inited. In case those registers are not initialized, it is not possible to access the registers synthesised in the FPGA through the bridges. Any such access produces data abort. Signed-off-by: Marek Vasut <marex@denx.de> Cc: Dinh Nguyen <dinguyen@opensource.altera.com>
| * | mmc: dw_mmc: Probe the MMC from OFMarek Vasut2015-09-04-22/+72
| |/ | | | | | | | | | | | | | | | | | | | | | | | | Rework the driver to probe the MMC controller from Device Tree and make it mandatory. There is no longer support for probing from the ancient qts-generated header files. This patch now also removes previous temporary workaround. Signed-off-by: Marek Vasut <marex@denx.de> Cc: Dinh Nguyen <dinguyen@opensource.altera.com> Cc: Pantelis Antoniou <panto@antoniou-consulting.com> Cc: Tom Rini <trini@konsulko.com>
* | arc: make AXS101 default platformAlexey Brodkin2015-09-07-4/+3
|/ | | | | | | | | | | | | | | | | | This fixes building in automated flow that doesn't use defconfigs. See discussion on that topic here: http://patchwork.ozlabs.org/patch/502558/ See similar patches for other architectures/platforms here: [1] http://git.denx.de/?p=u-boot.git;a=commit;h=ff560a13056a565a4e9ce1761bd04276a3cace88 [2] http://git.denx.de/?p=u-boot.git;a=commit;h=589907e2c187ec69b351c38ccda36730d25ab5d6 And while at it add missing shell prompt to axs103. Cc: Tom Rini <trini@konsulko.com> Cc: Joe Hershberger <joe.hershberger@gmail.com> Cc: Masahiro Yamada <yamada.masahiro@socionext.com> Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>