linux/drivers/thunderbolt
Mika Westerberg d94dcbb101 thunderbolt: Do not fail adding switch if some port is not implemented
There are two ways to mark a port as unimplemented. Typical way is to
return port type as TB_TYPE_INACTIVE when its config space is read.
Alternatively if the port is not physically present (such as ports 10
and 11 in ICL) reading from port config space returns
TB_CFG_ERROR_INVALID_CONFIG_SPACE instead. Currently the driver bails
out from adding the switch if it receives any error during port
inititialization which is wrong.

Handle this properly and just leave the port as TB_TYPE_INACTIVE before
continuing to the next port.

This also allows us to get rid of special casing for Light Ridge port 5
in eeprom.c.

Signed-off-by: Mika Westerberg <mika.westerberg@linux.intel.com>
Reviewed-by: Yehezkel Bernat <YehezkelShB@gmail.com>
Tested-by: Mario Limonciello <mario.limonciello@dell.com>
2019-08-26 12:14:51 +03:00
..
Kconfig treewide: Add SPDX license identifier - Makefile/Kconfig 2019-05-21 10:50:46 +02:00
Makefile treewide: Add SPDX license identifier - Makefile/Kconfig 2019-05-21 10:50:46 +02:00
cap.c thunderbolt: Add dummy read after port capability list walk on Light Ridge 2019-04-18 11:18:51 +03:00
ctl.c thunderbolt: Do not fail adding switch if some port is not implemented 2019-08-26 12:14:51 +03:00
ctl.h thunderbolt: Add Intel as copyright holder 2018-10-02 15:52:08 -07:00
dma_port.c thunderbolt: Convert rest of the driver files to use SPDX identifier 2018-10-02 15:52:08 -07:00
dma_port.h thunderbolt: Convert rest of the driver files to use SPDX identifier 2018-10-02 15:52:08 -07:00
domain.c crypto: shash - remove shash_desc::flags 2019-04-25 15:38:12 +08:00
eeprom.c thunderbolt: Do not fail adding switch if some port is not implemented 2019-08-26 12:14:51 +03:00
icm.c thunderbolt: Move NVM upgrade support flag to struct icm 2019-08-26 12:14:32 +03:00
lc.c thunderbolt: Set sleep bit when suspending switch 2019-04-18 11:18:52 +03:00
nhi.c thunderbolt: Use 32-bit writes when writing ring producer/consumer 2019-08-26 12:14:46 +03:00
nhi.h thunderbolt: Add Intel as copyright holder 2018-10-02 15:52:08 -07:00
nhi_regs.h thunderbolt: Add Intel as copyright holder 2018-10-02 15:52:08 -07:00
path.c thunderbolt: Reword output of tb_dump_hop() 2019-04-18 11:18:54 +03:00
property.c thunderbolt: property: Fix a missing check of kzalloc 2019-03-28 11:30:47 +03:00
switch.c thunderbolt: Do not fail adding switch if some port is not implemented 2019-08-26 12:14:51 +03:00
tb.c thunderbolt: Make rest of the logging to happen at debug level 2019-04-18 11:18:53 +03:00
tb.h thunderbolt: Make sure device runtime resume completes before taking domain lock 2019-06-12 13:30:46 +03:00
tb_msgs.h thunderbolt: Add XDomain UUID exchange support 2019-04-18 11:18:53 +03:00
tb_regs.h thunderbolt: Add support for DMA tunnels 2019-04-18 11:18:53 +03:00
tunnel.c thunderbolt: Correct path indices for PCIe tunnel 2019-08-26 12:08:57 +03:00
tunnel.h thunderbolt: Add support for DMA tunnels 2019-04-18 11:18:53 +03:00
xdomain.c thunderbolt: Show key using %*pE not %*pEp 2019-08-06 15:35:43 +03:00