mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-29 19:21:31 -04:00
Merge branch 'linus' into irq/core
Merge reason: update to almost-final-.36 Signed-off-by: Ingo Molnar <[email protected]>
This commit is contained in:
commit
14d4962dc8
331 changed files with 2628 additions and 1493 deletions
|
|
@ -40,6 +40,11 @@ static char *mixer = HOSTAUDIO_DEV_MIXER;
|
|||
" This is used to specify the host mixer device to the hostaudio driver.\n"\
|
||||
" The default is \"" HOSTAUDIO_DEV_MIXER "\".\n\n"
|
||||
|
||||
module_param(dsp, charp, 0644);
|
||||
MODULE_PARM_DESC(dsp, DSP_HELP);
|
||||
module_param(mixer, charp, 0644);
|
||||
MODULE_PARM_DESC(mixer, MIXER_HELP);
|
||||
|
||||
#ifndef MODULE
|
||||
static int set_dsp(char *name, int *add)
|
||||
{
|
||||
|
|
@ -56,15 +61,6 @@ static int set_mixer(char *name, int *add)
|
|||
}
|
||||
|
||||
__uml_setup("mixer=", set_mixer, "mixer=<mixer device>\n" MIXER_HELP);
|
||||
|
||||
#else /*MODULE*/
|
||||
|
||||
module_param(dsp, charp, 0644);
|
||||
MODULE_PARM_DESC(dsp, DSP_HELP);
|
||||
|
||||
module_param(mixer, charp, 0644);
|
||||
MODULE_PARM_DESC(mixer, MIXER_HELP);
|
||||
|
||||
#endif
|
||||
|
||||
/* /dev/dsp file operations */
|
||||
|
|
|
|||
|
|
@ -255,18 +255,6 @@ static void uml_net_tx_timeout(struct net_device *dev)
|
|||
netif_wake_queue(dev);
|
||||
}
|
||||
|
||||
static int uml_net_set_mac(struct net_device *dev, void *addr)
|
||||
{
|
||||
struct uml_net_private *lp = netdev_priv(dev);
|
||||
struct sockaddr *hwaddr = addr;
|
||||
|
||||
spin_lock_irq(&lp->lock);
|
||||
eth_mac_addr(dev, hwaddr->sa_data);
|
||||
spin_unlock_irq(&lp->lock);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int uml_net_change_mtu(struct net_device *dev, int new_mtu)
|
||||
{
|
||||
dev->mtu = new_mtu;
|
||||
|
|
@ -373,7 +361,7 @@ static const struct net_device_ops uml_netdev_ops = {
|
|||
.ndo_start_xmit = uml_net_start_xmit,
|
||||
.ndo_set_multicast_list = uml_net_set_multicast_list,
|
||||
.ndo_tx_timeout = uml_net_tx_timeout,
|
||||
.ndo_set_mac_address = uml_net_set_mac,
|
||||
.ndo_set_mac_address = eth_mac_addr,
|
||||
.ndo_change_mtu = uml_net_change_mtu,
|
||||
.ndo_validate_addr = eth_validate_addr,
|
||||
};
|
||||
|
|
@ -472,7 +460,8 @@ static void eth_configure(int n, void *init, char *mac,
|
|||
((*transport->user->init)(&lp->user, dev) != 0))
|
||||
goto out_unregister;
|
||||
|
||||
eth_mac_addr(dev, device->mac);
|
||||
/* don't use eth_mac_addr, it will not work here */
|
||||
memcpy(dev->dev_addr, device->mac, ETH_ALEN);
|
||||
dev->mtu = transport->user->mtu;
|
||||
dev->netdev_ops = ¨_netdev_ops;
|
||||
dev->ethtool_ops = ¨_net_ethtool_ops;
|
||||
|
|
|
|||
|
|
@ -163,6 +163,7 @@ struct ubd {
|
|||
struct scatterlist sg[MAX_SG];
|
||||
struct request *request;
|
||||
int start_sg, end_sg;
|
||||
sector_t rq_pos;
|
||||
};
|
||||
|
||||
#define DEFAULT_COW { \
|
||||
|
|
@ -187,6 +188,7 @@ struct ubd {
|
|||
.request = NULL, \
|
||||
.start_sg = 0, \
|
||||
.end_sg = 0, \
|
||||
.rq_pos = 0, \
|
||||
}
|
||||
|
||||
/* Protected by ubd_lock */
|
||||
|
|
@ -1228,7 +1230,6 @@ static void do_ubd_request(struct request_queue *q)
|
|||
{
|
||||
struct io_thread_req *io_req;
|
||||
struct request *req;
|
||||
sector_t sector;
|
||||
int n;
|
||||
|
||||
while(1){
|
||||
|
|
@ -1239,12 +1240,12 @@ static void do_ubd_request(struct request_queue *q)
|
|||
return;
|
||||
|
||||
dev->request = req;
|
||||
dev->rq_pos = blk_rq_pos(req);
|
||||
dev->start_sg = 0;
|
||||
dev->end_sg = blk_rq_map_sg(q, req, dev->sg);
|
||||
}
|
||||
|
||||
req = dev->request;
|
||||
sector = blk_rq_pos(req);
|
||||
while(dev->start_sg < dev->end_sg){
|
||||
struct scatterlist *sg = &dev->sg[dev->start_sg];
|
||||
|
||||
|
|
@ -1256,10 +1257,9 @@ static void do_ubd_request(struct request_queue *q)
|
|||
return;
|
||||
}
|
||||
prepare_request(req, io_req,
|
||||
(unsigned long long)sector << 9,
|
||||
(unsigned long long)dev->rq_pos << 9,
|
||||
sg->offset, sg->length, sg_page(sg));
|
||||
|
||||
sector += sg->length >> 9;
|
||||
n = os_write_file(thread_fd, &io_req,
|
||||
sizeof(struct io_thread_req *));
|
||||
if(n != sizeof(struct io_thread_req *)){
|
||||
|
|
@ -1272,6 +1272,7 @@ static void do_ubd_request(struct request_queue *q)
|
|||
return;
|
||||
}
|
||||
|
||||
dev->rq_pos += sg->length >> 9;
|
||||
dev->start_sg++;
|
||||
}
|
||||
dev->end_sg = 0;
|
||||
|
|
|
|||
Loading…
Reference in a new issue