Skip to content

Commit 38de8e3

Browse files
authored
Merge branch 'master' into as5916_54xl_add_lpmode_reset
2 parents c4cad54 + 8ef5aeb commit 38de8e3

342 files changed

Lines changed: 52331 additions & 218 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

packages/base/all/vendor-config-onl/src/python/onl/install/ShellApp.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -106,7 +106,7 @@ def __enter__(self):
106106
self.mtd = ProcMtdParser(log=self.log.getChild("mtd"))
107107

108108
def _g(d):
109-
pat = os.path.join(d, "onie/initrd.img*")
109+
pat = os.path.join(d, "onie/initrd.img*-onie")
110110
l = glob.glob(pat)
111111
if l: return l[0]
112112
return None

packages/base/all/vendor-config-onl/src/python/onl/platform/base.py

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -624,7 +624,7 @@ class OnlPlatformPortConfig_10x400_18x100_2x10(object):
624624
class OnlPlatformPortConfig_2x100_2x400_24x25(object):
625625
PORT_COUNT=28
626626
PORT_CONFIG="2x100 + 2x400 + 24x25"
627-
627+
628628
class OnlPlatformPortConfig_2x100_8x25_16x10_4x1(object):
629629
PORT_COUNT=30
630630
PORT_CONFIG="2x100 + 8x25 + 16x10 + 4x1"
@@ -644,3 +644,9 @@ class OnlPlatformPortConfig_2x400_8x100_64x25(object):
644644
class OnlPlatformPortConfig_48x1_8x10(object):
645645
PORT_COUNT=56
646646
PORT_CONFIG="48x1 + 8x10"
647+
class OnlPlatformPortConfig_40x100_13x400_2x10(object):
648+
PORT_COUNT=55
649+
PORT_CONFIG="40x100 + 13x400 + 2x10"
650+
class OnlPlatformPortConfig_64x800_2x25(object):
651+
PORT_COUNT=66
652+
PORT_CONFIG="64x800 + 2x25"

packages/base/any/kernels/5.4-lts/configs/x86_64-all/x86_64-all.config

Lines changed: 37 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,8 @@
11
#
22
# Automatically generated file; DO NOT EDIT.
3-
# Linux/x86 5.4.40 Kernel Configuration
3+
# Linux/x86_64 5.4.40 Kernel Configuration
44
#
55

6-
#
7-
# Compiler: gcc (Ubuntu 7.5.0-3ubuntu1~16.04) 7.5.0
8-
#
9-
CONFIG_CC_IS_GCC=y
10-
CONFIG_GCC_VERSION=70500
11-
CONFIG_CLANG_VERSION=0
12-
CONFIG_CC_CAN_LINK=y
13-
CONFIG_CC_HAS_ASM_GOTO=y
14-
CONFIG_CC_HAS_ASM_INLINE=y
15-
CONFIG_CC_HAS_WARN_MAYBE_UNINITIALIZED=y
16-
CONFIG_IRQ_WORK=y
17-
CONFIG_BUILDTIME_EXTABLE_SORT=y
18-
CONFIG_THREAD_INFO_IN_TASK=y
19-
206
#
217
# General setup
228
#
@@ -475,7 +461,7 @@ CONFIG_ACPI_PROCESSOR_CSTATE=y
475461
CONFIG_ACPI_PROCESSOR_IDLE=y
476462
CONFIG_ACPI_CPPC_LIB=y
477463
CONFIG_ACPI_PROCESSOR=y
478-
# CONFIG_ACPI_IPMI is not set
464+
CONFIG_ACPI_IPMI=y
479465
CONFIG_ACPI_HOTPLUG_CPU=y
480466
# CONFIG_ACPI_PROCESSOR_AGGREGATOR is not set
481467
CONFIG_ACPI_THERMAL=y
@@ -1175,7 +1161,7 @@ CONFIG_NET_FLOW_LIMIT=y
11751161
#
11761162
# Network testing
11771163
#
1178-
# CONFIG_NET_PKTGEN is not set
1164+
CONFIG_NET_PKTGEN=m
11791165
# CONFIG_NET_DROP_MONITOR is not set
11801166
# end of Network testing
11811167
# end of Networking options
@@ -1392,8 +1378,11 @@ CONFIG_VIRTIO_BLK_SCSI=y
13921378
#
13931379
# NVME Support
13941380
#
1395-
# CONFIG_BLK_DEV_NVME is not set
1381+
CONFIG_NVME_CORE=y
1382+
CONFIG_BLK_DEV_NVME=y
13961383
# CONFIG_NVME_FC is not set
1384+
# CONFIG_NVME_TCP is not set
1385+
# CONFIG_NVME_MULTIPATH is not set
13971386
# end of NVME Support
13981387

13991388
#
@@ -1809,7 +1798,8 @@ CONFIG_IGB=y
18091798
CONFIG_IGB_HWMON=y
18101799
# CONFIG_IGBVF is not set
18111800
# CONFIG_IXGB is not set
1812-
# CONFIG_IXGBE is not set
1801+
CONFIG_IXGBE=y
1802+
CONFIG_IXGBE_HWMON=y
18131803
# CONFIG_IXGBEVF is not set
18141804
# CONFIG_I40E is not set
18151805
# CONFIG_I40EVF is not set
@@ -2370,7 +2360,6 @@ CONFIG_SERIAL_CORE_CONSOLE=y
23702360
# CONFIG_SERIAL_FSL_LINFLEXUART is not set
23712361
# end of Serial drivers
23722362

2373-
CONFIG_SERIAL_MCTRL_GPIO=y
23742363
# CONFIG_SERIAL_DEV_BUS is not set
23752364
CONFIG_HVC_DRIVER=y
23762365
CONFIG_VIRTIO_CONSOLE=y
@@ -2433,7 +2422,7 @@ CONFIG_I2C_MUX=y
24332422
# CONFIG_I2C_MUX_LTC4306 is not set
24342423
# CONFIG_I2C_MUX_PCA9541 is not set
24352424
CONFIG_I2C_MUX_PCA954x=y
2436-
# CONFIG_I2C_MUX_REG is not set
2425+
CONFIG_I2C_MUX_REG=y
24372426
# CONFIG_I2C_MUX_MLXCPLD is not set
24382427
# end of Multiplexer I2C Chip support
24392428

@@ -2457,6 +2446,7 @@ CONFIG_I2C_ALGOBIT=y
24572446
CONFIG_I2C_I801=y
24582447
CONFIG_I2C_ISCH=y
24592448
CONFIG_I2C_ISMT=m
2449+
CONFIG_I2C_IMC=m
24602450
# CONFIG_I2C_PIIX4 is not set
24612451
# CONFIG_I2C_NFORCE2 is not set
24622452
# CONFIG_I2C_NVIDIA_GPU is not set
@@ -2537,7 +2527,6 @@ CONFIG_PTP_1588_CLOCK=y
25372527
# CONFIG_PINCTRL is not set
25382528
CONFIG_GPIOLIB=y
25392529
CONFIG_GPIOLIB_FASTPATH_LIMIT=512
2540-
CONFIG_GPIO_ACPI=y
25412530
# CONFIG_DEBUG_GPIO is not set
25422531
# CONFIG_GPIO_SYSFS is not set
25432532

@@ -2678,7 +2667,7 @@ CONFIG_HWMON=y
26782667
# CONFIG_SENSORS_I5500 is not set
26792668
CONFIG_SENSORS_CORETEMP=y
26802669
# CONFIG_SENSORS_IT87 is not set
2681-
# CONFIG_SENSORS_JC42 is not set
2670+
CONFIG_SENSORS_JC42=m
26822671
# CONFIG_SENSORS_POWR1220 is not set
26832672
# CONFIG_SENSORS_LINEAGE is not set
26842673
# CONFIG_SENSORS_LTC2945 is not set
@@ -2703,7 +2692,7 @@ CONFIG_SENSORS_CORETEMP=y
27032692
# CONFIG_SENSORS_TC654 is not set
27042693
# CONFIG_SENSORS_LM63 is not set
27052694
# CONFIG_SENSORS_LM73 is not set
2706-
# CONFIG_SENSORS_LM75 is not set
2695+
CONFIG_SENSORS_LM75=y
27072696
# CONFIG_SENSORS_LM77 is not set
27082697
# CONFIG_SENSORS_LM78 is not set
27092698
# CONFIG_SENSORS_LM80 is not set
@@ -2725,7 +2714,29 @@ CONFIG_SENSORS_CORETEMP=y
27252714
# CONFIG_SENSORS_NCT7904 is not set
27262715
# CONFIG_SENSORS_NPCM7XX is not set
27272716
# CONFIG_SENSORS_PCF8591 is not set
2728-
# CONFIG_PMBUS is not set
2717+
CONFIG_PMBUS=y
2718+
# CONFIG_SENSORS_PMBUS is not set
2719+
CONFIG_SENSORS_UCD9000=y
2720+
# CONFIG_SENSORS_ADM1275 is not set
2721+
# CONFIG_SENSORS_IBM_CFFPS is not set
2722+
# CONFIG_SENSORS_INSPUR_IPSPS is not set
2723+
# CONFIG_SENSORS_IR35221 is not set
2724+
# CONFIG_SENSORS_IR38064 is not set
2725+
# CONFIG_SENSORS_IRPS5401 is not set
2726+
# CONFIG_SENSORS_ISL68137 is not set
2727+
# CONFIG_SENSORS_LM25066 is not set
2728+
# CONFIG_SENSORS_LTC2978 is not set
2729+
# CONFIG_SENSORS_LTC3815 is not set
2730+
# CONFIG_SENSORS_MAX16064 is not set
2731+
# CONFIG_SENSORS_MAX20751 is not set
2732+
# CONFIG_SENSORS_MAX31785 is not set
2733+
# CONFIG_SENSORS_MAX34440 is not set
2734+
# CONFIG_SENSORS_MAX8688 is not set
2735+
# CONFIG_SENSORS_PXE1610 is not set
2736+
# CONFIG_SENSORS_TPS40422 is not set
2737+
# CONFIG_SENSORS_TPS53679 is not set
2738+
# CONFIG_SENSORS_UCD9200 is not set
2739+
# CONFIG_SENSORS_ZL6100 is not set
27292740
# CONFIG_SENSORS_SHT15 is not set
27302741
# CONFIG_SENSORS_SHT21 is not set
27312742
# CONFIG_SENSORS_SHT3x is not set
@@ -2940,6 +2951,7 @@ CONFIG_LPC_SCH=y
29402951
# CONFIG_MFD_TI_LMU is not set
29412952
# CONFIG_MFD_PALMAS is not set
29422953
# CONFIG_TPS6105X is not set
2954+
CONFIG_TPS536C7=y
29432955
# CONFIG_TPS65010 is not set
29442956
# CONFIG_TPS6507X is not set
29452957
# CONFIG_MFD_TPS65086 is not set
Lines changed: 140 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,140 @@
1+
Backport regmap-i2c from kernel 5.8 to support 16-bit width registers
2+
3+
From: Nicholas Wu <nicwu@celestica.com>
4+
5+
Allowing access to chips with 16-bit registers width like 24c64,
6+
24c256 via i2c SMBus block funtions.
7+
8+
Contain followings upstream patches:
9+
37613fa regmap: add proper SPDX identifiers on files that did not have them.
10+
14e01b5 regmap-i2c: constify regmap_bus structures
11+
82f25bd regmap-i2c: add 16-bit width registers support
12+
13+
Signed-off-by: Nicholas Wu <nicwu@celestica.com>
14+
---
15+
drivers/base/regmap/regmap-i2c.c | 71 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-----
16+
1 file changed, 66 insertions(+), 5 deletions(-)
17+
18+
diff --git a/drivers/base/regmap/regmap-i2c.c b/drivers/base/regmap/regmap-i2c.c
19+
index ac9b31c..62b95a9 100644
20+
--- a/drivers/base/regmap/regmap-i2c.c
21+
+++ b/drivers/base/regmap/regmap-i2c.c
22+
@@ -43,7 +43,7 @@ static int regmap_smbus_byte_reg_write(void *context, unsigned int reg,
23+
return i2c_smbus_write_byte_data(i2c, reg, val);
24+
}
25+
26+
-static struct regmap_bus regmap_smbus_byte = {
27+
+static const struct regmap_bus regmap_smbus_byte = {
28+
.reg_write = regmap_smbus_byte_reg_write,
29+
.reg_read = regmap_smbus_byte_reg_read,
30+
};
31+
@@ -79,7 +79,7 @@ static int regmap_smbus_word_reg_write(void *context, unsigned int reg,
32+
return i2c_smbus_write_word_data(i2c, reg, val);
33+
}
34+
35+
-static struct regmap_bus regmap_smbus_word = {
36+
+static const struct regmap_bus regmap_smbus_word = {
37+
.reg_write = regmap_smbus_word_reg_write,
38+
.reg_read = regmap_smbus_word_reg_read,
39+
};
40+
@@ -115,7 +115,7 @@ static int regmap_smbus_word_write_swapped(void *context, unsigned int reg,
41+
return i2c_smbus_write_word_swapped(i2c, reg, val);
42+
}
43+
44+
-static struct regmap_bus regmap_smbus_word_swapped = {
45+
+static const struct regmap_bus regmap_smbus_word_swapped = {
46+
.reg_write = regmap_smbus_word_write_swapped,
47+
.reg_read = regmap_smbus_word_read_swapped,
48+
};
49+
@@ -197,7 +197,7 @@ static int regmap_i2c_read(void *context,
50+
return -EIO;
51+
}
52+
53+
-static struct regmap_bus regmap_i2c = {
54+
+static const struct regmap_bus regmap_i2c = {
55+
.write = regmap_i2c_write,
56+
.gather_write = regmap_i2c_gather_write,
57+
.read = regmap_i2c_read,
58+
@@ -239,13 +239,70 @@ static int regmap_i2c_smbus_i2c_read(void *context, const void *reg,
59+
return -EIO;
60+
}
61+
62+
-static struct regmap_bus regmap_i2c_smbus_i2c_block = {
63+
+static const struct regmap_bus regmap_i2c_smbus_i2c_block = {
64+
.write = regmap_i2c_smbus_i2c_write,
65+
.read = regmap_i2c_smbus_i2c_read,
66+
.max_raw_read = I2C_SMBUS_BLOCK_MAX,
67+
.max_raw_write = I2C_SMBUS_BLOCK_MAX,
68+
};
69+
70+
+static int regmap_i2c_smbus_i2c_write_reg16(void *context, const void *data,
71+
+ size_t count)
72+
+{
73+
+ struct device *dev = context;
74+
+ struct i2c_client *i2c = to_i2c_client(dev);
75+
+
76+
+ if (count < 2)
77+
+ return -EINVAL;
78+
+
79+
+ count--;
80+
+ return i2c_smbus_write_i2c_block_data(i2c, ((u8 *)data)[0], count,
81+
+ (u8 *)data + 1);
82+
+}
83+
+
84+
+static int regmap_i2c_smbus_i2c_read_reg16(void *context, const void *reg,
85+
+ size_t reg_size, void *val,
86+
+ size_t val_size)
87+
+{
88+
+ struct device *dev = context;
89+
+ struct i2c_client *i2c = to_i2c_client(dev);
90+
+ int ret, count, len = val_size;
91+
+
92+
+ if (reg_size != 2)
93+
+ return -EINVAL;
94+
+
95+
+ ret = i2c_smbus_write_byte_data(i2c, ((u16 *)reg)[0] & 0xff,
96+
+ ((u16 *)reg)[0] >> 8);
97+
+ if (ret < 0)
98+
+ return ret;
99+
+
100+
+ count = 0;
101+
+ do {
102+
+ /* Current Address Read */
103+
+ ret = i2c_smbus_read_byte(i2c);
104+
+ if (ret < 0)
105+
+ break;
106+
+
107+
+ *((u8 *)val++) = ret;
108+
+ count++;
109+
+ len--;
110+
+ } while (len > 0);
111+
+
112+
+ if (count == val_size)
113+
+ return 0;
114+
+ else if (ret < 0)
115+
+ return ret;
116+
+ else
117+
+ return -EIO;
118+
+}
119+
+
120+
+static const struct regmap_bus regmap_i2c_smbus_i2c_block_reg16 = {
121+
+ .write = regmap_i2c_smbus_i2c_write_reg16,
122+
+ .read = regmap_i2c_smbus_i2c_read_reg16,
123+
+ .max_raw_read = I2C_SMBUS_BLOCK_MAX,
124+
+ .max_raw_write = I2C_SMBUS_BLOCK_MAX,
125+
+};
126+
+
127+
static const struct regmap_bus *regmap_get_i2c_bus(struct i2c_client *i2c,
128+
const struct regmap_config *config)
129+
{
130+
@@ -255,6 +312,10 @@ static const struct regmap_bus *regmap_get_i2c_bus(struct i2c_client *i2c,
131+
i2c_check_functionality(i2c->adapter,
132+
I2C_FUNC_SMBUS_I2C_BLOCK))
133+
return &regmap_i2c_smbus_i2c_block;
134+
+ else if (config->val_bits == 8 && config->reg_bits == 16 &&
135+
+ i2c_check_functionality(i2c->adapter,
136+
+ I2C_FUNC_SMBUS_I2C_BLOCK))
137+
+ return &regmap_i2c_smbus_i2c_block_reg16;
138+
else if (config->val_bits == 16 && config->reg_bits == 8 &&
139+
i2c_check_functionality(i2c->adapter,
140+
I2C_FUNC_SMBUS_WORD_DATA))
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
diff --git a/arch/x86/kernel/acpi/boot.c b/arch/x86/kernel/acpi/boot.c
2+
index f9e84a0..2334b69 100644
3+
--- a/arch/x86/kernel/acpi/boot.c
4+
+++ b/arch/x86/kernel/acpi/boot.c
5+
@@ -1625,8 +1625,7 @@ int __init acpi_boot_init(void)
6+
if (!acpi_noirq)
7+
x86_init.pci.init = pci_acpi_init;
8+
9+
- /* Do not enable ACPI SPCR console by default */
10+
- acpi_parse_spcr(earlycon_acpi_spcr_enable, false);
11+
+ acpi_parse_spcr(earlycon_acpi_spcr_enable, true);
12+
return 0;
13+
}
14+

0 commit comments

Comments
 (0)