| 8118cce3 | 24-Nov-2017 |
Philipp Tomsich <philipp.tomsich@theobroma-systems.com> |
UPSTREAM: spl: fit: add SPL_FIT_IMAGE_TINY config to reduce code-size
A minor code-size increase from the changes for tracking the os-type of FIT images and from infrastructure for recording the loa
UPSTREAM: spl: fit: add SPL_FIT_IMAGE_TINY config to reduce code-size
A minor code-size increase from the changes for tracking the os-type of FIT images and from infrastructure for recording the loadables into the the loaded FDT, broke the builds for sun50i and some OMAP2+ devices.
This change adds a new config option (enabled by default for MACH_SUN50I, MACH_SUN50I_H5 and ARCH_OMAP2PLUS) that does skips these processing steps (bringing code size down to below the limit again). The os-type is not evaluated, but assumed to be IH_OS_UBOOT (i.e. taking the code-paths intended for backward-compatibility).
Note that enabling this config option precludes any useful downstream processing, such as utilising a special calling convention for ATF or OPTEE, based on the os-type of the loadables.
Change-Id: I32036975208be6e9d9d2ad3b5376444efd693f25 Signed-off-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com> Signed-off-by: Kever Yang <kever.yang@rock-chips.com> (cherry picked from commit 337bbb6297775e8e9d664e96e96004f00d1d8c02)
show more ...
|
| 9f8888bc | 13-Sep-2017 |
Philipp Tomsich <philipp.tomsich@theobroma-systems.com> |
spl: rename config item SPL_ATF_SUPPORT to SPL_ATF
Having CONFIG_SPL_ATF seems more natural. Rename it, while it it is easy and there's few boards that use it (only RK3399 and RK3368 boards).
Chang
spl: rename config item SPL_ATF_SUPPORT to SPL_ATF
Having CONFIG_SPL_ATF seems more natural. Rename it, while it it is easy and there's few boards that use it (only RK3399 and RK3368 boards).
Change-Id: Ie13ba6eeb687bf6f8c8d326c197f453fb752e9bd Signed-off-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com> Reviewed-by: Simon Glass <sjg@chromium.org> Signed-off-by: Kever Yang <kever.yang@rock-chips.com> (cherry picked from commit aa122f6b3d24bd133392c7dd2a882a8cc2cbd622)
show more ...
|
| 2e15a11c | 13-Sep-2017 |
Philipp Tomsich <philipp.tomsich@theobroma-systems.com> |
spl: atf: introduce spl_invoke_atf and make bl31_entry private
This adds a new interface spl_invoke_atf() that takes a spl_image_info argument and then derives the necessary parameters for the ATF e
spl: atf: introduce spl_invoke_atf and make bl31_entry private
This adds a new interface spl_invoke_atf() that takes a spl_image_info argument and then derives the necessary parameters for the ATF entry. Based on the additional information recorded (into /fit-images) from the FIT loadables, we can now easily locate the next boot stage.
We now pass a pointer to a FDT as the platform-specific parameter pointer to ATF (so we don't run into the future headache of every board/platform defining their own proprietary tag-structure), as FDT access is already available in ATF.
With the necessary infrastructure in place, we can now update the support for the ARM Trusted Firmware to dispatch into the spl_invoke_atf function only if a IH_OS_ARM_TRUSTED_FIRMWARE image is loaded.
Change-Id: Ia00abe207a0a0fed044fcda2b6e1054225b42901 Signed-off-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com> Reviewed-by: Simon Glass <sjg@chromium.org> Signed-off-by: Kever Yang <kever.yang@rock-chips.com> (cherry picked from commit 1d3790905d9c089b434c376f2dcc585b6a92bc99)
show more ...
|
| 1f1cf67b | 13-Sep-2017 |
Philipp Tomsich <philipp.tomsich@theobroma-systems.com> |
UPSTREAM: spl: fit: implement recording of loadables into /fit-images
If a FDT was loaded (e.g. to append it to U-Boot image), we store it's address and record information for all loadables into thi
UPSTREAM: spl: fit: implement recording of loadables into /fit-images
If a FDT was loaded (e.g. to append it to U-Boot image), we store it's address and record information for all loadables into this FDT. This allows us to easily keep track of images for multiple privilege levels (e.g. with ATF) or of firmware images preloaded into temporary locations (e.g. PMU firmware that may overlap the SPL stage).
Change-Id: Ifeee692ad0604e2e60e92f76a11f5693c52fe769 Signed-off-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com> Reviewed-by: Simon Glass <sjg@chromium.org> Signed-off-by: Kever Yang <kever.yang@rock-chips.com> (cherry picked from commit a616c783f22a045e580f101141a9d62775f97365)
show more ...
|
| e265ab89 | 13-Sep-2017 |
Philipp Tomsich <philipp.tomsich@theobroma-systems.com> |
UPSTREAM: spl: fit: implement fdt_record_loadable
During the loading of more complex FIT images (e.g. when the invoked next stage needs to find additional firmware for a power-management core... or
UPSTREAM: spl: fit: implement fdt_record_loadable
During the loading of more complex FIT images (e.g. when the invoked next stage needs to find additional firmware for a power-management core... or if there are multiple images for different privilege levels started in parallel), it is helpful to create a record of what images are loaded where: if a FDT is loaded for one of the next stages, it can be used to convey the status and location of loadables.
This adds a fdt_record_loadable() function that can be invoked to record the status of each loadable below the /fit-images path.
Change-Id: I9d6dcd3cb7863a558ebde7c68bcfe45eaadcc76f Signed-off-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com> Reviewed-by: Simon Glass <sjg@chromium.org> Signed-off-by: Kever Yang <kever.yang@rock-chips.com> (cherry picked from commit 9f45aeb937275960405de0f2abca8c665dbb03d4)
show more ...
|
| 9719e14f | 13-Sep-2017 |
Philipp Tomsich <philipp.tomsich@theobroma-systems.com> |
UPSTREAM: spl: fit: simplify logic for FDT loading for non-OS boots
To better support bootin through an ATF or OPTEE, we need to streamline some of the logic for when the FDT is appended to an image
UPSTREAM: spl: fit: simplify logic for FDT loading for non-OS boots
To better support bootin through an ATF or OPTEE, we need to streamline some of the logic for when the FDT is appended to an image: depending on the image type, we'd like to append the FDT not at all (the case for the OS boot), to the 'firmware' image (if it is a U-Boot) or to one of the loadables (if the 'firmware' is an ATF, an OPTEE, or some other image-type and U-Boot is listed in the loadabled).
To achieve this goal, we drop the os_boot flag and track the type of image loaded. If it is of type IH_OS_U_BOOT, we append the FDT.
Change-Id: Ic7c4b927b4ad7d33e372e63002072fe27a88292f Signed-off-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com> Acked-by: York Sun <york.sun@nxp.com> Reviewed-by: Simon Glass <sjg@chromium.org> Signed-off-by: Kever Yang <kever.yang@rock-chips.com> (cherry picked from commit d879616e9e64cf5a9c43dedc30677aa2fa463d64)
show more ...
|
| 4233e0b1 | 13-Sep-2017 |
Philipp Tomsich <philipp.tomsich@theobroma-systems.com> |
UPSTREAM: image: add IH_OS_ARM_TRUSTED_FIRMWARE for ARM Trusted Firmware
To boot on ARMv8 systems with ARM Trusted Firmware, we need to assemble an ATF-specific parameter structure and also provide
UPSTREAM: image: add IH_OS_ARM_TRUSTED_FIRMWARE for ARM Trusted Firmware
To boot on ARMv8 systems with ARM Trusted Firmware, we need to assemble an ATF-specific parameter structure and also provide the address of the images started by ATF (e.g. BL3-3, which may be the full U-Boot).
To allow us to identify an ARM Trusted Firmware contained in a FIT image, this adds the necessary definitions.
Change-Id: If9f54a8391bba18c5aa220aea09db53271ff4517 Signed-off-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com> Reviewed-by: Simon Glass <sjg@chromium.org> Signed-off-by: Kever Yang <kever.yang@rock-chips.com> (cherry picked from commit 4914af1286c4a48cd0ae98cf6adea3569111413b)
show more ...
|
| 25e0b4f3 | 10-Nov-2017 |
Heinrich Schuchardt <xypron.glpk@gmx.de> |
UPSTREAM: malloc: don't compare pointers to 0
0 is not a pointer. So do not compare pointers to 0.
Do not return 0 from functions with a pointer return type.
Problem identified with Coccinelle.
C
UPSTREAM: malloc: don't compare pointers to 0
0 is not a pointer. So do not compare pointers to 0.
Do not return 0 from functions with a pointer return type.
Problem identified with Coccinelle.
Change-Id: Ib8447e3ff21d7fc256a9c4a4ed3c4396ce12e00a Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by: Bin Meng <bmeng.cn@gmail.com> Signed-off-by: Kever Yang <kever.yang@rock-chips.com> (cherry picked from commit a874cac3b45cbb6dd8bad05a5b42912acae6b7e4)
show more ...
|
| 75ee777b | 03-Oct-2017 |
André Draszik <adraszik@tycoint.com> |
UPSTREAM: SPL: fix printing of image name
The maximum length of the name of the image is obviously not sizeof(), which is just the length of a pointer, but IH_NMLEN.
fixes: 62cf11c0921a90c6bd62344f
UPSTREAM: SPL: fix printing of image name
The maximum length of the name of the image is obviously not sizeof(), which is just the length of a pointer, but IH_NMLEN.
fixes: 62cf11c0921a90c6bd62344f4bc069668e6c698c ("SPL: Limit image name print length")
Change-Id: I948dee1b9a4e1ddfbb122475e2d209cc26dec9d0 Signed-off-by: André Draszik <adraszik@tycoint.com> Acked-by: Simon Glass <sjg@chromium.org> Signed-off-by: Kever Yang <kever.yang@rock-chips.com> (cherry picked from commit 3fe3839acc4a5d9b1af9b2ab3884b0d3f2e23370)
show more ...
|
| 58ddd5e1 | 23-Oct-2017 |
Masahiro Yamada <yamada.masahiro@socionext.com> |
UPSTREAM: image-sig: use designated initializers for algorithm
Designated initializers are more readable because we do not have to check the order in the struct definitions.
Change-Id: Ib4af13de7b0
UPSTREAM: image-sig: use designated initializers for algorithm
Designated initializers are more readable because we do not have to check the order in the struct definitions.
Change-Id: Ib4af13de7b0d87b2d395847b0d1b5c198206a96b Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com> Reviewed-by: Simon Glass <sjg@chromium.org> Signed-off-by: Kever Yang <kever.yang@rock-chips.com> (cherry picked from commit 8ec87df3762f27bbd77fb28474d1e46ad23c9e28)
show more ...
|
| f1817ab2 | 10-Oct-2017 |
Tuomas Tynkkynen <tuomas.tynkkynen@iki.fi> |
UPSTREAM: common: Remove genimg_get_image()
Removal of the legacy DataFlash code turned genimg_get_image() into a no-op. Drop all calls to it and the function itself.
Change-Id: I79fc0cd75fb4ea7bdf
UPSTREAM: common: Remove genimg_get_image()
Removal of the legacy DataFlash code turned genimg_get_image() into a no-op. Drop all calls to it and the function itself.
Change-Id: I79fc0cd75fb4ea7bdfd0be8486d8be4b72cd773f Signed-off-by: Tuomas Tynkkynen <tuomas.tynkkynen@iki.fi> Signed-off-by: Kever Yang <kever.yang@rock-chips.com> (cherry picked from commit 137aefba0319eaa69de0707dce01d62339158d4d)
show more ...
|
| b0ec9442 | 10-Oct-2017 |
Tuomas Tynkkynen <tuomas.tynkkynen@iki.fi> |
UPSTREAM: Drop CONFIG_HAS_DATAFLASH
Last user of this option went away in commit:
fdc7718999 ("board: usb_a9263: Update to support DT and DM")
Change-Id: Id05869deccb88c1102700dd5af58a8c249e3e9e2
UPSTREAM: Drop CONFIG_HAS_DATAFLASH
Last user of this option went away in commit:
fdc7718999 ("board: usb_a9263: Update to support DT and DM")
Change-Id: Id05869deccb88c1102700dd5af58a8c249e3e9e2 Signed-off-by: Tuomas Tynkkynen <tuomas.tynkkynen@iki.fi> Signed-off-by: Kever Yang <kever.yang@rock-chips.com> (cherry picked from commit c68c03f52badc90951dbf8a054c0e500e04bf365)
show more ...
|
| 4f443bd2 | 28-Sep-2017 |
York Sun <york.sun@nxp.com> |
UPSTREAM: spl: fix assignment of board info to global data
Commit 15eb1d43bf47 ("spl: reorder the assignment of board info to global data") intended to move assignment of board info earlier, into bo
UPSTREAM: spl: fix assignment of board info to global data
Commit 15eb1d43bf47 ("spl: reorder the assignment of board info to global data") intended to move assignment of board info earlier, into board_init_r(). However, function preload_console_init() is called either from spl_board_init() or from board_init_f(). For the latter case, the board info assignment is much earlier than proposed board_init_r(). Create a new function to fill gd->bd and call this function when needed.
Change-Id: I3e8da19121f5b82f116b9d051b75acdd777c2475 Signed-off-by: York Sun <york.sun@nxp.com> CC: Lokesh Vutla <lokeshvutla@ti.com> CC: Ravi Babu <ravibabu@ti.com> CC: Lukasz Majewski <lukma@denx.de> CC: Tom Rini <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org> Signed-off-by: Kever Yang <kever.yang@rock-chips.com> (cherry picked from commit d1fc0a31b5f307c92b7a047d4f90d5ad2e54cdcc)
show more ...
|
| 0079efa1 | 15-Sep-2017 |
Jean-Jacques Hiblot <jjhiblot@ti.com> |
UPSTREAM: fit: If no matching config is found in fit_find_config_node(), use the default one
If board_fit_config_name_match() doesn't match any configuration node, then use the default one (if provi
UPSTREAM: fit: If no matching config is found in fit_find_config_node(), use the default one
If board_fit_config_name_match() doesn't match any configuration node, then use the default one (if provided).
Change-Id: Ieb93f146a54cb6d75d8f6b395078c315a4fac134 Signed-off-by: Jean-Jacques Hiblot <jjhiblot@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org> Signed-off-by: Kever Yang <kever.yang@rock-chips.com> (cherry picked from commit 02035d0086b3f9114463a9b9df38a5618ffe8a04)
show more ...
|
| 1481d9f1 | 15-Sep-2017 |
Jean-Jacques Hiblot <jjhiblot@ti.com> |
UPSTREAM: fit: fixed bug in locate_dtb_in_fit()
If the dtb is the first data of the FIT, the its offset is 0x0. Change the test to '<' instead of '<='
Change-Id: Ie6dd1734049f642511db0fc1b19f2af0be
UPSTREAM: fit: fixed bug in locate_dtb_in_fit()
If the dtb is the first data of the FIT, the its offset is 0x0. Change the test to '<' instead of '<='
Change-Id: Ie6dd1734049f642511db0fc1b19f2af0bec8de04 Signed-off-by: Jean-Jacques Hiblot <jjhiblot@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org> Signed-off-by: Kever Yang <kever.yang@rock-chips.com> (cherry picked from commit d56b86eec32a700cdc16170ad8365ee7c6522f0e)
show more ...
|
| ea5b64c6 | 15-Sep-2017 |
Jean-Jacques Hiblot <jjhiblot@ti.com> |
UPSTREAM: fit: use 'const' for the input of fdt_offset() and locate_dtb_in_fit()
Those 2 functions don't modify their input, we can mark it const. This prevents compilation warnings when they are pr
UPSTREAM: fit: use 'const' for the input of fdt_offset() and locate_dtb_in_fit()
Those 2 functions don't modify their input, we can mark it const. This prevents compilation warnings when they are provided const input.
Change-Id: I9583751451cfc26a99ee94f87447dd6337d0cc67 Signed-off-by: Jean-Jacques Hiblot <jjhiblot@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org> Signed-off-by: Kever Yang <kever.yang@rock-chips.com> (cherry picked from commit 906a9dbbcba85e8b02414c960c75103cc4755102)
show more ...
|
| 2bbcffb1 | 15-Sep-2017 |
Jean-Jacques Hiblot <jjhiblot@ti.com> |
UPSTREAM: dts: renamed FIT_EMBED to MULTI_DTB_FIT and moved it to the dts Kconfig
CONFIG_FIT_EMBED might be confused with CONFIG_OF_EMBED, rename it MULTI_DTB_FIT as it is able to get a DTB from a F
UPSTREAM: dts: renamed FIT_EMBED to MULTI_DTB_FIT and moved it to the dts Kconfig
CONFIG_FIT_EMBED might be confused with CONFIG_OF_EMBED, rename it MULTI_DTB_FIT as it is able to get a DTB from a FIT image containing multiple DTBs. Also move the option to the Kconfig dedicated to the DTS options and create a README for this feature.
Change-Id: Ide55c474339db3ccd5e20499c54c8bb41fe3a2c9 Signed-off-by: Jean-Jacques Hiblot <jjhiblot@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org> Signed-off-by: Kever Yang <kever.yang@rock-chips.com> (cherry picked from commit 11955590a284ecb75892aad5f1174ca1b94a709b)
show more ...
|
| bcf5156a | 04-Oct-2017 |
Tom Rini <trini@konsulko.com> |
UPSTREAM: common: Drop LOGLEVEL to 4
While this came in with a default value of 6 I am lowering this to 4. The MTD/UBI code has a large number of error messages that we include now. In addition, "n
UPSTREAM: common: Drop LOGLEVEL to 4
While this came in with a default value of 6 I am lowering this to 4. The MTD/UBI code has a large number of error messages that we include now. In addition, "normally" warning messages are not included so this feels like a more natural level to have.
Change-Id: I20bc4b32caf1876d5f6052851580383f00a67dc9 Signed-off-by: Tom Rini <trini@konsulko.com> Signed-off-by: Kever Yang <kever.yang@rock-chips.com> (cherry picked from commit 6a3e65dea3e525b5337ca8014aa4be9f5fafeb92)
show more ...
|
| 90aa625c | 16-Sep-2017 |
Masahiro Yamada <yamada.masahiro@socionext.com> |
treewide: replace with error() with pr_err()
U-Boot widely uses error() as a bit noisier variant of printf().
This macro causes name conflict with the following line in include/linux/compiler-gcc.h
treewide: replace with error() with pr_err()
U-Boot widely uses error() as a bit noisier variant of printf().
This macro causes name conflict with the following line in include/linux/compiler-gcc.h:
# define __compiletime_error(message) __attribute__((error(message)))
This prevents us from using __compiletime_error(), and makes it difficult to fully sync BUILD_BUG macros with Linux. (Notice Linux's BUILD_BUG_ON_MSG is implemented by using compiletime_assert().)
Let's convert error() into now treewide-available pr_err().
Done with the help of Coccinelle, excluing tools/ directory.
The semantic patch I used is as follows:
// <smpl> @@@@ -error +pr_err (...) // </smpl>
Change-Id: I921807c1770d36a91e692c48ab477558bb2ed0b8 Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com> Reviewed-by: Simon Glass <sjg@chromium.org> [trini: Re-run Coccinelle] Signed-off-by: Tom Rini <trini@konsulko.com> Signed-off-by: Kever Yang <kever.yang@rock-chips.com> (cherry picked from commit 9b643e312d528f291966c1f30b0d90bf3b1d43dc)
show more ...
|
| a9a4552a | 16-Sep-2017 |
Masahiro Yamada <yamada.masahiro@socionext.com> |
UPSTREAM: printk: collect printk stuff into <linux/printk.h> with loglevel support
When we import code from Linux, with regular re-sync planned, we want to use printk() and pr_*(). U-Boot does not
UPSTREAM: printk: collect printk stuff into <linux/printk.h> with loglevel support
When we import code from Linux, with regular re-sync planned, we want to use printk() and pr_*(). U-Boot does not support them in a clean way. So, people end up with local macros, or compat headers here and there, then we occasionally see build errors of definition conflicts.
We have include/linux/compat.h, but putting all sorts of unrelated things into a single header is just a temporal workaround. Hence this patch, to find the best home for all printk variants. If you want to use printk() and friends, please include <linux/printk.h>. This header is self-contained, and pulls in only a few headers.
When I was testing this clean-up, I noticed the image size exceeded its platform limit on some boards. This is because all pr_*() that were previously defined as no-op in include/linux/mtd/mtd.h (unless CONFIG_MTD_DEBUG is set), are now enabled.
To make such boards happy, this commit also implements CONFIG_LOGLEVEL. The concept is similar to the kernel parameter "loglevel". (Actually, the Kconfig help message was taken from kernel-paremeter.txt of Linux) Messages with a loglevel smaller than console loglevel will be printed.
The difference is the loglevel is build-time determined. To save the image size, lower priority pr_*() are compiled out. I set the default of CONFIG_LOGLEVEL to 6, i.e. pr_notice and higher priority messages are compiled in.
I adjusted CONFIG_LOGLEVEL to avoid build error for some boards.
Change-Id: I997d8bbeedd48777be87472df8ed126181fc4b8e Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com> [trini: Add in SPL_LOGLEVEL that is the same as LOGLEVEL] Signed-off-by: Tom Rini <trini@konsulko.com> Signed-off-by: Kever Yang <kever.yang@rock-chips.com> (cherry picked from commit b44b30260ffa3dc82f4bb98b022483bb09e95353)
show more ...
|
| d4ecf651 | 28-Sep-2017 |
Bin Meng <bmeng.cn@gmail.com> |
UPSTREAM: usb: storage: Fix overwritten in usb_stor_set_max_xfer_blk()
The stored 'blk' value is overwritten to 'size / 512' before it can be used in usb_stor_set_max_xfer_blk(). This is not what we
UPSTREAM: usb: storage: Fix overwritten in usb_stor_set_max_xfer_blk()
The stored 'blk' value is overwritten to 'size / 512' before it can be used in usb_stor_set_max_xfer_blk(). This is not what we want. In fact, when 'size' exceeds the upper limit (USHRT_MAX * 512), we should simply assign 'size' to the upper limit.
Change-Id: I078963e74b22450d0d876e846e44d93118cff96a Reported-by: Coverity (CID: 167250) Signed-off-by: Bin Meng <bmeng.cn@gmail.com> Signed-off-by: Kever Yang <kever.yang@rock-chips.com> (cherry picked from commit 72ac8f3fc29016a31ee309b4d025b487e78906ab)
show more ...
|
| 2a137910 | 18-Sep-2017 |
Bin Meng <bmeng.cn@gmail.com> |
UPSTREAM: usb: hub: Clear BH reset status change for a 3.0 hub
USB 3.0 hubs report bit[5] in the port status change response as BH reset. The hub shall set the C_BH_PORT_RESET field for this port.
UPSTREAM: usb: hub: Clear BH reset status change for a 3.0 hub
USB 3.0 hubs report bit[5] in the port status change response as BH reset. The hub shall set the C_BH_PORT_RESET field for this port.
Change-Id: I54d72aba3b1901c505aec754f2183e4d8d2e82dd Signed-off-by: Bin Meng <bmeng.cn@gmail.com> Signed-off-by: Kever Yang <kever.yang@rock-chips.com> (cherry picked from commit 061895fbe57d29f50bb3c6c8609d56a668d1387d)
show more ...
|
| b717f6f6 | 18-Sep-2017 |
Bin Meng <bmeng.cn@gmail.com> |
UPSTREAM: usb: hub: Clear port reset before usb_hub_port_connect_change()
During usb_hub_port_connect_change(), a port reset set feature request is issued to the port, and later a port reset clear f
UPSTREAM: usb: hub: Clear port reset before usb_hub_port_connect_change()
During usb_hub_port_connect_change(), a port reset set feature request is issued to the port, and later a port reset clear feature is done to the same port before the function returns. However at the end of usb_scan_port(), we attempt to clear port reset again on a cached port status change variable, which should not be done.
Adjust the call to clear port reset to right before the call to usb_hub_port_connect_change().
Change-Id: Ib3df40451289134cc7e60a37293a33fc9fd35547 Signed-off-by: Bin Meng <bmeng.cn@gmail.com> Signed-off-by: Kever Yang <kever.yang@rock-chips.com> (cherry picked from commit b90203526f2c5bcc05b4a65241ea226b7b9f52d0)
show more ...
|
| 32cec33c | 18-Sep-2017 |
Bin Meng <bmeng.cn@gmail.com> |
UPSTREAM: usb: Read device descriptor after device is addressed for xHCI
For xHCI it is not possible to read a device descriptor before it has been assigned an address. That's why usb_setup_descript
UPSTREAM: usb: Read device descriptor after device is addressed for xHCI
For xHCI it is not possible to read a device descriptor before it has been assigned an address. That's why usb_setup_descriptor() was called with 'do_read' being false. But we really need try to read the device descriptor before starting any real communication with the default control endpoint.
Change-Id: I14a3f6698ba805f5ef35242ab9b374a91158552c Signed-off-by: Bin Meng <bmeng.cn@gmail.com> Signed-off-by: Kever Yang <kever.yang@rock-chips.com> (cherry picked from commit 932bb668bb2464115f2d08abbed44e58cfce9536)
show more ...
|
| a9cf3839 | 18-Sep-2017 |
Bin Meng <bmeng.cn@gmail.com> |
UPSTREAM: usb: Only get 64 bytes device descriptor for full speed devices
Full speed device endpoint 0 can have 8/16/32/64 bMaxPacketSize0. Other speed devices report fixed value per USB spec. So it
UPSTREAM: usb: Only get 64 bytes device descriptor for full speed devices
Full speed device endpoint 0 can have 8/16/32/64 bMaxPacketSize0. Other speed devices report fixed value per USB spec. So it only makes sense if we send a get device descriptor with 64 bytes to full speed devices.
While we are here, update the comment block to be within 80 cols.
Change-Id: I035b83fb71ce4aa37f23fccba430d65814600a55 Signed-off-by: Bin Meng <bmeng.cn@gmail.com> Signed-off-by: Kever Yang <kever.yang@rock-chips.com> (cherry picked from commit c008faa77358bb5b313696dd1d5bb8afa03a6ca2)
show more ...
|