- Aug 19, 2022
-
-
Tobias Kahlki authored
-
Tobias Kahlki authored
The Trizeps 8 Plus v1r3 revision has a new audio codec that is not yet supported. Disable the old codec anyways to prevent from unexpected behaviour.
-
- Aug 17, 2022
-
-
Tobias Kahlki authored
A duplicate of the seco logo was present in the logos dir.
-
Tobias Kahlki authored
The image file for the fngsystem boot logo was missing. Re-added the file to fix the kernel build.
-
Tobias Kahlki authored
Both logos need to be enabled by default. The logo that is added to the kernel is picked through the defconfig and the override in the kernel include file.
-
Tobias Kahlki authored
Cherry-pick from af765e15
-
Added wakeupsource and interrupt for RTC rv3028. Now wakealarm the is available at: /sys/class/rtc/rtc0/wakealarm BCS 746-000767 (cherry picked from commit a72cb6a2)
-
Measured the pixelclock on the lvds interface the frequencies generated by media_dips2_pix clock do not match the calculated values by the driver. The driver selects a devider between 1 and 64 ( according to the ref manual) but the measured frequencies only end up with frequencies matching a devider from 1,7,14,21,35. This patch changes the selected of deviders to that list, so the frequency is rounded to a actually working frequency. BCS 746-000495 (cherry picked from commit 70382bea)
-
The imx8mp ldb driver had an hardcoded overwrite for the pixelclock as the video_pll is not able to generate all needed frequencies. But the hardcoded value only fits to one mode, probably used on the EVK. Removing this override leads to a pixelclock that may be generated with a devider from the PLL, which ends up with a frquency much closer to what is expected. Also it is not the ldb clock but the lcdif clock used for this, so this seems to be the wrong place for modifying the clock anyway. BCS 746-000502 (cherry picked from commit 86df943d)
-
The pwm-legacy-backlight driver is removed in the 5.15 kernel. Use pwm-backlight instead. BCS 746-001009
-
Tobias Kahlki authored
For some reason, without the hdmiphy the device stalls during the boot process. Further investigation into why this happens is required. BCS 746-001009
-
Tobias Kahlki authored
The ethernet phy and audio codec have changed in the new revision of the Trizeps 8 Plus. Removed the unwanted properties from the ethphy0 node and set the address to 0. The audio codec hasn't been added yet. Cherry-pick from a40f7a72 BCS 746-000835
-
Tobias Kahlki authored
Changed the driver to probe without interrupt gpio, as the irq is not routed on the trizeps8plus board. It seems to be used for debug output on pmic errors only, so it should work without. Cherry-pick from 7739e8c9 (cherry picked from commit 3ec08c4d)
-
Tobias Kahlki authored
-
Tobias Kahlki authored
-
Tobias Kahlki authored
-
Tobias Kahlki authored
-
-
Tobias Kahlki authored
The first approach of selecting a RTC didn't work as expected. The active RTC must reside on the rtc0 alias because otherwise the hwclock utilities can't access the RTC. For this to work, we now have a placeholder in the main device tree that is filled with the actual values in one of the two overlays. This breaks with the naming conventions for I2C bus devices, but right now, we don't have a better solution. BCS 746-000877 (cherry picked from commit 11963a85)
-
Tobias Kahlki authored
The TANARO will be produced with one of two RTC variants. One of them will be activated during the installation by applying one of the overlays. BCS 746-000877 (cherry picked from commit 9b1710b2)
-
Tobias Kahlki authored
Replaced imx8mp-pinfunc.h and imx8mp.dtsi with the files provided with the 5.15 kernel.
-
Tobias Kahlki authored
Our devicetrees reside in the seconorth sub-directory.
-
Tobias Kahlki authored
Added missing devicetree include and added the new devicetrees to the Makefile.
-
Tobias Kahlki authored
The devicetrees and includes have been copied from the linux-5.10.9-guf branch.
-
-
The enable gpio was used as enable pin and additionally configured as enable for a regulator. The duplicated usage was not allowed and made the driver probe fail. For now the tas2552 driver controlls the enable gpio, which is also only half correct, as the MIC supply is also controlled with this pin.
-
Tobias Kahlki authored
Updated the seco logo from the marketing's eps file. (cherry picked from commit fa277d89)
-
Reparent mipi to also use the VIDEO_PLL1 so it is also uses spread spectrum when SSC is enabled on this PLL.
-
Rename display enable to lcd enable and remove defines from tanaro_pinfunc.h
-
When the probe function returned -EPROBE_DEFER the second call to the probe failed because the resets couldn't be acquired a second time. This releases the resets in case of error, so the second call to probe is able to get the resets.
-
The rohm bd71847 driver refuses to start without irq setup. As the line is connected to a gpio, I added the definitions to the devicetree.
-
-
During boot with pcie enabled, the output stops in the pcie initialization. Removed for now.
-
-
Copy the files from the 5.10 kernel, except for imx8mm.dtsi and imx8mm-pinfunc.h which come from the freescale devicetree directory in the 5.15 kernel.
-
- Jun 07, 2022
-
-
Ioana Ciornei authored
It seems that there are circumstances when access to QBMAN through the software portals will be delayed. Accessing some lower speeds interfaces while also QBMAN commands are issued from the kernel will lead to software timeouts happening in the dpaa2-eth driver. What we have observed is that management commands like re-arming the interrupts on a specific channel, waiting for a dequeue response to be available etc, will take a longer time to complete. All these commands have to wait for a valid bit to be set for the command to be interpreted as successfully completed. Increase the maximum number of times the Linux kernel drivers will busy poll for a successful result of one of these commands. Signed-off-by:
Ioana Ciornei <ioana.ciornei@nxp.com>
-
- Jun 06, 2022
-
-
Ioana Ciornei authored
Enable CONFIG_SFP for the Linux SFP infrastructure. Also, enable the Lynx 28G SerDes PHY driver which supports runtime reconfiguration of SerDes lanes. Signed-off-by:
Ioana Ciornei <ioana.ciornei@nxp.com>
-
Ioana Ciornei authored
There is a downstream patch which adds a new interface type - PHY_INTERFACE_MODE_2500SGMII (which is really the same one as PHY_INTERFACE_MODE_2500BASEX). We backported from upstream the following phylink patch which, of course, does not treat the PHY_INTERFACE_MODE_2500SGMII interface mode in a switch case statement. 34ae2c09 ("net: phylink: add generic validate implementation") Because of this, we get the following build warning. drivers/net/phy/phylink.c: In function ‘phylink_get_linkmodes’: drivers/net/phy/phylink.c:322:2: warning: enumeration value ‘PHY_INTERFACE_MODE_2500SGMII’ not handled in switch [-Wswitch] 322 | switch (interface) { | ^~~~~~ Fix it by treating the new interface mode in the switch-case statement. Signed-off-by:
Ioana Ciornei <ioana.ciornei@nxp.com>
-
- Jun 02, 2022
-
-
Camelia Groza authored
This reverts commit 6809b4d8. The patch causes kernel crashes on DPAA2. Revert the changes and reimplement at a later time. Signed-off-by:
Camelia Groza <camelia.groza@nxp.com>
-
Vladimir Oltean authored
Since the blamed commit, VCAP filters can appear on more than one list. If their action is "trap", they are chained on ocelot->traps via filter->trap_list. This is in addition to their normal placement on the VCAP block->rules list head. Therefore, when we free a VCAP filter, we must remove it from all lists it is a member of, including ocelot->traps. There are at least 2 bugs which are direct consequences of this design decision. First is the incorrect usage of list_empty(), meant to denote whether "filter" is chained into ocelot->traps via filter->trap_list. This does not do the correct thing, because list_empty() checks whether "head->next == head", but in our case, head->next == head->prev == NULL. So we dereference NULL pointers and die when we call list_del(). Second is the fact that not all places that should remove the filter from ocelot->traps do so. One example is ocelot_vcap_block_remove_filter(), which is where we have the main kfree(filter). By keeping freed filters in ocelot->traps we end up in a use-after-free in felix_update_trapping_destinations(). Attempting to fix all the buggy patterns is a whack-a-mole game which makes the driver unmaintainable. Actually this is what the previous patch version attempted to do: https://patchwork.kernel.org/project/netdevbpf/patch/20220503115728.834457-3-vladimir.oltean@nxp.com/ but it introduced another set of bugs, because there are other places in which create VCAP filters, not just ocelot_vcap_filter_create(): - ocelot_trap_add() - felix_tag_8021q_vlan_add_rx() - felix_tag_8021q_vlan_add_tx() Relying on the convention that all those code paths must call INIT_LIST_HEAD(&filter->trap_list) is not going to scale. So let's do what should have been done in the first place and keep a bool in struct ocelot_vcap_filter which denotes whether we are looking at a trapping rule or not. Iterating now happens over the main VCAP IS2 block->rules. The advantage is that we no longer risk having stale references to a freed filter, since it is only present in that list. Fixes: e42bd4ed ("net: mscc: ocelot: keep traps in a list") Signed-off-by:
Vladimir Oltean <vladimir.oltean@nxp.com> Signed-off-by:
Jakub Kicinski <kuba@kernel.org> (cherry picked from commit e1846cff) Signed-off-by:
Vladimir Oltean <vladimir.oltean@nxp.com>
-