diff options
Diffstat (limited to 'xpp/xproto.c')
-rw-r--r-- | xpp/xproto.c | 20 |
1 files changed, 7 insertions, 13 deletions
diff --git a/xpp/xproto.c b/xpp/xproto.c index 83a66d8..d55949e 100644 --- a/xpp/xproto.c +++ b/xpp/xproto.c @@ -43,12 +43,6 @@ bool valid_xpd_addr(const struct xpd_addr *addr) return ((addr->subunit & ~BITMASK(SUBUNIT_BITS)) == 0) && ((addr->unit & ~BITMASK(UNIT_BITS)) == 0); } -void xpd_set_addr(struct xpd_addr *addr, int xpd_num) -{ - addr->unit = XBUS_UNIT(xpd_num); - addr->subunit = XBUS_SUBUNIT(xpd_num); -} - /*---------------- General Protocol Management ----------------------------*/ const xproto_entry_t *xproto_card_entry(const xproto_table_t *table, byte opcode) @@ -145,13 +139,13 @@ int packet_process(xbus_t *xbus, xpacket_t *pack) if(printk_ratelimit()) { XBUS_NOTICE(xbus, "%s: from %d%d: bad address.\n", __FUNCTION__, - XPACKET_ADDR(pack).unit, XPACKET_ADDR(pack).subunit); + XPACKET_ADDR_UNIT(pack), XPACKET_ADDR_SUBUNIT(pack)); dump_packet("packet_process -- bad address", pack, print_dbg); } goto out; } op = XPACKET_OP(pack); - xpd = xpd_byaddr(xbus, XPACKET_ADDR(pack).unit, XPACKET_ADDR(pack).subunit); + xpd = xpd_byaddr(xbus, XPACKET_ADDR_UNIT(pack), XPACKET_ADDR_SUBUNIT(pack)); /* XPD may be NULL (e.g: during bus polling */ xe = xproto_global_entry(op); /*-------- Validations -----------*/ @@ -162,7 +156,7 @@ int packet_process(xbus_t *xbus, xpacket_t *pack) if(printk_ratelimit()) { XBUS_NOTICE(xbus, "%s: from %d%d opcode=0x%02X: no such global command.\n", __FUNCTION__, - XPACKET_ADDR(pack).unit, XPACKET_ADDR(pack).subunit, op); + XPACKET_ADDR_UNIT(pack), XPACKET_ADDR_SUBUNIT(pack), op); dump_packet("packet_process -- no such global command", pack, 1); } goto out; @@ -263,6 +257,7 @@ int xframe_receive(xbus_t *xbus, xframe_t *xframe) XBUS_NOTICE(xbus, "short xframe\n"); dump_xframe("short xframe", xbus, xframe); } + FREE_RECV_XFRAME(xbus, xframe); return -EPROTO; } if(!XBUS_GET(xbus)) { @@ -299,9 +294,9 @@ void dump_packet(const char *msg, const xpacket_t *packet, bool print_dbg) return; printk(KERN_DEBUG "%s: XPD=%1X-%1X%c (0x%X) OP=0x%02X LEN=%d", msg, - XPACKET_ADDR(packet).unit, - XPACKET_ADDR(packet).subunit, - (XPACKET_ADDR(packet).sync_master)?'+':' ', + XPACKET_ADDR_UNIT(packet), + XPACKET_ADDR_SUBUNIT(packet), + (XPACKET_ADDR_SYNC(packet))?'+':' ', *addr, op, XPACKET_LEN(packet)); @@ -444,7 +439,6 @@ EXPORT_SYMBOL(dump_reg_cmd); EXPORT_SYMBOL(xframe_receive); EXPORT_SYMBOL(notify_bad_xpd); EXPORT_SYMBOL(valid_xpd_addr); -EXPORT_SYMBOL(xpd_set_addr); EXPORT_SYMBOL(xproto_global_entry); EXPORT_SYMBOL(xproto_card_entry); EXPORT_SYMBOL(xproto_name); |