bcma: implement host code support for PCIe Gen 2 devices
This is stil incomplete, so we don't add PCI IDs of new devices yet. Purpose of this patch is to allow testing & adjusting rest of the code. Signed-off-by: Rafał Miłecki <zajec5@gmail.com> Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
This commit is contained in:
committed by
Kalle Valo
parent
b504075f59
commit
8be08a39d4
@@ -13,10 +13,12 @@
|
|||||||
|
|
||||||
static void bcma_host_pci_switch_core(struct bcma_device *core)
|
static void bcma_host_pci_switch_core(struct bcma_device *core)
|
||||||
{
|
{
|
||||||
|
int win2 = core->bus->host_is_pcie2 ?
|
||||||
|
BCMA_PCIE2_BAR0_WIN2 : BCMA_PCI_BAR0_WIN2;
|
||||||
|
|
||||||
pci_write_config_dword(core->bus->host_pci, BCMA_PCI_BAR0_WIN,
|
pci_write_config_dword(core->bus->host_pci, BCMA_PCI_BAR0_WIN,
|
||||||
core->addr);
|
core->addr);
|
||||||
pci_write_config_dword(core->bus->host_pci, BCMA_PCI_BAR0_WIN2,
|
pci_write_config_dword(core->bus->host_pci, win2, core->wrap);
|
||||||
core->wrap);
|
|
||||||
core->bus->mapped_core = core;
|
core->bus->mapped_core = core;
|
||||||
bcma_debug(core->bus, "Switched to core: 0x%X\n", core->id.id);
|
bcma_debug(core->bus, "Switched to core: 0x%X\n", core->id.id);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -318,6 +318,7 @@ struct bcma_bus {
|
|||||||
const struct bcma_host_ops *ops;
|
const struct bcma_host_ops *ops;
|
||||||
|
|
||||||
enum bcma_hosttype hosttype;
|
enum bcma_hosttype hosttype;
|
||||||
|
bool host_is_pcie2; /* Used for BCMA_HOSTTYPE_PCI only */
|
||||||
union {
|
union {
|
||||||
/* Pointer to the PCI bus (only for BCMA_HOSTTYPE_PCI) */
|
/* Pointer to the PCI bus (only for BCMA_HOSTTYPE_PCI) */
|
||||||
struct pci_dev *host_pci;
|
struct pci_dev *host_pci;
|
||||||
|
|||||||
@@ -64,6 +64,8 @@
|
|||||||
#define BCMA_PCI_GPIO_XTAL 0x40 /* PCI config space GPIO 14 for Xtal powerup */
|
#define BCMA_PCI_GPIO_XTAL 0x40 /* PCI config space GPIO 14 for Xtal powerup */
|
||||||
#define BCMA_PCI_GPIO_PLL 0x80 /* PCI config space GPIO 15 for PLL powerdown */
|
#define BCMA_PCI_GPIO_PLL 0x80 /* PCI config space GPIO 15 for PLL powerdown */
|
||||||
|
|
||||||
|
#define BCMA_PCIE2_BAR0_WIN2 0x70
|
||||||
|
|
||||||
/* SiliconBackplane Address Map.
|
/* SiliconBackplane Address Map.
|
||||||
* All regions may not exist on all chips.
|
* All regions may not exist on all chips.
|
||||||
*/
|
*/
|
||||||
|
|||||||
Reference in New Issue
Block a user