From: Adrian Bunk <bunk@fs.tum.de>

On Sun, Jul 27, 2003 at 10:08:40AM -0700, Linus Torvalds wrote:
>...
> Summary of changes from v2.6.0-test1 to v2.6.0-test2
> ============================================
>...
> Krzysztof Halasa:
>   o HDLC update
>...

This patch caused the following compile error:

drivers/net/wan/pc300_drv.c: In function `cpc_ioctl':
drivers/net/wan/pc300_drv.c:2557: error: incompatible types in assignment
drivers/net/wan/pc300_drv.c:2593: error: incompatible types in assignment
drivers/net/wan/pc300_drv.c: In function `cpc_open':
drivers/net/wan/pc300_drv.c:3156: error: invalid operands to binary ==
drivers/net/wan/pc300_drv.c:3161: error: invalid operands to binary ==
drivers/net/wan/pc300_drv.c: In function `cpc_close':
drivers/net/wan/pc300_drv.c:3194: error: invalid operands to binary ==



 25-akpm/drivers/net/wan/pc300_drv.c |   14 +++++++-------
 1 files changed, 7 insertions(+), 7 deletions(-)

diff -puN drivers/net/wan/pc300_drv.c~hdlc-build-fix drivers/net/wan/pc300_drv.c
--- 25/drivers/net/wan/pc300_drv.c~hdlc-build-fix	Mon Jul 28 12:47:57 2003
+++ 25-akpm/drivers/net/wan/pc300_drv.c	Mon Jul 28 12:47:57 2003
@@ -2554,10 +2554,10 @@ int cpc_ioctl(struct net_device *dev, st
 		case SIOCGPC300CONF:
 #ifdef CONFIG_PC300_MLPPP
 			if (conf->proto != PC300_PROTO_MLPPP) {
-				conf->proto = hdlc->proto;
+				conf->proto = hdlc->proto.id;
 			}
 #else
-			conf->proto = hdlc->proto;
+			conf->proto = hdlc->proto.id;
 #endif
 			memcpy(&conf_aux.conf, conf, sizeof(pc300chconf_t));
 			memcpy(&conf_aux.hw, &card->hw, sizeof(pc300hw_t));
@@ -2590,12 +2590,12 @@ int cpc_ioctl(struct net_device *dev, st
 					}
 				} else {
 					memcpy(conf, &conf_aux.conf, sizeof(pc300chconf_t));
-					hdlc->proto = conf->proto;
+					hdlc->proto.id = conf->proto;
 				}
 			}
 #else
 			memcpy(conf, &conf_aux.conf, sizeof(pc300chconf_t));
-			hdlc->proto = conf->proto;
+			hdlc->proto.id = conf->proto;
 #endif
 			return 0;
 		case SIOCGPC300STATUS:
@@ -3153,12 +3153,12 @@ int cpc_open(struct net_device *dev)
 	printk("pc300: cpc_open");
 #endif
 
-	if (hdlc->proto == IF_PROTO_PPP) {
+	if (hdlc->proto.id == IF_PROTO_PPP) {
 		d->if_ptr = &hdlc->state.ppp.pppdev;
 	}
 
 	result = hdlc_open(hdlc);
-	if (hdlc->proto == IF_PROTO_PPP) {
+	if (hdlc->proto.id == IF_PROTO_PPP) {
 		dev->priv = d;
 	}
 	if (result) {
@@ -3191,7 +3191,7 @@ int cpc_close(struct net_device *dev)
 	CPC_UNLOCK(card, flags);
 
 	hdlc_close(hdlc);
-	if (hdlc->proto == IF_PROTO_PPP) {
+	if (hdlc->proto.id == IF_PROTO_PPP) {
 		d->if_ptr = NULL;
 	}
 #ifdef CONFIG_PC300_MLPPP

_