[linux-yocto] [PATCH 12/22] valleyisland-io: designware-pci support for Intel BayTrail
boon.leong.ong at intel.com
boon.leong.ong at intel.com
Wed Jan 29 10:41:37 PST 2014
From: Ong Boon Leong <boon.leong.ong at intel.com>
This is to enable PCI mode of Intel BayTrail LPSS I2C.
Signed-off-by: Ong Boon Leong <boon.leong.ong at intel.com>
---
...are-pci-Add-support-for-Intel-BayTrail-LP.patch | 125 ++++++++++++++++++++
1 file changed, 125 insertions(+)
create mode 100644 meta/cfg/kernel-cache/features/valleyisland-io/0010-i2c-designware-pci-Add-support-for-Intel-BayTrail-LP.patch
diff --git a/meta/cfg/kernel-cache/features/valleyisland-io/0010-i2c-designware-pci-Add-support-for-Intel-BayTrail-LP.patch b/meta/cfg/kernel-cache/features/valleyisland-io/0010-i2c-designware-pci-Add-support-for-Intel-BayTrail-LP.patch
new file mode 100644
index 0000000..6972db7
--- /dev/null
+++ b/meta/cfg/kernel-cache/features/valleyisland-io/0010-i2c-designware-pci-Add-support-for-Intel-BayTrail-LP.patch
@@ -0,0 +1,125 @@
+From 0a68b53ed89babf66c938ae85a0b903128183178 Mon Sep 17 00:00:00 2001
+From: Kweh, Hock Leong <hock.leong.kweh at intel.com>
+Date: Mon, 13 Jan 2014 05:35:06 +0800
+Subject: [PATCH 10/17] i2c: designware-pci: Add support for Intel BayTrail
+ LPSS I2C
+
+This is to enable PCI mode of Intel BayTrail LPSS I2C.
+
+Signed-off-by: Kweh, Hock Leong <hock.leong.kweh at intel.com>
+---
+ drivers/i2c/busses/i2c-designware-pcidrv.c | 70 +++++++++++++++++++++++++++-
+ 1 files changed, 69 insertions(+), 1 deletions(-)
+
+diff --git a/drivers/i2c/busses/i2c-designware-pcidrv.c b/drivers/i2c/busses/i2c-designware-pcidrv.c
+index f6ed06c..afd8ae0 100644
+--- a/drivers/i2c/busses/i2c-designware-pcidrv.c
++++ b/drivers/i2c/busses/i2c-designware-pcidrv.c
+@@ -54,6 +54,14 @@ enum dw_pci_ctl_id_t {
+ medfield_3,
+ medfield_4,
+ medfield_5,
++
++ byt_0,
++ byt_1,
++ byt_2,
++ byt_3,
++ byt_4,
++ byt_5,
++ byt_6,
+ };
+
+ struct dw_pci_controller {
+@@ -68,6 +76,10 @@ struct dw_pci_controller {
+ DW_IC_CON_SLAVE_DISABLE | \
+ DW_IC_CON_RESTART_EN)
+
++#define INTEL_BYT_STD_CFG (DW_IC_CON_MASTER | \
++ DW_IC_CON_SLAVE_DISABLE | \
++ DW_IC_CON_RESTART_EN)
++
+ static struct dw_pci_controller dw_pci_controllers[] = {
+ [moorestown_0] = {
+ .bus_num = 0,
+@@ -132,6 +144,55 @@ static struct dw_pci_controller dw_pci_controllers[] = {
+ .rx_fifo_depth = 32,
+ .clk_khz = 25000,
+ },
++ [byt_0] = {
++ .bus_num = 0,
++ .bus_cfg = INTEL_BYT_STD_CFG | DW_IC_CON_SPEED_FAST,
++ .tx_fifo_depth = 32,
++ .rx_fifo_depth = 32,
++ .clk_khz = 100000,
++ },
++ [byt_1] = {
++ .bus_num = 1,
++ .bus_cfg = INTEL_BYT_STD_CFG | DW_IC_CON_SPEED_FAST,
++ .tx_fifo_depth = 32,
++ .rx_fifo_depth = 32,
++ .clk_khz = 100000,
++ },
++ [byt_2] = {
++ .bus_num = 2,
++ .bus_cfg = INTEL_BYT_STD_CFG | DW_IC_CON_SPEED_FAST,
++ .tx_fifo_depth = 32,
++ .rx_fifo_depth = 32,
++ .clk_khz = 100000,
++ },
++ [byt_3] = {
++ .bus_num = 3,
++ .bus_cfg = INTEL_BYT_STD_CFG | DW_IC_CON_SPEED_FAST,
++ .tx_fifo_depth = 32,
++ .rx_fifo_depth = 32,
++ .clk_khz = 100000,
++ },
++ [byt_4] = {
++ .bus_num = 4,
++ .bus_cfg = INTEL_BYT_STD_CFG | DW_IC_CON_SPEED_FAST,
++ .tx_fifo_depth = 32,
++ .rx_fifo_depth = 32,
++ .clk_khz = 100000,
++ },
++ [byt_5] = {
++ .bus_num = 5,
++ .bus_cfg = INTEL_BYT_STD_CFG | DW_IC_CON_SPEED_FAST,
++ .tx_fifo_depth = 32,
++ .rx_fifo_depth = 32,
++ .clk_khz = 100000,
++ },
++ [byt_6] = {
++ .bus_num = 6,
++ .bus_cfg = INTEL_BYT_STD_CFG | DW_IC_CON_SPEED_FAST,
++ .tx_fifo_depth = 32,
++ .rx_fifo_depth = 32,
++ .clk_khz = 100000,
++ },
+ };
+ static struct i2c_algorithm i2c_dw_algo = {
+ .master_xfer = i2c_dw_xfer,
+@@ -254,7 +315,6 @@ static int i2c_dw_pci_probe(struct pci_dev *pdev,
+ I2C_FUNC_SMBUS_WORD_DATA |
+ I2C_FUNC_SMBUS_I2C_BLOCK;
+ dev->master_cfg = controller->bus_cfg;
+-
+ pci_set_drvdata(pdev, dev);
+
+ dev->tx_fifo_depth = controller->tx_fifo_depth;
+@@ -321,6 +381,14 @@ static DEFINE_PCI_DEVICE_TABLE(i2_designware_pci_ids) = {
+ { PCI_VDEVICE(INTEL, 0x082C), medfield_0 },
+ { PCI_VDEVICE(INTEL, 0x082D), medfield_1 },
+ { PCI_VDEVICE(INTEL, 0x082E), medfield_2 },
++ /* BYT */
++ { PCI_VDEVICE(INTEL, 0x0F41), byt_0 },
++ { PCI_VDEVICE(INTEL, 0x0F42), byt_1 },
++ { PCI_VDEVICE(INTEL, 0x0F43), byt_2 },
++ { PCI_VDEVICE(INTEL, 0x0F44), byt_3 },
++ { PCI_VDEVICE(INTEL, 0x0F45), byt_4 },
++ { PCI_VDEVICE(INTEL, 0x0F46), byt_5 },
++ { PCI_VDEVICE(INTEL, 0x0F47), byt_6 },
+ { 0,}
+ };
+ MODULE_DEVICE_TABLE(pci, i2_designware_pci_ids);
+--
+1.7.4.4
+
--
1.7.10.4
More information about the linux-yocto
mailing list