Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 26553937 authored by Greg Kroah-Hartman's avatar Greg Kroah-Hartman
Browse files

ANDROID: GKI: phy: add Android ABI padding to some structures



Try to mitigate potential future driver core api changes by adding a
padding to stuct phy_device and struct phy_driver

Inspired by the upstream changes in 5.4.26 and 4.19.111

This includes the ABI update for the change as well:

Leaf changes summary: 2 artifacts changed
Changed leaf types summary: 2 leaf types changed
Removed/Changed/Added functions summary: 0 Removed, 0 Changed, 0 Added function
Removed/Changed/Added variables summary: 0 Removed, 0 Changed, 0 Added variable

'struct phy_device at phy.h:360:1' changed:
  type size changed from 9472 to 9728 (in bits)
  4 data member insertions:
    'u64 phy_device::android_kabi_reserved1', at offset 9472 (in bits) at phy.h:447:1
    'u64 phy_device::android_kabi_reserved2', at offset 9536 (in bits) at phy.h:448:1
    'u64 phy_device::android_kabi_reserved3', at offset 9600 (in bits) at phy.h:449:1
    'u64 phy_device::android_kabi_reserved4', at offset 9664 (in bits) at phy.h:450:1

  7 impacted interfaces:
    function int genphy_resume(phy_device*)
    function phy_device* phy_connect(net_device*, const char*, void ()*, phy_interface_t)
    function void phy_disconnect(phy_device*)
    function int phy_mii_ioctl(phy_device*, ifreq*, int)
    function void phy_print_status(phy_device*)
    function void phy_start(phy_device*)
    function void phy_stop(phy_device*)

Bug: 151154716
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@google.com>
Change-Id: I8dbc5f76e9eddfc5741f944168222aedacd0a8bb
parent 5b0d8a71
Loading
Loading
Loading
Loading
+2511 −2479

File changed.

Preview size limit exceeded, changes collapsed.

+10 −0
Original line number Diff line number Diff line
@@ -21,6 +21,7 @@
#include <linux/timer.h>
#include <linux/workqueue.h>
#include <linux/mod_devicetable.h>
#include <linux/android_kabi.h>

#include <linux/atomic.h>

@@ -442,6 +443,11 @@ struct phy_device {

	void (*phy_link_change)(struct phy_device *, bool up, bool do_carrier);
	void (*adjust_link)(struct net_device *dev);

	ANDROID_KABI_RESERVE(1);
	ANDROID_KABI_RESERVE(2);
	ANDROID_KABI_RESERVE(3);
	ANDROID_KABI_RESERVE(4);
};
#define to_phy_device(d) container_of(to_mdio_device(d), \
				      struct phy_device, mdio)
@@ -631,6 +637,10 @@ struct phy_driver {
			    struct ethtool_tunable *tuna,
			    const void *data);
	int (*set_loopback)(struct phy_device *dev, bool enable);

	ANDROID_KABI_RESERVE(1);
	ANDROID_KABI_RESERVE(2);

};
#define to_phy_driver(d) container_of(to_mdio_common_driver(d),		\
				      struct phy_driver, mdiodrv)