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: Greg Kroah-Hartman <gregkh@google.com>
Change-Id: I8dbc5f76e9eddfc5741f944168222aedacd0a8bb
This commit is contained in:
Greg Kroah-Hartman 2020-03-18 09:03:38 +01:00
parent 5b0d8a717e
commit 26553937fc
2 changed files with 2572 additions and 2530 deletions

File diff suppressed because it is too large Load Diff

View File

@ -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)